声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1952|回复: 2

[综合讨论] matlab的匿名函数问题

[复制链接]
发表于 2008-8-7 16:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
u=(-.1:.0002:.1)';
% thetas= @(s) exp(s.*u(j)).*exp(-0.0008.*s+0.0002 .*(s.^2)./2+(exp(s.*0.0046+ 0.002.*(s.^2)./2)-1).*0.0355);
pdf = zeros(1001,1);
a=zeros(1001,1);
fu=zeros(1001,1);
thetas= @(s) exp(s.*b).*exp(-0.0008.*s+0.0002 .*(s.^2)./2+(exp(s.*0.0046+ 0.002.*(s.^2)./2)-1).*0.0355);
for j =1:length(u);
  b=u(j);
%  thetas= @(s) exp(s.*b).*exp(-0.0008.*s+0.0002 .*(s.^2)./2+(exp(s.*0.0046+ 0.002.*(s.^2)./2)-1).*0.0355);
%这个 带 u(j)的积分 竟然能要放到积分里面 才能有作用

pdf(j)= 1/(2*pi*i)*quadl(thetas,4-i*10000,4+i*10000);
a(j)=j;
% fu(j)=real(pdf(j)');
end;
fu=real(pdf');
问题就在那个中文注释的那一句
thetas= @(s) exp(s.*b).*exp(-0.0008.*s+0.0002 .*(s.^2)./2+(exp(s.*0.0046+ 0.002.*(s.^2)./2)-1).*0.0355);
如果这句是在循环里面,也就是循环里面的这句不被注释掉,将会是正确的,
否则便是错误的结果

这个匿名函数含有 b 参数是在循环里面改变的,如何看这个问题
结果积分出来的曲线有点像正态分布的钟形曲线
回复
分享到:

使用道具 举报

发表于 2008-8-7 22:13 | 显示全部楼层

回复 楼主 alljoyland 的帖子

建议你搜索精华贴,带参数积分
发表于 2009-4-4 13:04 | 显示全部楼层

回复 楼主 alljoyland 的帖子

请问搞定了没有?欧遇到同样的问题了??:@L
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-24 11:40 , Processed in 0.077046 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表