我需要绘制的概率密度函数{P(Z,PHI)}和需要整合它,如图所附当量#1 enter image description here 其中Δf和Vf的是常数, phi是角度, z是距离(数值,可以是小数)集成概率密度函数
P(z,phi)将是力值,以及各自不同的z和phi值。 有人可以在MATLAB上指导我如何写这些方程组?
我需要绘制的概率密度函数{P(Z,PHI)}和需要整合它,如图所附当量#1 enter image description here 其中Δf和Vf的是常数, phi是角度, z是距离(数值,可以是小数)集成概率密度函数
P(z,phi)将是力值,以及各自不同的z和phi值。 有人可以在MATLAB上指导我如何写这些方程组?
要intregate的功能,您应该创建一个M文件或匿名函数
F = @(Z,PHI)P(Z,PHI)* P(Z,PHI)
哪里你类似地构造P和p。然后你需要使用数值积分器之一,比如ode45来将f两次...一次一遍,一次遍历phi。
如果我正确地理解了你,你可以在-lf/2和lf/2之间乘以一个均匀的概率分布,看起来像是正弦波的第一个四分之一。你想知道结果概率分布。
基本上如果lf/2> pi/2最终会得到相同的分布。正弦分布完全在均匀分布内。如果(lf/2)<(pi/2)你的正弦分布的部分均匀分布。然后,您想要将您的概率分布除以您关闭的部分,以使积分保持不变。它必须保持概率分布。
sin(x)的积分是cos(x)。因此,在您通过devide这种情况下,(1-COS(LF/2))
下面是一个脚本,使它更加明显:
lf=2;
xx = linspace(-lf,lf,1E4);
p1 = (xx>-lf/2&xx<lf/2)*(1/lf);
p2 = zeros(size(xx));
p2(xx>0&xx<pi/2) = sin(xx(xx>0&xx<pi/2));
p3 = p2.*p1.*lf;
if lf<pi
p3 = p3./(1-cos(lf/2));
end
plot(xx,p1,xx,p2,xx,p3)
legend({'uniform distribution','sine','result'})
%integrals (actually Riemann sums):
sum(p1.*(xx(2)-xx(1)))
sum(p2.*(xx(2)-xx(1)))
sum(p3.*(xx(2)-xx(1)))
我还是没能得到怎样的概率密度函数写以及给定的范围,然后按照您的建议将其整合两次 – Jack
如果我将问题分解为若干部分,则可能会更容易回答。如何在给定范围内求解两个变量的概率分布函数?如下所示; P(A,B)= P(A)P(B) 其中, P(A,b)是一个概率分布函数 P(A)= 1/C \t \t \t -c/2 <一个我试图写出上面提到的等式#2到等式#4的概率函数,其中c是任意常数值 ,并且p(b)= sin(b)0 Jack
。请帮我纠正我的代码。 %对于p(z) Lf = 2; z = -Lf/2:0.1:Lf/2;对于p(φ) phi = 0:0.1:pi/2;对于p(phi) ,其中x = unifpdf(1/Lf,-Lf/2,Lf/2) 。 %0
Jack