如何生成数据?

1视图(30天)
阿里Najem
阿里Najem 2022年11月8日
评论道: 阿里Najem2022年11月8日
亲爱的专家,
我有这段代码如下:
V = 10660:1:11700;
deltavB = 50:1:70;
VB = 1:1:81
一个= V-VB (1);% % VB (2) .... VB (81)
b = deltavB / 2;
i = 1:长度(b)
j = 1:长度(a)
c (i, j) = ((j)。/ b (i)) ^ 2;
结束
结束
g = 1. / (1 + c);
正如你所看到的g大小的1041 [21]VB (1)
我需要reapeat VB的每个值81点,我想有g(1041年21)为每一个VB的价值
我怎么能这样做,将其保存为整个数据togother ?
由于先进。

接受的答案

图像分析
图像分析 2022年11月8日
试试这个:
V = 10660:1:11700;
deltavB = 50:1:70;
VB = 1:1:81;
all_g = 0(长度(deltavB), (V),长度(VB));
k = 1:长度(VB)
thisVB = VB (k);
= V - thisVB;% % VB (2) .... VB (81)
b = deltavB / 2;
i = 1:长度(b)
j = 1:长度(a)
c (i, j) = ((j)。/ b (i)) ^ 2;
结束
结束
g = 1. / (1 + c);
%的k个片插入这个g all_g三维数组。
all_g (:,:, k) = g;
结束
流(“成交! \ n”)
1评论
阿里Najem
阿里Najem 2022年11月8日
感谢你及时的回答。
它在三维数组,但all_g说“不能显示变量与超过524288个元素”的摘要
我怎么找到或保存每个[21 1041]为每个点从1到81

登录置评。

答案(1)

沃尔特·罗伯森
沃尔特·罗伯森 2022年11月8日
V = 10660:1:11700;
deltavB = 50:1:70;
VB = 1:1:81
numV =长度(V);
numdeltavB =长度(deltavB);
numVB =长度(VB);
g = 0 (numdeltavB numV numVB);
b = deltavB / 2;
VBidx = 1: numVB
一个= V - VB (VBidx);
我= 1:numdeltavB
:c (j) = (a / b (i)) ^ 2;
结束
g (:,:, VBidx) = 1. / (1 + c);
结束
因为我循环使用自动扩展也可以消除。类似的
c = (a / b。')) ^ 2;
但是你应该重新检查大小。
1评论
阿里Najem
阿里Najem 2022年11月8日
感谢你及时的回答。
我认为“指数在位置1是无效的。数组索引必须是正整数或逻辑值”
:c (j) = (a / b (i)) ^ 2;
还有我怎么可以使用循环消除使用自动扩张?

登录置评。

类别

找到更多的在循环和条件语句帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!