我将下面的存为sjcll.m
result = [];
d=1:10;
for d1 = d
temp= quad(@myfun,0,2,[],0,d1); % 0~2积分区间
result = ;
end
plot(d,result);
这个存为sjcli.m
function result = myfun(x,d)
result = x.^d;
end
然后怎么办呢?
请多见谅。
[ 本帖最后由 magrog 于 2008-9-3 16:48 编辑 ] 下面的存为sjcll.m
result = [];
d=1:10;
for d1 = d
temp= quad(@myfun,0,2,[],0,d1);
result = ;
end
plot(d,result);
-------------------------
这个存为myfun.m注意文件名
function result = myfun(x,d)
result = x.^d;
end
运行sjcll.m
回复 14楼 magrog 的帖子
自己回去找本matlab书看看吧,这种问题的讨论是在浪费大多数浏览的人的时间。 那浪费你的时间真的是对不起了我想还是会有热心的兄弟来帮忙的。学有先后,对你来说可能是非常简单的,幼稚的问题,但是对初学来说可能就是很大的难题。想想你自己也有为难的时候,我想请兄弟们帮忙是最好的学习方法也是最快的解决问题的途径。
在此为浪费sogooda的时间感到抱歉
再次感谢小西,才子,布衣,感谢你们的热心帮助,浪费了你们大量的宝贵时间,真的是很抱歉。谢谢!
问题解决了,谢谢!
[ 本帖最后由 magrog 于 2008-9-3 19:35 编辑 ] 还有一个小问题,我的函数是下面这种形式:
(0.1+cos(x).*d*0.707)^2
运行后报错,这个函数该怎么样来正确表达呢?
添麻烦了。请多见谅。 觉得还是自己先看看书比较好,论坛毕竟不是学校,如果论坛可以解决“从一点不会学起”的问题,还要学校干啥?还要老师干啥?
看你问得辛苦,所以帮你做一下。但这都是“救急,不救穷”,和扶贫一个道理。不看书,一味地只是上来问,只能耗尽大家的热情。
喜欢去simwe的matlab版回答问题,其中一个原因就是因为那里的版主对“简单问题”控制的比较严一些。
当然,什么人都有,也许你能遇到百问不厌的好兄弟。
原帖由 magrog 于 2008-9-3 19:31 发表 http://www.chinavib.com/forum/images/common/back.gif
那浪费你的时间真的是对不起了
我想还是会有热心的兄弟来帮忙的。学有先后,对你来说可能是非常简单的,幼稚的问题,但是对初学来说可能就是很大的难题。想想你自己也有为难的时候,我想请兄弟们帮忙是最好的学习方 ...
回复 20楼 magrog 的帖子
遇到问题先找书书上没有再搜索
搜索不到再发问
搜索的关键字一般为出错提示
(0.1+cos(x).*d*0.707)^2
注意.*和* .^和^ 的区别 谢谢,学习了 (0.1+A*cos(x)*0.707)^2*(0.1^2+A^2+0.1^2+0.05^2+2*0.1*A*cos(x)*0.707-2*0.1*A*cos(x)*0.707)/((0.1^2+A^2+0.1^2+0.05^2+2*0.1*A*cos(x)*0.707-2*0.1*A*cos(x)*0.707))^2-4*0.05^2*(0.1^2+A^2-A^2*0.5*(cos(x))^2-2*A*cos(x)*0.707)^3/2;
这个函数(把d换成A了)放到那个代码里面,仍然是报错。看样子是函数在m文件里面的表达和在matlab里面直接输入进行运算的表达是有区别的,我也尝试了在x后面加点什么的,可是还是不能正常运行那个代码。能否说一下在哪里可以看到这方面的知识点呢?
回复 24楼 magrog 的帖子
书上。回复 24楼 magrog 的帖子
参照22楼 呵呵,初学者还是先好好看看书,英文版的效果更好 谢谢各位先学的殷殷教诲。谢谢。现在我还有一个问题。我想把循环的每个积分值除掉d=0时候的积分值,然后做出(d/d0,积分值)的图像,这样的话,代码该如何处理呢?
回复 28楼 magrog 的帖子
用find找出=0的位置然后附空
页:
1
[2]