initialfield.m

来自「解决麦克斯韦的matlab源文件」· M 代码 · 共 32 行

M
32
字号
function y = initialfield(x,omega,phioffs)% Initial electric field% omega = 3/2*pi for L-shaped domain% omega = pi/2 for squareep = pi/omega;phi = atan2(x(2),x(1)) + phioffs;rad = norm(x);if (rad < eps), rad = eps; endp = rad^(ep)*cos(ep*phi);cp = ep*rad^(ep-1)*(cos(ep*phi)*[-x(2);x(1)] + ...		    sin(ep*phi)*[x(1);x(2)])/rad;if ((abs(x(1)) < 0.5) & (abs(x(2)) < 0.5))  f = 1;  cf = [0;0];elseif ((abs(x(1)) >= 0.5) & (abs(x(2)) < 0.5))  f = sin(pi*x(1))^2;  cf = pi*[0; sin(2*pi*x(1))];elseif ((abs(x(1)) < 0.5) & (abs(x(2)) >= 0.5))  f = sin(pi*x(2))^2;  cf = pi*[-sin(2*pi*x(2)) ; 0];else   f = (sin(pi*x(1))*sin(pi*x(2)))^2;  cf = pi*[-(sin(pi*x(1))^2)*sin(2*pi*x(2)); ...	sin(2*pi*x(1))*(sin(pi*x(2))^2)];endy = f*cp + p*cf;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?