24小时热门版块排行榜    

查看: 2093  |  回复: 9

wzp0098

木虫 (著名写手)

[求助] 利用for 语句画图

K=-10:1:10;
for m=1:K;
    K1=Length(K)
    w=10;
K2=K1+2*w;x=0.2;
r1=8;r2=0.001*r1;T=3;
A=[-r1 r2-r1 -i*x i*x 0 0 0 0;
   0 -r2 0 0 0 0 i*T -i*T;
   -2*i*x -i*x -r1-i*K1*0.5 0 -i*T 0 0 0;
   2*i*x i*x 0 -r1+i*K1*0.5 0 i*T 0 0;
   0 0 -i*T 0 -r2-i*(K1+K2)*0.5 0 i*x 0;
   0 0 0 i*T 0 -r2+i*(K1+K2)*0.5 0 -i*x;
   i*T 2*i*T 0 0 i*x 0 -r2-r1+i*(K1-K2)*0.5 0;
   -i*T -2*i*T 0 0 0 -i*x 0 -r2-r1-i*(K1-K2)*0.5];
B=[-r1;0;-i*x;i*x;0;0;i*T;-i*T];
Y=A\B;
y=imag(Y(3));
end
plot(K,y)
我想利用for循环语句画出图形,可是无法运行,求大虾赐教!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   关注TA 给TA发消息 送TA红花 TA的回帖

fjtony163

版主 (文坛精英)

米米

优秀版主优秀版主优秀版主优秀版主优秀版主

【答案】应助回帖

★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+1, 谢谢参与 2012-07-08 09:54:21
wzp0098: 金币+5, 有帮助 2012-07-08 11:11:48
K 是一个行向量,m定义为1到一个行向量肯定运行不了啊。m指的是循环次数,应该就是m=1:10这样的。能稍微具体说下是个怎样的式子么。
2楼2012-07-08 09:19:50
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

wzp0098

木虫 (著名写手)

引用回帖:
2楼: Originally posted by fjtony163 at 2012-07-08 09:19:50
K 是一个行向量,m定义为1到一个行向量肯定运行不了啊。m指的是循环次数,应该就是m=1:10这样的。能稍微具体说下是个怎样的式子么。

谢谢,我就是想画出y随K1变化的图像!K1取一个值,就可以得到一个y值,利用for语句循环。做了修改,还是不行!
K1=-10:1:10;
for m=1:Length(K);
    K1=m
    w=10;
K2=K1+2*w;x=0.2;
r1=8;r2=0.001*r1;T=3;
A=[-r1 r2-r1 -i*x i*x 0 0 0 0;
   0 -r2 0 0 0 0 i*T -i*T;
   -2*i*x -i*x -r1-i*K1*0.5 0 -i*T 0 0 0;
   2*i*x i*x 0 -r1+i*K1*0.5 0 i*T 0 0;
   0 0 -i*T 0 -r2-i*(K1+K2)*0.5 0 i*x 0;
   0 0 0 i*T 0 -r2+i*(K1+K2)*0.5 0 -i*x;
   i*T 2*i*T 0 0 i*x 0 -r2-r1+i*(K1-K2)*0.5 0;
   -i*T -2*i*T 0 0 0 -i*x 0 -r2-r1-i*(K1-K2)*0.5];
B=[-r1;0;-i*x;i*x;0;0;i*T;-i*T];
Y=A\B;
y=imag(Y(3));
end
plot(K1,y)
3楼2012-07-08 11:17:39
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

fjtony163

版主 (文坛精英)

米米

优秀版主优秀版主优秀版主优秀版主优秀版主

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★
臭水沟: 金币+2, 谢谢交流~~ 2012-07-08 18:02:36
wzp0098: 金币+5, 有帮助, 谢谢 2012-07-09 10:30:27
引用回帖:
3楼: Originally posted by wzp0098 at 2012-07-08 11:17:39
谢谢,我就是想画出y随K1变化的图像!K1取一个值,就可以得到一个y值,利用for语句循环。做了修改,还是不行!
K1=-10:1:10;
for m=1:Length(K);
    K1=m
    w=10;
K2=K1+2*w;x=0.2;
r1=8;r2=0.001*r1;T=3 ...

从中间的赋值到end之前的部分我不知道是啥,但只要你认为输对了就没事。

关键是赋值之前的部分,就我的理解应该是
K=-10:1:10
for m=1:length(K)
K1=K(m)
w=10;
………………
4楼2012-07-08 11:30:10
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

wzp0098

木虫 (著名写手)

引用回帖:
4楼: Originally posted by fjtony163 at 2012-07-08 11:30:10
从中间的赋值到end之前的部分我不知道是啥,但只要你认为输对了就没事。

关键是赋值之前的部分,就我的理解应该是
K=-10:1:10
for m=1:length(K)
K1=K(m)
w=10;
………………...

根据你的意见,我做了些修改,具体如下,
K=-10:0.1:10;
for n=1:length(K);
    K1=K(n);
    w=10;
K2=K1+2*w;x=0.5;
r1=8;r2=0.001*r1;T=3;
A=[-r1 r2-r1 -i*x i*x 0 0 0 0;
   0 -r2 0 0 0 0 i*T -i*T;
   -2*i*x -i*x -r1-i*K1*0.5 0 -i*T 0 0 0;
   2*i*x i*x 0 -r1+i*K1*0.5 0 i*T 0 0;
   0 0 -i*T 0 -r2-i*(K1+K2)*0.5 0 i*x 0;
   0 0 0 i*T 0 -r2+i*(K1+K2)*0.5 0 -i*x;
   i*T 2*i*T 0 0 i*x 0 -r2-r1+i*(K1-K2)*0.5 0;
   -i*T -2*i*T 0 0 0 -i*x 0 -r2-r1-i*(K1-K2)*0.5];
B=[-r1;0;-i*x;i*x;0;0;i*T;-i*T];
Y=A\B;
P=imag(Y(3));
end
plot(K,P)
但是得不到我想要的图形,望赐教!
从中间的赋值到end之前的部分是矩阵求解过程。
5楼2012-07-09 10:29:59
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

fjtony163

版主 (文坛精英)

米米

优秀版主优秀版主优秀版主优秀版主优秀版主

【答案】应助回帖

★ ★ ★ ★ ★
wzp0098: 金币+5, 谢谢 2012-07-09 11:16:55
引用回帖:
5楼: Originally posted by wzp0098 at 2012-07-09 10:29:59
根据你的意见,我做了些修改,具体如下,
K=-10:0.1:10;
for n=1:length(K);
    K1=K(n);
    w=10;
K2=K1+2*w;x=0.5;
r1=8;r2=0.001*r1;T=3;
A=;
B=;
Y=A\B;
P=imag(Y(3));
end
plot(K,P)
但是得不 ...

中间求解过程你确定对了么。。。我是弄不太清楚求解的东西。
6楼2012-07-09 10:58:10
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

dbb627

荣誉版主 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
wzp0098: 金币+30, ★★★很有帮助, 牛人!! 2012-07-09 11:16:29
臭水沟: 金币+3, 谢谢交流~~ 2012-07-09 21:24:09
function parafit
K=-10:0.1:10;
P=0*K;
for n=1:length(K);
    K1=K(n);
    w=10;
K2=K1+2*w;x=0.5;
r1=8;r2=0.001*r1;T=3;
A=[-r1 r2-r1 -i*x i*x 0 0 0 0;
   0 -r2 0 0 0 0 i*T -i*T;
   -2*i*x -i*x -r1-i*K1*0.5 0 -i*T 0 0 0;
   2*i*x i*x 0 -r1+i*K1*0.5 0 i*T 0 0;
   0 0 -i*T 0 -r2-i*(K1+K2)*0.5 0 i*x 0;
   0 0 0 i*T 0 -r2+i*(K1+K2)*0.5 0 -i*x;
   i*T 2*i*T 0 0 i*x 0 -r2-r1+i*(K1-K2)*0.5 0;
   -i*T -2*i*T 0 0 0 -i*x 0 -r2-r1-i*(K1-K2)*0.5];
B=[-r1;0;-i*x;i*x;0;0;i*T;-i*T];
Y=A\B;
P(n)=imag(Y(3));
end
plot(K,P)
The more you learn, the more you know, the more you know, and the more you forget. The more you forget, the less you know. So why bother to learn.
7楼2012-07-09 11:05:11
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

duotojh

金虫 (小有名气)

★ ★
臭水沟: 金币+2, 谢谢交流~~ 2012-07-09 21:24:26
你的意图应该是每轮循环算出的P连接成曲线,但程序中保留的是最后一轮P值(单值),
因此画出的图形是单点当然看不到(除非将单点作标记才可以看到,例如三角符标记等等)
只需添加P向量化,并修改循环语句中的P赋值这一句即可,修改程序如下:
K = -10:0.1:10;
P = []; % <-------------------添加此句分配P为向量
for n=1:length(K);
        K1 = K(n);
        w = 10;
        K2 = K1+2*w; x = 0.5;
        r1 = 8; r2 = 0.001*r1; T = 3;
        A=[  -r1   r2-r1  -i*x      i*x      0           0       0              0;
                  0    -r2       0       0       0           0      i*T           -i*T;
           -2*i*x  -i*x -r1-i*K1*0.5 0     -i*T          0       0              0;
                2*i*x  i*x       0  -r1+i*K1*0.5 0          i*T      0              0;
                  0     0      -i*T      0 -r2-i*(K1+K2)*0.5 0      i*x             0;
                  0     0        0      i*T      0 -r2+i*(K1+K2)*0.5 0             -i*x;
                 i*T 2*i*T       0       0      i*x          0 -r2-r1+i*(K1-K2)*0.5 0;
                -i*T -2*i*T      0       0       0         -i*x      0 -r2-r1-i*(K1-K2)*0.5];
        B = [-r1;0;-i*x;i*x;0;0;i*T;-i*T];
        Y = A\B;
    P(n) = imag(Y(3)); % <---------------------------P向量中的元素赋值
end
plot(K,P)
用freemat画出的图形如下
8楼2012-07-09 13:06:49
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

wzp0098

木虫 (著名写手)

引用回帖:
7楼: Originally posted by dbb627 at 2012-07-09 11:05:11
function parafit
K=-10:0.1:10;
P=0*K;
for n=1:length(K);
    K1=K(n);
    w=10;
K2=K1+2*w;x=0.5;
r1=8;r2=0.001*r1;T=3;
A=;
B=;
Y=A\B;
P(n)=imag(Y(3));
end
plot(K,P)...

我如果想画出P有关(K1,w)的二维图像,怎么处理?请牛人指教!谢谢!
9楼2012-07-09 18:24:16
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

duotojh

金虫 (小有名气)

【答案】应助回帖

★ ★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+1, 谢谢应助 2012-07-10 11:13:40
wzp0098: 金币+2, 请给出程序 2012-07-11 09:57:41
引用回帖:
9楼: Originally posted by wzp0098 at 2012-07-09 18:24:16
我如果想画出P有关(K1,w)的二维图像,怎么处理?请牛人指教!谢谢!...

将 plot 用 scatter 替换即可
10楼2012-07-10 10:51:42
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wzp0098 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 关于代码变化问题,想知道的进来 +15 且听虎啸 2026-08-07 22/1100 2026-08-09 22:13 by 布布和一二
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 好奇怪的filecode +3 布布和一二 2026-08-08 4/200 2026-08-08 17:46 by zhanghaozhu
[考研] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 qTvzQBRAHjCi 2026-08-07 5/250 2026-08-08 16:47 by oEVWOejN9taj
[考博] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 Vi50GxzrFcSG 2026-08-07 4/200 2026-08-08 16:27 by oEVWOejN9taj
[基金申请] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 Vi50GxzrFcSG 2026-08-07 4/200 2026-08-08 16:19 by oEVWOejN9taj
[论文投稿] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 Vi50GxzrFcSG 2026-08-07 6/300 2026-08-08 15:07 by oEVWOejN9taj
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 HEQlVqMTIA7d 2026-08-07 5/250 2026-08-08 14:22 by oEVWOejN9taj
[基金申请] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 KXLV3nuBVBY7 2026-08-07 5/250 2026-08-08 14:07 by oEVWOejN9taj
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 KXLV3nuBVBY7 2026-08-07 5/250 2026-08-08 14:07 by oEVWOejN9taj
[论文投稿] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 KXLV3nuBVBY7 2026-08-07 6/300 2026-08-08 14:01 by oEVWOejN9taj
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 Vi50GxzrFcSG 2026-08-07 6/300 2026-08-08 10:19 by 3OOjAIS77qg2
[基金申请] 固定端突然变了,今天 +6 archvillain 2026-08-06 10/500 2026-08-07 16:03 by 医学老男孩
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] filecode +14 等待解的谜 2026-08-06 19/950 2026-08-07 12:20 by wlwhappy
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 求各位大神看下 100+6 hpkpkpkp 2026-08-05 33/1650 2026-08-06 14:49 by zhiyanjiang
[基金申请] 有没有H口的?有收到消息的吗? +3 超级海虾 2026-08-04 3/150 2026-08-04 17:26 by 学教育滴
[基金申请] 纯娱乐,不喜欢勿喷 +7 Tide man 2026-08-04 10/500 2026-08-04 15:10 by loufangrui
[基金申请] 什么时候能放榜呀? +3 Jacob678 2026-08-03 3/150 2026-08-03 16:14 by gltch
信息提示
请填处理意见