LEIZHIWEN_1 2020-04-09 11:46
浏览 413

在matlab中,在for循环里面用quadl函数求积分的时候,一直显示输入参数过多是怎么回事,部分程序如下。

在matlab中,在for循环里面用quadl函数求积分的时候,一直显示输入参数过多是怎么回事,部分程序如下
clc;
clear;
run('sanweimonidianhefa');
%线电荷,两端点分别为p1(x1,y1,z1),p2(x2,y2,z2) ,线单元中的任一点为p3(x3,y3,z3) ,空间内任一点的坐标为 f(x,y,z)

%模拟电荷的位置
jt=10;%间隔
x1=[-200:jt:200 -200:jt:200 -200:jt:200];%多条线路,也就是点多一点,
t=length(x1);
y1=[-12*ones(1,t/3) zeros(1,t/3) 12*ones(1,t/3)];
z1=2.55*10.^(-4)*x1.^2+25.81;%通过弧垂,得到输电线的抛物线方程
%镜像电荷的位置
jx1=x1;
jy1=y1;
jz1=-z1;
%匹配点的位置
x=[linspace(-40,40,t-3)];
y=[linspace(-40,40,t-3)];
z=[zeros(1,t-3)];
for i=1:(t-3)%代表匹配点
for j=1:(t-3)%代表模拟电荷
%模拟电荷产生的电位系数
l(i,j)=x1(j+1)-x1(j);
m(i,j)=y1(j+1)-y1(j);
n(i,j)=z1(j+1)-z1(j);
L(i,j)=sqrt(l(i,j).^2+m(i,j).^2+n(i,j).^2);%线电荷的长度
E(i,j)=l(i,j).^2+m(i,j).^2+n(i,j).^2;
F(i,j)=-2*(l(i,j)*(x(i)-x1(j))+m(i,j)*(y(i)-y1(j))+n(i,j)*(z(i)-z1(j)));
G(i,j)=(x(i)-x1(j)).^2+(y(i)-y1(j)).^2+(z(i)-z1(j)).^2;
td1(i,j)=L(i,j)./(4*pi*8.85*10^(-12));
p1(i,j)=(L(i,j)/(4*pi*8.85*10^(-12)*sqrt(E(i,j))))*log((F(i,j)+2*E(i,j)+2*sqrt(E(i,j)*(E(i,j)+F(i,j)+G(i,j))))/(F(i,j)+2*sqrt(E(i,j)*G(i,j))));%电位的计算公式

E01(i,j)=@(t2)(td1(i,j).*(x(i)-x1(j)-l(i,j).*t2)./(sqrt(E(i,j).*t2.^2+F(i,j).*t2+G(i,j)).^3));

E1(i,j)=quadl(E01(i,j),0,1);%此处求积分的时候出现问题
end
end
E1

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 素材场景中光线烘焙后灯光失效
    • ¥15 请教一下各位,为什么我这个没有实现模拟点击
    • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
    • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
    • ¥20 有关区间dp的问题求解
    • ¥15 多电路系统共用电源的串扰问题
    • ¥15 slam rangenet++配置
    • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
    • ¥15 ubuntu子系统密码忘记
    • ¥15 保护模式-系统加载-段寄存器