l********8 发帖数: 25 | 1 请教一下如下一个积分:
i=23;
b=2;
g(1:2,i+1)=[0.0089 0.0401]';
v_g(1:2,i)=[0.0205 0.0120]';
eta_g(1:2,1:2,i)=[924.1483 -127.3713 ; -127.3713 87.6577];
% Y is a number ranging from zero to infinity.
fun=@(Y)mvnpdf(g(1:2,i+1),v_g(1:2,i),eta_g(1:2,1:2,i)./Y)*gampdf(Y,2*b+i-1,1
);
P_gt1_gt(i+1)=quad(fun,0,inf);
出错了
Error using ./
Matrix dimensions must agree.
可是单独的一个个函数运算都是对的
多谢先。 | t****t 发帖数: 6806 | 2 your fun only works if Y is scalar. for matlab to quickly calculate the
integration, Y is sent in as vector. so fix your fun to make it work with
scalar. how? you figure it out...
,1
【在 l********8 的大作中提到】 : 请教一下如下一个积分: : i=23; : b=2; : g(1:2,i+1)=[0.0089 0.0401]'; : v_g(1:2,i)=[0.0205 0.0120]'; : eta_g(1:2,1:2,i)=[924.1483 -127.3713 ; -127.3713 87.6577]; : % Y is a number ranging from zero to infinity. : fun=@(Y)mvnpdf(g(1:2,i+1),v_g(1:2,i),eta_g(1:2,1:2,i)./Y)*gampdf(Y,2*b+i-1,1 : ); : P_gt1_gt(i+1)=quad(fun,0,inf);
|
|