我尝试检查我的公式,这是我使用傅里叶变换方法从拉普拉斯方程的解得出的。这是我最后推断的功能:
Phi(x,y) = Sum (A * cos(Beta*xn) * sinh(Beta*yn))
for(n rum from 0 to infinity)
A = (2Vo)*[cos(Beta*a2n) - cos(Beta*a1n)]/[(Beta^2)*(a1n-a2n))*sinh(Beta*bn)]
其中:Beta = (2n+1)* (pi/2)
,a1n
,a2n
在x轴上保持不变,使用x上的a3 - a
最大限制维度进行标准化,{{1} }是bn
(y轴上的最大尺寸)wrt b
的归一化值。 a3
,xn
:也是标准化值w.r.t. yn
。
这是我在Matlab中的代码:
a3
这只是一个简单的测试,所以对你来说看起来有些困难。这里,
在x方向上,常数:x = linspace (0,1.7,500);
y = linspace (0,1.2,500);
term = zeros(500);
Phi = zeros(500);
xn = x/1.7;
yn = y/1.7;
a1n = .9/1.7;
a2n = 1.2/1.7;
bn = 1.2/1.7;
Phi0 = 5;
[X,Y] = meshgrid(xn,yn);
for k = 0:100
Beta = (2*k+1)*(pi/2);
C1 = 2*Phi0*(cos(Beta*a2n)-cos(Beta*a1n))/((Beta^2)*(a1n-a2n)*sinh(Beta*bn));
term = C1.*cos(Beta.*X).*sinh(Beta.*Y);
Phi = Phi + term;
end
Output = Phi / Phi0;
mesh(X,Y,Output);
,a3 = 1.7
,a1 = 0.9
;
在y方向上,常数:a2 = 1.2
,b = 1.2
;
以下是Matlab中的情节:
直到这一步,它满足了我的要求。 Howerver,当我尝试增加傅里叶变换的顺序时,在这种情况下(Phi = Vo = 5
),结果很奇怪:
weird result after increasing order of the Fourier Transform
如您所见,图表的形状和两个限制都会发生变化。
实际上,我不知道结果。我认为我的代码中应该没有错误,并且可能与程序的某些限制有关。否则,你能帮我找出原因吗?