Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-05-15, 11:39   #1
zbb
初级会员
 
注册日期: 2008-05-15
年龄: 42
帖子: 5
声望力: 0
zbb 正向着好的方向发展
问题 [求助]想求e指数函数的N次导数

刚接触matlab,跪求各位高手了。。。。。。
由于函数较复杂g=exp(-r*(1- s*(1-p+p*s)/((1+p)^(N-1)+s*(1-p+p*s)*(1-(1+p)^(N-1)))));
想求其各阶导数,但到十几阶之后导数式子很复杂,赋值代入很慢,用工作站跑起来也很慢,貌似需要很多天
先把程序附上,求教各位高手,有没有好的方法,请不吝赐教
syms g; syms s; syms p;syms N; syms f;syms r;syms i;
g=exp(-r*(1- s*(1-p+p*s)/((1+p)^(N-1)+s*(1-p+p*s)*(1-(1+p)^(N-1)))));
L1=zeros(100,1); j=1;
for i=1:100;
g=diff(g,'s');
r=1;s=0; N=200;p=10^(1/200)-1;
f=subs(g);
j=j*i;
L1(i)=f/j
end;
plot([1:100],L1);
zbb 当前离线   回复时引用此帖
旧 2008-05-16, 14:59   #2
zbb
初级会员
 
注册日期: 2008-05-15
年龄: 42
帖子: 5
声望力: 0
zbb 正向着好的方向发展
默认

各位高手请帮帮忙啊
我真的没有办法了
谢谢各位阿。。。。。。
zbb 当前离线   回复时引用此帖
旧 2008-05-20, 09:10   #3
zbb
初级会员
 
注册日期: 2008-05-15
年龄: 42
帖子: 5
声望力: 0
zbb 正向着好的方向发展
默认

没有人帮帮我吗 :cry:
zbb 当前离线   回复时引用此帖
旧 2008-06-03, 10:18   #4
zbb
初级会员
 
注册日期: 2008-05-15
年龄: 42
帖子: 5
声望力: 0
zbb 正向着好的方向发展
默认

:cry:
zbb 当前离线   回复时引用此帖
旧 2008-06-04, 15:09   #5
fanxing39
高级会员
 
注册日期: 2007-12-02
年龄: 44
帖子: 303
声望力: 31
fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星
默认

syms s p N r
g=exp(-r*(1- s*(1-p+p*s)/((1+p)^(N-1)+s*(1-p+p*s)*(1-(1+p)^(N-1)))));
L1=zeros(100,1); j=1;
g=diff(g,'s');
r=1;s=0; N=200;p=10^(1/200)-1;
f=subs(g);
n=1:100;
L1=f./factorial(n);
plot([1:100],L1);

解释: factorial(n) 就是求阶乘的,你的f 原来只需要算一次,所以 放到你的for 循环里,就多计算了99次,增加了它的计算量,并且阶乘也是你自己编程算,这个没有直接调用 函数 算起来快
在计算一个程序前,如果以前的程序结果你不需要调用,建议加 “clear” (清除内存中的变量)
fanxing39 当前离线   回复时引用此帖
旧 2008-06-04, 15:10   #6
fanxing39
高级会员
 
注册日期: 2007-12-02
年龄: 44
帖子: 303
声望力: 31
fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星
默认

你原来的程序里 没有求 高阶导数吧 :smile:
fanxing39 当前离线   回复时引用此帖
旧 2008-06-04, 15:18   #7
fanxing39
高级会员
 
注册日期: 2007-12-02
年龄: 44
帖子: 303
声望力: 31
fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星
默认

对不起,我看错了一点你的程序,
我觉得你的程序好像是在算 泰勒展开式哦 !

taylor 就是泰勒展开式的命令,你看下

能说下你的要做什么不?这样更容易帮到你:heart:
fanxing39 当前离线   回复时引用此帖
旧 2008-09-04, 15:16   #8
zbb
初级会员
 
注册日期: 2008-05-15
年龄: 42
帖子: 5
声望力: 0
zbb 正向着好的方向发展
默认 回复: [求助]想求e指数函数的N次导数

我已经用泰勒展开搞定了 谢谢你哦 :)
zbb 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
[求助]3维图的X,Y 轴可以随时间变化吗 莱茵河流浪 MATLAB论坛 0 2008-05-18 04:38
请问这个方程可以用MATLAB解没有? thb296 MATLAB论坛 6 2008-04-28 19:02
求助怎样用matlab计算曲面或球体积分 tangyongliang MATLAB论坛 0 2008-04-05 22:32
【求助】紧急求助关于simulink的专家 chenlinysu MATLAB论坛 2 2007-07-30 16:21
【求助】紧急求助 chenlinysu MATLAB论坛 1 2007-06-25 18:54


所有时间均为北京时间。现在的时间是 16:53


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.