31 lines
907 B
Matlab
31 lines
907 B
Matlab
function [phy, cfg] = case_config()
|
||
%CASE_CONFIG BELE 散射算例配置,对应 bele3d.json / COMSOL SBC+bele.mph
|
||
%
|
||
% 散射场 E_s,总场 E = E_s + E_b
|
||
% 背景场(COMSOL 用户定义):
|
||
% E_bx = exp(-2.5i*pi*(z+0.5)), E_by = 0, E_bz = 0
|
||
% lambda = 0.8 m => k0 = 2.5*pi
|
||
|
||
phy.eps = [1, 1.5];
|
||
phy.mur = [1, 1];
|
||
phy.lda0 = 0.8;
|
||
phy.out = [1, 2, 3, 4, 5, 14];
|
||
phy.inc = [];
|
||
phy.beleDomains = [1, 2];
|
||
phy.pec = [];
|
||
|
||
phy.bele.Eb = @(x, y, z) [exp(-2.5i * pi * (z + 0.5)); 0; 0];
|
||
phy.bele.curlEb = @(x, y, z) [0; -2.5i * pi * exp(-2.5i * pi * (z + 0.5)); 0];
|
||
phy.bele.curlcurlEb = @(x, y, z) [(2.5 * pi)^2 * exp(-2.5i * pi * (z + 0.5)); 0; 0];
|
||
|
||
cfg.FemType = 4;
|
||
cfg.EletricType = 2;
|
||
cfg.NbrBoundary = 14;
|
||
cfg.BoundaryFlag = [2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 2];
|
||
cfg.MeshFile = 'belemesh.dat';
|
||
cfg.OutFile = './OutFile';
|
||
cfg.jsonFile = 'bele3d.json';
|
||
cfg.meshDatFile = 'belemesh.dat';
|
||
|
||
end
|