- 积分
- 0
- 注册时间
- 2006-6-13
- 仿真币
-
- 最后登录
- 1970-1-1
|
计算了一个光波导的传输问题。发现结果(参看附件中的图)无法接受,有高手知道怎么处理吗?谢谢。
参数:
2维光波导,宽0.5微米,长8微米,中心波长1.55微米,波导边界离背景边界距离0.5*10=5微米
波导折射率2.948,背景折射率1。
边界条件:
波导的入口和出口设置为"端口" (port),其他边界为"完美电导体" (perfect electric conductor)
网格划分:
先设置最大网格尺寸为1.55/10=0.155微米,然后再使用自动"细划网格"一次。
在Comsol中完成后,存为的.m文件如下:
% COMSOL Multiphysics Model M-file
% Generated by COMSOL 3.5 (COMSOL 3.5.0.494, $Date: 2008/09/19 16:09:48 $)
flclear fem
% COMSOL version
clear vrsn
vrsn.name = 'COMSOL 3.5';
vrsn.ext = '';
vrsn.major = 0;
vrsn.build = 494;
vrsn.rcs = '$Name: $';
vrsn.date = '$Date: 2008/09/19 16:09:48 $';
fem.version = vrsn;
% Constants
fem.const = {'l','8e-6', ...
'w','0.5e-6', ...
'del','w*10', ...
'nsi','2.948', ...
'nair','1', ...
'lambdac','1.55e-6'};
% Geometry
g1=rect2('w','l','base','corner','pos',{'-w/2','0'},'rot','0','const',fem.const);
g2=rect2('w+del*2','l','base','corner','pos',{'-w/2-del','0'},'rot','0','const',fem.const);
% Analyzed geometry
clear s
s.objs={g1,g2};
s.name={'R1','R2'};
s.tags={'g1','g2'};
fem.draw=struct('s',s);
fem.geom=geomcsg(fem);
% Initialize mesh
fem.mesh=meshinit(fem, ...
'hmax',[1.55e-6/10]);
% Refine mesh
fem.mesh=meshrefine(fem, ...
'mcase',0, ...
'rmethod','regular');
% (Default values are not included)
% Application mode 1
clear appl
appl.mode.class = 'InPlaneWaves';
appl.name = 'rfweh';
appl.module = 'RF';
appl.gporder = 4;
appl.cporder = 2;
appl.sshape = 2;
appl.assignsuffix = '_rfweh';
clear prop
prop.field='TETM';
prop.inputvar='lambda';
appl.prop = prop;
clear bnd
bnd.inport = {0,0,1,0};
bnd.type = {'E0','cont','port','port'};
bnd.modespec = {'userdef','userdef','analytic','analytic'};
bnd.portnr = {1,1,1,2};
bnd.ind = [1,1,1,2,3,4,2,1,1,1];
appl.bnd = bnd;
clear equ
equ.n = {'nair','nsi'};
equ.matparams = 'n';
equ.ind = [1,2,1];
appl.equ = equ;
appl.var = {'lambda0','1.55e-6'};
fem.appl{1} = appl;
fem.frame = {'ref'};
fem.border = 1;
clear units;
units.basesystem = 'SI';
fem.units = units;
% ODE Settings
clear ode
clear units;
units.basesystem = 'SI';
ode.units = units;
fem.ode=ode;
% Multiphysics
fem=multiphysics(fem);
% Extend mesh
fem.xmesh=meshextend(fem);
% Solve problem
fem.sol=femstatic(fem, ...
'complexfun','on', ...
'solcomp',{'Hz','Ez'}, ...
'outcomp',{'Hz','Ez'}, ...
'blocksize','auto');
% Save current fem structure for restart purposes
fem0=fem;
% Plot solution
postplot(fem, ...
'tridata',{'Ez','cont','internal','unit','V/m'}, ...
'trimap','jet(1024)', ...
'title','Surface: Electric field, z component [V/m]', ...
'axis',[-8.429981697180693E-6,8.429981697180693E-6,-3.999999989900971E-7,8.399999978792039E-6]);
[ 本帖最后由 GGHong 于 2009-2-3 05:53 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
×
|