好难!!这个积分出错拉!!为什么啊??
function Q=inte(x, y)wp=93*2*pi/60;wd=95*2*pi/60;
r1=250;r2=48;
for rp=24:16:144
o1=-atan(r2/rp);o2=atan(r2/rp);
Q = dblquad(inline('sqrt((wp*rp)^2+wd^2*(rp^2+y^2)-2*rp^2*wp*wd+(2*wp*rp*wd-2*rp*wd^2)*y*cos(abs(x)))'), o1, o2, rp-48, rp+48);
plot(rp,Q);
hold on
end 什么错啊,你说清楚点
你给的代码什么意思啊?里边没有积分阿 Q = dblquad(inline('sqrt((wp*rp)^2+wd^2*(rp^2+y^2)-2*rp^2*wp*wd+(2*wp*rp*wd-2*rp*wd^2)*y*cos(abs(x)))'), o1, o2, rp-48, rp+48)
这个积分有问题,不知道怎么弄,请您帮我看看,谢谢拉!!!! 我的意思就是对每个rp对应一个积分值,然后以rp为横坐标值,积分值为纵坐标值画出图来,二次积分以e和o为积分变量 我的意思就是对每个rp对应一个积分值,然后以rp为横坐标值,积分值为纵坐标值画出图来,二次积分以e和o为积分变量 把sqrt((wp*rp)^2+wd^2*(rp^2+y^2)-2*rp^2*wp*wd+(2*wp*rp*wd-2*rp*wd^2)*y*cos(abs(x)))写成函数,这样是不行的 那有什么办法呢???我怎样才能实现我的目的呢?急问!!!! function z=integrnd(x,y,rp)
wp=93*2*pi/60;wd=95*2*pi/60;
z=sqrt((wp*rp)^2+wd^2*(rp^2+y^2)-2*rp^2*wp*wd+(2*wp*rp*wd-2*rp*wd^2)*y*cos(abs(x)));
function inte
r1=250;r2=48;
i=0;
for rp=24:16:144
i=i+1;
o1=-atan(r2/rp);o2=atan(r2/rp);
Q(i)=dblquad(@integrnd, o1, o2, rp-48, rp+48 ,[] ,[], rp)
end
figure
plot(rp,Q)
页:
[1]