clc
clear
m=20;
delta=0.6;
n=5;
k=1.0680;
H=14;
a=m*(n-1)/2 ;
c=m*(n-1)/(2*n);
syms x u v
y=1/sqrt(2*pi)*exp(-(x^2)/2);
p=int(y,x,-inf,u-k*v-delta*sqrt(n))+...
int(y,x,-inf,-u-k*v+delta*sqrt(n))
Q=sym('0')*ones(H+1);
Q(1,1)=1-p; Q(1,2)=p;
for i=2:H
Q(i,i+1)=1-p;
end
Q(1,H+1)=1-p;
q=zeros(1,H+1);
q(1,2)=1;
I=sym('1')*eye(H+1);
h=ones(H+1,1);
fu=1/sqrt(2*pi*0.25)*exp(-u^2/2);
fv=2*v*v^(a-1)*(c^a)*exp(-c*v)/gamma(a);
ff=q/(I-Q)*h*fu*fv;
%arl=dblquad(@(u,v)ff,-100,100,0,100)
obj0=int(ff,v,0,inf)
obj1=int(obj0,u,-inf,inf);
用matlab整体运行之后,容易陷入死循环,无法停止。如果只计算到obj0,matlab提示Warning: Explicit integral could not be found. 希望坛友帮忙解决一下。正确答案应该是obj1=10.3左右。如有坛友做出,可以上传M文件,定价100个论坛币。