matlab中i 2 i x y,我用MATLAB绘图时,横坐标为X=[1,.,100],每个X(i)对应的Y(i)类似于[2;3],程序如下:...

问题描述:

我用MATLAB绘图时,横坐标为X=[1,.,100],每个X(i)对应的Y(i)类似于[2;3],程序如下:

初学者向各位大侠请教,程序说明,先求出每个X(i)对应的Y(i),存起来,再绘图:

e1=1/sqrt(2).*[sqrt(0.5),sqrt(1.5);-sqrt(0.5),sqrt(1.5)]*[-0.4326;-1.6656];

e2=e1+[0.875;0];

c(1)=[-1;-1];

a(1)=[1;1];

t=[0;0];

B=[1,0;0,1];

Y=zeros(1,100);

for i=1:20

y(i)=a(i)+B*c(i)+e1;

a(i+1)=0.1.*(y(i)-B*c(i))+0.9.*a(i);

c(i+1)=B*(t-a(i+1));

Y(1,i)=y(i)

end

for i=21:100

y(i)=a(i)+B*c(i)+e2;

a(i+1)=0.1.*(y(i)-B*c(i))+0.9.*a(i);

c(i+1)=B*(t-a(i));

Y(1,i)=y(i)

end

X=1:100;

plot(X,Y);

grid on;

老出现?In an assignment A(I) = B,the number of elements in B and

I must be the same.的错误.

1个回答

分类:

综合

2014-09-22

问题解答:

我来补答

你的维数越界了,一维变量不能存储二维数组,你必须把数组维数升级,或者用元胞,我帮你把数组升维了,运行出来结果应该是二维的Y,所以画出来是会有两条线,当然你可以分开画,好看清哪条对应什么.具体程序如下:

clear;

clc;

e1=1/sqrt(2).*[sqrt(0.5),sqrt(1.5);-sqrt(0.5),sqrt(1.5)]*[-0.4326;-1.6656];

e2=e1+[0.875;0];

c(:,1)=[-1;-1];

a(:,1)=[1;1];

t=[0;0];

B=[1,0;0,1];

Y=zeros(1,100);

for i=1:20

y(:,i)=a(:,i)+B*c(:,i)+e1;

a(:,i+1)=0.1.*(y(:,i)-B*c(:,i))+0.9.*a(:,i);

c(:,i+1)=B*(t-a(:,i+1));

%Y(1,i)=y(i)

end

for i=21:100

y(:,i)=a(:,i)+B*c(:,i)+e2;

a(:,i+1)=0.1.*(y(:,i)-B*c(:,i))+0.9.*a(:,i);

c(:,i+1)=B*(t-a(:,i));

%Y(1,i)=y(i)

end

Y = y;

X=1:100;

plot(X,Y);

grid on

为避免被拉去审核,就不贴图了,自己运行吧

有问题欢迎追问,

copyright@cxd1301

再问: 谢谢您的帮助,运行程序没有问题,可是图跑出来好像不对,也许是我的N生成错了:N be a 2*1 vector of independent standard normal deviates(N~(0 I),0和I都是黑体),generating 2 random standard normal deviates as the elements of vector N。用matlab咋生成N 啊?我用的是normrnd,可运行出来不对啊。也就是上面的百分号内的数组e1=1/sqrt(2).*[sqrt(0.5),sqrt(1.5);-sqrt(0.5),sqrt(1.5)]*%[-0.4326;-1.6656];%

再答: 不明白你到底要干嘛,问问题前最好自己先分析清楚你的需求是什么,什么问题没有解决。帮你的不可能帮你看每个那么长的程序是做啥的。只能帮你解决存在的问题。 估计你是要产生标准正态分布,可以自己help randn

展开全文阅读

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值