在matlab中对齐尺寸以确保一致性

时间:2017-11-01 07:38:03

标签: matlab

很多次,我运行这个简单的代码。它一直显示与尺寸相关的常见错误,但我试图扩展rho_1的尺寸。我不确定错误是否主要是由CDF功能引起的。有什么建议可以解决这个问题?感谢

rho_1 = [2*10^-4];
beta=4;
Cua = pi*gamma(1+2/beta)*gamma(1-2/beta);
A = (4*pi-36*sqrt(3)+64)/(12*pi-9*sqrt(3));
p2=10^(15/10);
p1=10^(15/10);
T_1 = 10^(2/10);
T_2 = 10^(2/10);
B_one = 1/2*rho_1*Cua*((T_2)^(2/beta))*(A^2)*(((p2/p1)^(2/beta))+ 1); 
Ry_low = 0:10:50; A=(4*pi-36*sqrt(3)+64)/(12*pi-9*sqrt(3));
Ry_high = 50;
D_one= 1/2*rho_1*Cua*((T_2)^(2/beta)) * (A^2) *(((p1/p2)^(2/beta))+ 1) ;
C_rov = ((pi* rho_1)/(2* sqrt(B_one*D_one)*(Ry_high - Ry_low).^2))*((normcdf(sqrt(2*B_one)*Ry_high) - (normcdf(sqrt(2*B_one)*Ry_low))) *((normcdf(sqrt(2*D_one)*Ry_high) - (normcdf(sqrt(2*D_one)*Ry_low)))));
plot(Ry_low,C_rov)

1 个答案:

答案 0 :(得分:1)

使用点乘法/除法。还修正了D_1到D_one。请用以下代码替换您的第13行:

C_rov = ((pi* rho_1)./(2* sqrt(B_one*D_one).*(Ry_high - Ry_low).^2)).*((normcdf(sqrt(2*B_one)*Ry_high) - (normcdf(sqrt(2*B_one)*Ry_low))).*((normcdf(sqrt(2*D_one)*Ry_high) - (normcdf(sqrt(2*D_one)*Ry_low)))));