24小时热门版块排行榜    

查看: 421  |  回复: 2

tianpengusst

铁虫 (小有名气)

[求助] 一个简单的程序 不知道错哪了 求大神点拨!!! 已有1人参与

i=1;cd=0;xc=0.25;
a=[0 0.07126 0.02046 0.1128 0.01073 -0.05203];
for s=1:1:100
while i<=181
fai(i)=a(1).*(1-cos(cd))+a(2).*sin(cd)+a(3).*(1-cos(cd)).^2+a(4).*(sin(cd)).^2+...
a(5).*(1-cos(cd)).^3+a(6).*(sin(cd)).^3;
i=i+1;
cd=cd+pi/90;
end
cd=0;ii=1;
while ii<=181
r=xc*exp(fai(ii));
x(ii)=(r+(xc^2)/r)*cos(cd)+2*xc;
y(ii)=(r-(xc^2)/r)*sin(cd);
cd=cd+pi/90;
ii=ii+1;
end
c=[x' y'];
a(2)=a(2)+0.1;
end

fai的值为什么在迭代过程中不变?应该变化的啊?就一个for循环。。。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
jjdg: 金币+2, 感谢参与 2017-05-02 01:37:08
CODE:
i=1;cd=0;xc=0.25;
a=[0 0.07126 0.02046 0.1128 0.01073 -0.05203];
for s=1:1:100
while i<=181
fai(i)=a(1).*(1-cos(cd))+a(2).*sin(cd)+a(3).*(1-cos(cd)).^2+a(4).*(sin(cd)).^2+...
a(5).*(1-cos(cd)).^3+a(6).*(sin(cd)).^3;
i=i+1;
cd=cd+pi/90;
end
cd=0;ii=1;
while ii<=181
r=xc*exp(fai(ii));
x(ii)=(r+(xc^2)/r)*cos(cd)+2*xc;
y(ii)=(r-(xc^2)/r)*sin(cd);
cd=cd+pi/90;
ii=ii+1;
end
c=[x' y'];
a(2)=a(2)+0.1;
end
fai

结果:
fai =

  Columns 1 through 15

         0    0.0026    0.0055    0.0086    0.0120    0.0155    0.0192    0.0231    0.0272    0.0313    0.0356    0.0399    0.0443    0.0488    0.0532

  Columns 16 through 30

    0.0577    0.0622    0.0667    0.0711    0.0755    0.0799    0.0841    0.0883    0.0925    0.0965    0.1005    0.1044    0.1082    0.1119    0.1155

  Columns 31 through 45

    0.1190    0.1224    0.1257    0.1290    0.1322    0.1353    0.1384    0.1413    0.1442    0.1471    0.1499    0.1527    0.1554    0.1580    0.1606

  Columns 46 through 60

    0.1632    0.1658    0.1682    0.1707    0.1731    0.1754    0.1777    0.1799    0.1821    0.1842    0.1862    0.1881    0.1899    0.1917    0.1933

  Columns 61 through 75

    0.1948    0.1961    0.1974    0.1985    0.1994    0.2002    0.2008    0.2012    0.2015    0.2016    0.2015    0.2012    0.2008    0.2001    0.1993

  Columns 76 through 90

    0.1983    0.1971    0.1958    0.1942    0.1926    0.1908    0.1888    0.1868    0.1846    0.1823    0.1800    0.1776    0.1752    0.1727    0.1702

  Columns 91 through 105

    0.1677    0.1652    0.1628    0.1604    0.1580    0.1558    0.1536    0.1516    0.1497    0.1479    0.1462    0.1447    0.1433    0.1420    0.1410

  Columns 106 through 120

    0.1400    0.1393    0.1386    0.1381    0.1378    0.1375    0.1374    0.1374    0.1375    0.1376    0.1378    0.1380    0.1383    0.1385    0.1387

  Columns 121 through 135

    0.1389    0.1391    0.1391    0.1391    0.1389    0.1386    0.1381    0.1375    0.1367    0.1357    0.1344    0.1330    0.1313    0.1294    0.1272

  Columns 136 through 150

    0.1248    0.1221    0.1192    0.1160    0.1126    0.1089    0.1051    0.1010    0.0968    0.0923    0.0877    0.0830    0.0781    0.0732    0.0682

  Columns 151 through 165

    0.0631    0.0581    0.0530    0.0480    0.0430    0.0381    0.0333    0.0287    0.0242    0.0199    0.0159    0.0120    0.0085    0.0052    0.0022

  Columns 166 through 180

   -0.0005   -0.0029   -0.0050   -0.0067   -0.0080   -0.0090   -0.0097   -0.0100   -0.0099   -0.0095   -0.0087   -0.0076   -0.0062   -0.0044   -0.0023

  Column 181

   -0.0000
为什么会说fai没有变化。
此外,代码中 for s=1:1:100 这一句有什么意义,加这一句会把中间两个while循环重复做上100遍,而100遍的结果都一样。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
2楼2017-04-28 16:07:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tianpengusst

铁虫 (小有名气)

引用回帖:
2楼: Originally posted by 月只蓝 at 2017-04-28 16:07:48
i=1;cd=0;xc=0.25;
a=;
for s=1:1:100
while i<=181
fai(i)=a(1).*(1-cos(cd))+a(2).*sin(cd)+a(3).*(1-cos(cd)).^2+a(4).*(sin(cd)).^2+...
a(5).*(1-cos(cd)).^3+a(6).*(sin(cd)).^3;
i=i+1;
cd=cd+p ...

你好! 我是想在迭代过程中每迭代一次a(2)的值都加上0.1 然后进行下一次迭代。例如第一次迭代a(2)的值为0.07126 当第二次迭代时 a(2)的值变为0.17126 然后用新的a值计算新的fai的值。不知道程序错在哪里了。请大神帮忙看看。谢谢!!!
3楼2017-05-01 16:41:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 tianpengusst 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[职场人生] 40+中年人失业后,还能找到好工作吗? +9 xqy2009 2026-10-13 11/550 2026-10-15 16:37 by beefly
[有机交流] 用NBS溴化时溶剂除了CCl4外还有什么 +3 18834002860 2026-10-12 6/300 2026-10-15 14:30 by 长沙摩尔信息科�
[硕博家园] 极限拉扯,如何抉择 +11 Isak0320 2026-10-12 15/750 2026-10-14 21:55 by 猫鱼不是鱼
[论文投稿] 二审4个多月了还是Awaiting Reviewer Scores 10+3 纳斯达克ML 2026-10-11 4/200 2026-10-14 17:30 by babero
[有机交流] OpenAI又攻克数学难题了,离AI做有机合成还有多远? +8 wangyl_123 2026-10-10 13/650 2026-10-14 15:12 by zuesli
[教师之家] 课题组会帮你通过考核么? +4 好运来~9527 2026-10-10 7/350 2026-10-13 08:41 by xli1984
[公派出国] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:34 by XQNyDCa1Tk5n
[公派出国] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:26 by XQNyDCa1Tk5n
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:15 by XQNyDCa1Tk5n
[教师之家] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:06 by XQNyDCa1Tk5n
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 14:25 by VOMexwnDzOFZ
[教师之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 (EPI+-1)(金币-50) +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 14:05 by VOMexwnDzOFZ
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:51 by VOMexwnDzOFZ
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:45 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:54 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:34 by VOMexwnDzOFZ
[考博] 招收博士生一名 +3 mandolin 2026-10-10 3/150 2026-10-11 10:21 by 不是山谷!
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 qR2AdCWTVtkw 2026-10-09 4/200 2026-10-11 03:14 by M0zrYVSAnxpE
[有机交流] 各位大佬,路线设计求助 +6 zapen 2026-10-08 8/400 2026-10-10 15:59 by zapen
[有机交流] 我应该选哪条合成路线让实验成功率高一些? +5 jing816y 2026-10-08 9/450 2026-10-10 09:05 by zapen
信息提示
请填处理意见