📄 symmetry.prj
字号:
begin <fimmwave_prj(1.0)> "Symmetry"
begin <notesTB(1.0)> "Support material for symmetry tech note"
>For questions:
>Richard Black: design@optosapiens.com
>Tom Davies: support@photond.com
end
begin <fimmwave_prj(1.0)> "Sec_1_Circle"
begin <mwguideNode(1.0)> "Whole_Circle"
begin <mwg_wguide(1.0)>
0
8 8
0
"" -1000
MAGWALL 0.000000
MAGWALL 0.000000
MAGWALL 0.000000
MAGWALL 0.000000
begin <mwgshape_list(1.3)>
//xposn yposn SHAPE(...) nxHint nyHint pmlfact RIXPROFILE(...) GRADEDPARS(...)
4@OC 4@OC ELLIPSE(5,5) 0 0 OPQ(1.5 0) 0
4@OC 5@OC RECTANGLE(10,10) 0 0 OPQ(1.45 0) 0
end
end
begin <molab_parms(1.0)>
1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
N(1e+050) N(-1e+050) // evstart evend
10 0 60 60 // maxNmodes molabOpt nx ny
1.55 0 RVEC V2 40 0 1 300 300 15 25 0 5 5 // lambda hCurv solverID solverParms
end
end
begin <mwguideNode(1.0)> "Quarter_Circle_TE01_HE21"
begin <mwg_wguide(1.0)>
0
4 4
0
"" -1000
METALWALL 0.000000
MAGWALL 0.000000
MAGWALL 0.000000
METALWALL 0.000000
begin <mwgshape_list(1.3)>
//xposn yposn SHAPE(...) nxHint nyHint pmlfact RIXPROFILE(...) GRADEDPARS(...)
0@OC 0@OC ELLIPSE(5,5) 0 0 OPQ(1.5 0) 0
0@OC 0@OC RECTANGLE(10,10) 0 0 OPQ(1.45 0) 0
end
end
begin <molab_parms(1.0)>
1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
N(1e+050) N(-1e+050) // evstart evend
4 0 60 60 // maxNmodes molabOpt nx ny
1.55 0 RVEC V2 30 0 1 300 300 15 25 0 5 5 // lambda hCurv solverID solverParms
end
end
begin <WGScanNode(1.0)> "Ellipse_Aspect_Ratio_Scanner_Equal_Areas"
"Quarter_Circle_TE01_HE21" //wgname1
"REPLICA" //wgname2
0 //stepType
20 0 " " //nstep,minstep,itpFunction.string
1 4 //xstart,xend
"x-parameter" //xlabel
begin <mwguideNode(1.0)> "REPLICA"
begin <mwg_wguide(1.0)>
0
6.25 3.75
0
"" -1000
METALWALL 0.000000
MAGWALL 0.000000
MAGWALL 0.000000
METALWALL 0.000000
begin <mwgshape_list(1.3)>
//xposn yposn SHAPE(...) nxHint nyHint pmlfact RIXPROFILE(...) GRADEDPARS(...)
0@OC 0@OC ELLIPSE(10,2.5) 0 0 OPQ(1.5 0) 0
0@OC 0@OC RECTANGLE(12.5,7.5) 0 0 OPQ(1.45 0) 0
end
end
begin <molab_parms(1.0)>
1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
N(1e+050) N(-1e+050) // evstart evend
4 0 60 60 // maxNmodes molabOpt nx ny
1.55 0 RVEC V2 30 0 1 300 300 15 25 0 5 5 // lambda hCurv solverID solverParms
end
end
end
begin <mwguideNode(1.0)> "Quarter_Circle_TE01_HE21_N1d_eq_30"
begin <mwg_wguide(1.0)>
0
4 4
0
"" -1000
METALWALL 0.000000
MAGWALL 0.000000
MAGWALL 0.000000
METALWALL 0.000000
begin <mwgshape_list(1.3)>
//xposn yposn SHAPE(...) nxHint nyHint pmlfact RIXPROFILE(...) GRADEDPARS(...)
0@OC 0@OC ELLIPSE(5,5) 0 0 OPQ(1.5 0) 0
0@OC 0@OC RECTANGLE(10,10) 0 0 OPQ(1.45 0) 0
end
end
begin <molab_parms(1.0)>
1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
N(1e+050) N(-1e+050) // evstart evend
4 0 60 60 // maxNmodes molabOpt nx ny
1.55 0 RVEC V2 30 0 1 300 300 15 25 0 5 5 // lambda hCurv solverID solverParms
end
end
end
begin <fimmwave_prj(1.0)> "Sec_2_RWG Symmetry"
begin <notesTB(1.0)> "RWG Symmetry Notes"
end
begin <rwguideNode(1.0)> "Input_Output_RWG_Quarter"
begin <rwg_wguide(1.0)>
"" -1000
METALWALL 0.000000 // lhs boundary
1.75 0 1
4 0 2
METALWALL 0.000000 // rhs boundary
// end of slice list
begin <slabwg(2.1)>
METALWALL 0.000000
4 1.529 0 0
1.25 1.536 0 1
MAGWALL 0.000000
end
begin <slabwg(2.1)>
METALWALL 0.000000
4 1.529 0 0
1.25 1.529 0 0
MAGWALL 0.000000
end
end
begin <molab_parms(1.0)>
1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
N(1e+050) N(-1e+050) // evstart evend
10 0 120 120 // maxNmodes molabOpt nx ny
0.8 0 RVEC V2 30 0 1 300 300 15 25 0 5 5 // lambda hCurv solverID solverParms
end
begin <notesTB(1.0)> "For increasing speed & accuracy"
end
end
begin <rwguideNode(1.0)> "Dummy RWG_Air_Gap_Quarter"
begin <rwg_wguide(1.0)>
"" -1000
METALWALL 0.000000 // lhs boundary
1.75 0 1
4 0 2
METALWALL 0.000000 // rhs boundary
// end of slice list
begin <slabwg(2.1)>
METALWALL 0.000000
4 1 0 0
1.25 1 0 1
MAGWALL 0.000000
end
begin <slabwg(2.1)>
METALWALL 0.000000
4 1 0 0
1.25 1 0 0
MAGWALL 0.000000
end
end
begin <molab_parms(1.0)>
1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
N(1) N(0) // evstart evend
200 0 120 120 // maxNmodes molabOpt nx ny
0.8 0 REFFIDX V3 0 300 300 15 25 0 5 5 // lambda hCurv solverID solverParms
end
begin <notesTB(1.0)> "Use Effect Index Solver to get all 154 bound TE modes with correct symmetry"
end
end
begin <FPdeviceNode(1.0)> "Dummy Rect WG Quarter Device"
0.8 //lambda
begin <FPcomponent(1.0)>
//list of subelement references follow:
BEGINLIST
1
2
3
4
1
ENDLIST
//list of subelements follow:
begin <FPWGsection(1.0)>
"../Input_Output_RWG_Quarter" 1 // "wgfilename" length
// LHS rtRegList follows
begin <RTregionList(1.0)>
//rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
end
// RHS rtRegList follows
begin <RTregionList(1.0)>
//rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
end
end
begin <FPsimpleJoint(1.0)>
0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 h_tilt2 v_tilt2 method
end
begin <FPWGsection(1.0)>
"../Dummy RWG_Air_Gap_Quarter" 1 // "wgfilename" length
// LHS rtRegList follows
begin <RTregionList(1.0)>
//rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
end
// RHS rtRegList follows
begin <RTregionList(1.0)>
//rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
end
end
begin <FPsimpleJoint(1.0)>
0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 h_tilt2 v_tilt2 method
end
end
//lhs input field
begin <FPInputDefinition(2.1)>
1 //input type
1 //single mode input
end
//rhs input field
begin <FPInputDefinition(2.1)>
1 //input type
0 //single mode input
end
begin <notesTB(1.0)> "Exercise - Reduce WG sizes slightly to increase speed"
end
end
begin <FPScanNode(1.0)> "Quarter _RWG_Length_Scanner"
"Dummy Rect WG Quarter Device" //cdname1
"REPLICA" //cdname2
200 //nstep
0 20 //xstart,xend
"Length (\mm)" //xlabel
end
end
begin <fimmwave_prj(1.0)> "Sec_3_RWG_Const_Area"
begin <WGScanNode(1.0)> "Square_to_Rect_WG_Scanner"
"Square_4x4" //wgname1
"REPLICA" //wgname2
0 //stepType
40 0 " " //nstep,minstep,itpFunction.string
1 1.1 //xstart,xend
"Aspect Ratio" //xlabel
begin <rwguideNode(1.0)> "REPLICA"
begin <rwg_wguide(1.0)>
"" -1000
MAGWALL 0.000000 // lhs boundary
2 0 1
4.4 0 2
2 0 1
MAGWALL 0.000000 // rhs boundary
// end of slice list
begin <slabwg(2.1)>
MAGWALL 0.000000
2 1.45 0 0
4 1.45 0 0
2 1.45 0 0
MAGWALL 0.000000
end
begin <slabwg(2.1)>
METALWALL 0.000000
2 1.45 0 0
4 1.5 0 1
2 1.45 0 0
METALWALL 0.000000
end
end
begin <molab_parms(1.0)>
1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
N(1e+050) N(-1e+050) // evstart evend
8 0 60 60 // maxNmodes molabOpt nx ny
1.5 0 RVEC V2 50 0 1 300 300 15 25 0 5 5 // lambda hCurv solverID solverParms
end
end
end
begin <rwguideNode(1.0)> "Rect_2x8"
begin <rwg_wguide(1.0)>
"" -1000
METALWALL 0.000000 // lhs boundary
4 0 1
2 0 2
4 0 1
METALWALL 0.000000 // rhs boundary
// end of slice list
begin <slabwg(2.1)>
METALWALL 0.000000
4 1.45 0 0
8 1.45 0 0
4 1.45 0 0
METALWALL 0.000000
end
begin <slabwg(2.1)>
METALWALL 0.000000
4 1.45 0 0
8 1.5 0 1
4 1.45 0 0
METALWALL 0.000000
end
end
begin <molab_parms(1.0)>
1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
N(1e+050) N(-1e+050) // evstart evend
18 0 120 120 // maxNmodes molabOpt nx ny
1 0 RVEC V2 30 0 1 300 300 15 25 0 5 5 // lambda hCurv solverID solverParms
end
end
begin <rwguideNode(1.0)> "Rect_8x2"
begin <rwg_wguide(1.0)>
"" -1000
METALWALL 0.000000 // lhs boundary
4 0 1
5 0 2
4 0 1
METALWALL 0.000000 // rhs boundary
// end of slice list
begin <slabwg(2.1)>
METALWALL 0.000000
0.1 1 0 0
4 1.45 0 0
3.2 1.45 0 0
4 1.45 0 0
METALWALL 0.000000
end
begin <slabwg(2.1)>
METALWALL 0.000000
0.1 1 0 0
4 1.45 0 0
3.2 1.5 0 1
4 1.45 0 0
METALWALL 0.000000
end
end
begin <molab_parms(1.0)>
1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
N(1e+050) N(-1e+050) // evstart evend
8 0 120 120 // maxNmodes molabOpt nx ny
1.5 0 RVEC V2 40 0 1 300 300 15 25 0 5 5 // lambda hCurv solverID solverParms
end
end
begin <rwguideNode(1.0)> "Square_Quarter_Elec_Elec_HE21"
begin <rwg_wguide(1.0)>
"" -1000
METALWALL 0.000000 // lhs boundary
2 0 1
4 0 2
MAGWALL 0.000000 // rhs boundary
// end of slice list
begin <slabwg(2.1)>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -