Matlab 版 (精华区)

发信人: hahn (有奇@选择遗忘的自由), 信区: Matlab
标  题: [合集] 紧急求教,关于积分的问题,请高手指教!
发信站: 哈工大紫丁香 (Sat Aug  5 19:11:25 2006), 站内

────────────────────────────────────────
  zhaoxl (小刀)                    于  (Thu May 11 10:31:39 2006)  说道:

本人有附件中所带的公式要画出图来,自己搞不定,请高手赐教!谢谢!


────────────────────────────────────────
  zjliu (秋天的萝卜)               于  (Thu May 11 10:38:56 2006)  说道:

f_{s0}表达式是什么?
s|s0是什么意思?
【 在 zhaoxl (小刀) 的大作中提到: 】
: 本人有附件中所带的公式要画出图来,自己搞不定,请高手赐教!谢谢!




────────────────────────────────────────
  zjliu (秋天的萝卜)               于  (Thu May 11 10:42:07 2006)  说道:

还有I_0是0阶第一类贝塞尔函数吧?
【 在 zjliu (秋天的萝卜) 的大作中提到: 】
: f_{s0}表达式是什么?
: s|s0是什么意思?




────────────────────────────────────────
  zjliu (秋天的萝卜)               于  (Thu May 11 11:02:23 2006)  说道:

我大致写了一下,你核对一下就应该行了
% zhaoxl积分的问题
A=0.79;warning off;
c=11.9;
mu=-12.9;
sigma=5;
s=linspace(-30,10,100);
f_s_rician=c*exp(-c*[s+1]).*besselj(0,2*c*sqrt(s));
s0=linspace(0,40,5000);
ds0=s0(2)-s0(1);
K=10/sigma/log(10*sqrt(2*pi));
for k=1:length(s);
    B=exp(-s(k)./s0-(10*log10(s0)-mu).^2/2/sigma^2);
    f_z_rayl_LN(k)=sum(B)*ds0*K/s(k)^2;
end
f_s=(1-A)*f_s_rician+A*f_z_rayl_LN;
plot(s,f_s,'k');hold on;

【 在 zhaoxl (小刀) 的大作中提到: 】
: 本人有附件中所带的公式要画出图来,自己搞不定,请高手赐教!谢谢!




────────────────────────────────────────
  zhaoxl (小刀)                    于  (Thu May 11 19:32:00 2006)  说道:

太谢谢你了,秋天的萝卜!f(s0)是s0的概率分布函数;f(s|s0)是条件概率分布函数。I0
()是第一类零阶贝塞尔函数。
【 在 zjliu (秋天的萝卜) 的大作中提到: 】
: f_{s0}表达式是什么?
: s|s0是什么意思?





────────────────────────────────────────
  zjliu (秋天的萝卜)               于  (Thu May 11 19:32:59 2006)  说道:

看看我写的程序吧,应该没啥问题
【 在 zhaoxl (小刀) 的大作中提到: 】
: 太谢谢你了,秋天的萝卜!f(s0)是s0的概率分布函数;f(s|s0)是条件概率分布函数。I0
: ()是第一类零阶贝塞尔函数。




────────────────────────────────────────
  zhaoxl (小刀)                    于  (Thu May 11 19:36:40 2006)  说道:

我运行了程序,但是跟文献当中的曲线偏差很大。
【 在 zjliu (秋天的萝卜) 的大作中提到: 】
: 看看我写的程序吧,应该没啥问题





────────────────────────────────────────
  zjliu (秋天的萝卜)               于  (Thu May 11 19:38:43 2006)  说道:

你把积分限和采样点数目改变一下看看怎么样

【 在 zhaoxl (小刀) 的大作中提到: 】
: 我运行了程序,但是跟文献当中的曲线偏差很大。




────────────────────────────────────────
  zhaoxl (小刀)                    于  (Thu May 11 19:49:08 2006)  说道:

图形没有太大变化,还那样啊!
【 在 zjliu (秋天的萝卜) 的大作中提到: 】
: 你把积分限和采样点数目改变一下看看怎么样





────────────────────────────────────────
  zjliu (秋天的萝卜)               于  (Thu May 11 19:52:37 2006)  说道:

你再检查一下吧, 仔细核对
【 在 zhaoxl (小刀) 的大作中提到: 】
: 图形没有太大变化,还那样啊!




────────────────────────────────────────
  zhaoxl (小刀)                    于  (Thu May 11 20:42:30 2006)  说道:

秋天的萝卜,你好,在你的程序中我发现了一处错误。在我的公式里是ln10,而不是ln(10
*sqrt(2*pi))我大概改了一下,不知改的对不对。另外,我对matlab 不是很懂,我想有没
有直接的积分函数。还有,在你的程序里for循环里,怎么不体现对s0的循环变化。请你赐
教。谢谢了!另外,我查贝塞尔函数好像是BESSELI。请你看看!




A=0.79;warning off; 
c=11.9; 
mu=-12.9; 
sigma=5; 
s=linspace(-30,10,100); 
f_s_rician=c*exp(-c*[s+1]).*BESSELI(0,2*c*sqrt(s)); 
s0=linspace(0,40,5000); 
ds0=s0(2)-s0(1); 
K=10/(sigma*log(10)*sqrt(2*pi)); 
for k=1:length(s); 
    B=exp(-s(k)./s0-(10*log10(s0)-mu).^2/2/sigma^2); 
    f_z_rayl_LN(k)=sum(B)*ds0*K/s(k)^2; 
end 
f_s=(1-A)*f_s_rician+A*f_z_rayl_LN; 
plot(s,f_s,'k');hold on; 
【 在 zjliu (秋天的萝卜) 的大作中提到: 】
: 我大致写了一下,你核对一下就应该行了
: % zhaoxl积分的问题
: A=0.79;warning off;
: c=11.9;
: mu=-12.9;
: sigma=5;
: s=linspace(-30,10,100);
: f_s_rician=c*exp(-c*[s+1]).*besselj(0,2*c*sqrt(s));
: ...................





────────────────────────────────────────
  zjliu (秋天的萝卜)               于  (Thu May 11 20:54:45 2006)  说道:

s0我已经在0到40这个范围离散采样了, 就是根据离散积分算的

另外BESSELI是修正的第一类贝塞尔函数,BESSELJ是第一类贝塞尔
函数我不知道你需要的是哪一个:


        BESSELJ(NU,Z)    Bessel function of the first kind
        BESSELY(NU,Z)    Bessel function of the second kind
        BESSELI(NU,Z)    Modified Bessel function of the first kind
        BESSELK(NU,Z)    Modified Bessel function of the second kind
        BESSELH(NU,K,Z)  Hankel function
        AIRY(K,Z)        Airy function

【 在 zhaoxl (小刀) 的大作中提到: 】
: 秋天的萝卜,你好,在你的程序中我发现了一处错误。在我的公式里是ln10,而不是ln(10
: *sqrt(2*pi))我大概改了一下,不知改的对不对。另外,我对matlab 不是很懂,我想有没
: 有直接的积分函数。还有,在你的程序里for循环里,怎么不体现对s0的循环变化。请你赐
: ...................



────────────────────────────────────────
  zhaoxl (小刀)                    于  (Thu May 11 21:06:57 2006)  说道:

对不起,我忘了,是修正的一阶贝塞尔函数。另附上文献中的曲线。
【 在 zjliu (秋天的萝卜) 的大作中提到: 】
: s0我已经在0到40这个范围离散采样了, 就是根据离散积分算的
: 另外BESSELI是修正的第一类贝塞尔函数,BESSELJ是第一类贝塞尔
: 函数我不知道你需要的是哪一个:
:         BESSELJ(NU,Z)    Bessel function of the first kind
:         BESSELY(NU,Z)    Bessel function of the second kind
:         BESSELI(NU,Z)    Modified Bessel function of the first kind
:         BESSELK(NU,Z)    Modified Bessel function of the second kind
:         BESSELH(NU,K,Z)  Hankel function
: ...................





────────────────────────────────────────
  zjliu (秋天的萝卜)               于  (Thu May 11 21:15:40 2006)  说道:

我检查不出来错误了, 你再看看公式你是不是理解错了
【 在 zhaoxl (小刀) 的大作中提到: 】
: 对不起,我忘了,是修正的一阶贝塞尔函数。另附上文献中的曲线。




────────────────────────────────────────
  zhaoxl (小刀)                    于  (Thu May 11 21:20:03 2006)  说道:

好的,谢谢你!我对BBS不是很熟,今天是第一次到matlab版,很受很大,谢谢你!秋天的
萝卜!
【 在 zjliu (秋天的萝卜) 的大作中提到: 】
: 我检查不出来错误了, 你再看看公式你是不是理解错了





────────────────────────────────────────
  zjliu (秋天的萝卜)               于  (Thu May 11 21:20:48 2006)  说道:

不客气,多用matlab吧,这个软件比较亲切
【 在 zhaoxl (小刀) 的大作中提到: 】
: 好的,谢谢你!我对BBS不是很熟,今天是第一次到matlab版,很受很大,谢谢你!秋天的
: 萝卜!




[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.733毫秒