之后的运行又出现:Subscript indices must either be real positive integers or logicals[f,r]=meshgrid(500:10:1500,0.015:0.00020:0.035);a1=0.01;%孔半径ua=1;%空气柱振速w=2*pi.*f;c=340;%声速k=w./c;%a=0;%位置点的x坐标b=0.015;%位

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/12 06:53:21

之后的运行又出现:Subscript indices must either be real positive integers or logicals[f,r]=meshgrid(500:10:1500,0.015:0.00020:0.035);a1=0.01;%孔半径ua=1;%空气柱振速w=2*pi.*f;c=340;%声速k=w./c;%a=0;%位置点的x坐标b=0.015;%位
之后的运行又出现:Subscript indices must either be real positive integers or logicals
[f,r]=meshgrid(500:10:1500,0.015:0.00020:0.035);
a1=0.01;%孔半径
ua=1;%空气柱振速
w=2*pi.*f;
c=340;%声速
k=w./c;
%a=0;%位置点的x坐标
b=0.015;%位置点的y坐标
%c1=0.0315;%位置点的z坐标(见笔记本)
o=abs(acos(b./r));%位置矢量与孔中心线之间的弧度
Q = dblquad(@integrnd,0,0.01,0,2*pi);
H=abs(j.*k.*a1.*c.*ua.*abs(Q(i))./(2*pi));
mesh(f,r,H)
Subscript indices must either be real positive integers or logicals.
Error in ==> huosaipressure0114 at 12
H=abs(j.*k.*a1.*c.*ua.*abs(Q(i))./(2*pi));
不知哪里出问题了.要晕了.还请老师指正.

之后的运行又出现:Subscript indices must either be real positive integers or logicals[f,r]=meshgrid(500:10:1500,0.015:0.00020:0.035);a1=0.01;%孔半径ua=1;%空气柱振速w=2*pi.*f;c=340;%声速k=w./c;%a=0;%位置点的x坐标b=0.015;%位
问题出在Q(i)上,你的i前面未赋值,被理解为虚数单位,当然不能用作数组下标.

看你的意思,似乎是想取不同的f和r,分别计算该参数条件下的重积分.
这个可以做,涉及到dblquad传递附加参数的问题.但问题又来了:在integrnd函数中,f是直接取值,而r则是由前面的数据算出来的,那么r究竟用哪个数?

帮你大致改了改,方法基本上没问题,但参数及公式需要你自己认真核对.

把以下代码全部保存到一个M文件运行即可.
function zd
[f,r]=meshgrid(500:10:1500, 0.015:0.00020:0.035);
for ii=1:length(f)
for jj=1:length(r)
a1=0.01;%孔半径
ua=1;%空气柱振速
w=2*pi.*f(ii);
c=340;%声速
k=w./c;
%a=0;%位置点的x坐标
b=0.015;%位置点的y坐标
%c1=0.0315;%位置点的z坐标(见笔记本)
o=abs(acos(b./r(jj)));%位置矢量与孔中心线之间的弧度
Q = dblquad(@integrnd, 0, 0.01, 0, 2*pi,[],[],f(ii),r(jj));
H(ii,jj)=abs(j.*k.*a1.*c.*ua.*abs(Q)./(2*pi));
end
end
mesh(f,r,H)
function z = integrnd(x, y, f, r)
% f=1000;
a1=0.01;%孔半径
ua=1;%空气柱振速
w=2*pi*f;
c=340;%声速
k=w/c;
a=0;%位置点的x坐标
b=0.01;%位置点的y坐标
c=0.0315;%位置点的z坐标(见笔记本)
o=atan(abs(c)/sqrt(a^2+b^2));%位置矢量与孔中心线之间的弧度
% r=sqrt(a^2+b^2+c^2);%点距
z = x .* exp(-j*k*(r*sqrt(1-2*x*cos(y)*sin(o)/r+x.^2/r^2))) ./ (r*sqrt(1-2*x*cos(y)*sin(o)/r+x.^2/r^2));

之后的运行又出现:Subscript indices must either be real positive integers or logicals[f,r]=meshgrid(500:10:1500,0.015:0.00020:0.035);a1=0.01;%孔半径ua=1;%空气柱振速w=2*pi.*f;c=340;%声速k=w./c;%a=0;%位置点的x坐标b=0.015;%位 matlab 函数自变量不能从零开始load Txfdwx(x,y,t) = Txf(i-1,j-1,t);%改变时间值可以画出不同时间的等温线zhb=contour(dwx(50));clabel(zhb)由于i =1:19,j=1:19之后运行说Subscript indices must either be real positive intege Warning:mysql_fetch_array() expects parameter 1 to be resource boolean given in第一次运行会出现这个,但是刷新之后就没事儿了,更奇怪的是之后多次运行都没事儿,忽然某一次运行又出现这个错误提示.再次刷 ANSYS中出现位移过大的错误后还能继续运算,求大神帮忙解答下出现这种情况的原因我点击Proceed之后,程序又开始自动运行至Solution is done. matlab 运行下面的程序出现一些错误,请帮忙看看错误在哪里,谢谢.程序syms x n mn=0;m=1377*10^6;x=0.1:0.01:6;f(x)=(x.*19.1*300*300*pi.*(1-(sin(2*pi.*x))/(2*pi.*x))-n)/((3*x-1.25)*360);plot(x,f(x))运行出错? Subscript indices m MATLAB求解多项式的问题从书上直接抄的两行p=[1 -2 0 25 116]r=roots(p)运行之后居然报错subscript indices must either be real positive integers or logicals.我的版本是7.8.0(R2009a),不知道和这个有没有关系 matlab运行 >> x=1:0.01:200; >> a=max(x);出现Subscript indices must either be real positive integers orlogicals.程序明显没有问题,在2012b上可以运行,系统版本2010b lingo中出现问题:subscript out of range on attribute, 用matlab图像配准中出现Subscript indices must either be real positive integers or logicals是什么题I=imread('lily.jpg');lily=rgb2gray(I);M=imread('flowers.jpg');flowers=rgb2gray(M);%选择图像的配准区域imshow(lily)figure,imshow(flowe lingo中出现subscript out of range on attribute,这程序要怎么改?2004年数学建模电力市场的输电阻塞管理问题 origin7.5运行时出现的对话框, 我的AUTOcad运行宏出现错误, 泰坦尼克号的船长真的在沉船几十年之后又出现过吗? Parameter index out of range (1 > number of parameters, which is 0).这是我的程序运行之后出现的错误 怎么回事 关于while循环的问题想在输出结果之前,询问是否约简分数,采用以上图所示的办法但是运行之后出现了如下的问题它运行了两次,不解? win7 家庭版 装了matlab7.0之后不能运行,然后出现这个画面,请问怎么办? 冲锋岛 我运行之后出现这个launcher init failed code(-12)RT 运行网游就会出现i was a at a bit of a loss?如何解决我现在连从做系统都做不了!我的网游是cf wow 街头篮球 我把他们卸载之后在安装问题依旧不能得到解决!郁闷中!入帮解决