Matlab绘图In an assignment A(I) = B,the number of elements in B and I must be the same自定义了一个函数X=F(t),函数里有一数组变量a[1]=t; a[2]=2*t; 要对a[1],a[2]做循环运算,当绘图时,t=1:50.t变成数组就出问题了.(注
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/30 06:40:58
![Matlab绘图In an assignment A(I) = B,the number of elements in B and I must be the same自定义了一个函数X=F(t),函数里有一数组变量a[1]=t; a[2]=2*t; 要对a[1],a[2]做循环运算,当绘图时,t=1:50.t变成数组就出问题了.(注](/uploads/image/z/10213126-70-6.jpg?t=Matlab%E7%BB%98%E5%9B%BEIn+an+assignment+A%28I%29+%3D+B%2Cthe+number+of+elements+in+B+and+I+must+be+the+same%E8%87%AA%E5%AE%9A%E4%B9%89%E4%BA%86%E4%B8%80%E4%B8%AA%E5%87%BD%E6%95%B0X%3DF%28t%29%2C%E5%87%BD%E6%95%B0%E9%87%8C%E6%9C%89%E4%B8%80%E6%95%B0%E7%BB%84%E5%8F%98%E9%87%8Fa%5B1%5D%3Dt%3B+a%5B2%5D%3D2%2At%3B+%E8%A6%81%E5%AF%B9a%5B1%5D%2Ca%5B2%5D%E5%81%9A%E5%BE%AA%E7%8E%AF%E8%BF%90%E7%AE%97%2C%E5%BD%93%E7%BB%98%E5%9B%BE%E6%97%B6%2Ct%3D1%3A50.t%E5%8F%98%E6%88%90%E6%95%B0%E7%BB%84%E5%B0%B1%E5%87%BA%E9%97%AE%E9%A2%98%E4%BA%86.%EF%BC%88%E6%B3%A8)
Matlab绘图In an assignment A(I) = B,the number of elements in B and I must be the same自定义了一个函数X=F(t),函数里有一数组变量a[1]=t; a[2]=2*t; 要对a[1],a[2]做循环运算,当绘图时,t=1:50.t变成数组就出问题了.(注
Matlab绘图In an assignment A(I) = B,the number of elements in B and I must be the same
自定义了一个函数X=F(t),函数里有一数组变量a[1]=t; a[2]=2*t; 要对a[1],a[2]做循环运算,当绘图时,t=1:50.t变成数组就出问题了.(注:函数里的数组变量是必须的)
要实现绘图功能
原函数:function r = solutionA(t)
a(:,1)=(1-exp(-0.02.*t)).^2;
a(:,2)=(1-exp(-0.02.*t)).^2;
a(:,3)=(1-exp(-0.02.*t)).^2;
a(:,4)=(1-exp(-1.*t./150)).^2;
a(:,5)=(1-exp(-1.*t./150)).^2;
a(:,6)=(1-exp(-1.*t./150)).^2;
a(:,7)=(1-exp(-1.*t./150)).^2;
a(:,8)=1-exp(-0.02.*t);
a(:,9)=1-exp(-0.02.*t);
a(:,10)=1-exp(-0.02.*t);
a(:,11)=1-exp(-0.02.*t);
a(:,12)=1-exp(-0.02.*t);
a(:,13)=1-exp(-0.02.*t);
r=0;
for i=1:13
r=r+a(i);
end
r=1-r;
p=0;
for i=1:12
for j=i+1:13
p=p+a(i)*a(j);
end
end
r=r+p;
Matlab绘图In an assignment A(I) = B,the number of elements in B and I must be the same自定义了一个函数X=F(t),函数里有一数组变量a[1]=t; a[2]=2*t; 要对a[1],a[2]做循环运算,当绘图时,t=1:50.t变成数组就出问题了.(注
是这样的,
t是一行多列的行向量.
a(:,1)=(1-exp(-0.02.*t)).^2;
等号右边与t是相同的结构,是一行多列的行向量,
而a(:,1)是一个列向量.
这样赋值会出错.
function r = solutionA(t)
t=t(:); %先把t弄成列向量,
a(:,1)=(1-exp(-0.02.*t)).^2;
这样就可以了.
不过r=r+a(i)
我不知道你这个用意是什么,注意a(i)仅仅只是第i行第一列的一个值,而不是第i行.因为不知道你的目的是什么,所以不知道有没有错.