请教一个编程的问题
刚开始学matlab,很多命令不是很熟悉,前段时间编了个程序求解积分的,但一直都调试不出来了,希望大侠给与指点function b=p_c(x1,x2)
lamda=10.6*10^(-6);
k=2*pi/lamda;
L=3;
gamma=pi/4;
rho=((x1-x2)^2+(L-x2*tan(gamma))^2)^(1/2);
b=exp(-i*k*rho)*(1/(rho)^(1/2));
以上为子程序,x1和x2为积分式中的变量
clear;
N=51;
lamda=10.6*10.^(-6);
k=2*pi/lamda;
L=3;
a=25*10^(-3);
g1=zeros(N);
temp=ones(N,1);
x3=linspace(-a,a,N);
x4=linspace(-a,a,N);
for n=1:1:N-1
x33(n)=(x3(n)+x3(n+1))/2;
x44(n)=(x4(n)+x4(n+1))/2;
end
for n=1:1:N-1
u(n)=1;
end
for m=1:1:(N-1)
for n=1:1:(N-1)
y=x44(m);
g11(m,n)=(lamda)^(-1/2)*exp(i*pi/4)*quadl('p_c',x3(n),x3(n+1));
end
采用了有限元的方法进行处理.其中p_c为要求积分的方程
希望各位给看看,是哪里出现了问题
[ 本帖最后由 yejet 于 2006-8-13 19:35 编辑 ] 子程序中的x2从哪里来? quadl只能有一个积分变量
仔细看一下quadl的相关帮助
页:
[1]