optical pins name revised. Pin type added
This commit is contained in:
@@ -113,7 +113,9 @@ function FUNC_DEVICE_2X2(instPath)
|
||||
|
||||
## adding input ports
|
||||
|
||||
input_struct = ports.a1;
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: input_struct = ports.a1;
|
||||
input_struct = ports.opt_a1;
|
||||
if (input_struct.a < 0) { input_struct.a = input_struct.a + 360; }
|
||||
|
||||
if ( 45<=input_struct.a and input_struct.a<135 )
|
||||
@@ -148,7 +150,9 @@ function FUNC_DEVICE_2X2(instPath)
|
||||
input_phi = 0;
|
||||
}
|
||||
|
||||
mx_mode_source('a1_input',[input_struct.x,input_struct.y,zOffset]*1e-6,
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: mx_mode_source('a1_input',[input_struct.x,input_struct.y,zOffset]*1e-6,
|
||||
mx_mode_source('opt_a1_input',[input_struct.x,input_struct.y,zOffset]*1e-6,
|
||||
portsSZ,inputType,0,
|
||||
[abs(input_struct.radius)*1e-6,sign(input_struct.radius)*sign(inputType)*90],FDTD.sourceMode,FDTD.wl*1e-6);
|
||||
set("theta",input_theta);
|
||||
@@ -249,28 +253,52 @@ for (idx=1;idx<=length(portList);idx=idx+1)
|
||||
|
||||
}
|
||||
|
||||
if (find(portList=="a1") and find(portList=="b1")){
|
||||
Ephase_11 = unwrap(angle(b1.Ecenter) - angle(a1.Ecenter));
|
||||
Hphase_11 = unwrap(angle(b1.Hcenter) - angle(a1.Hcenter));
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: if (find(portList=="a1") and find(portList=="b1")){
|
||||
if (find(portList=="opt_a1") and find(portList=="opt_b1")){
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: Ephase_11 = unwrap(angle(b1.Ecenter) - angle(a1.Ecenter));
|
||||
Ephase_11 = unwrap(angle(opt_b1.Ecenter) - angle(opt_a1.Ecenter));
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: Hphase_11 = unwrap(angle(b1.Hcenter) - angle(a1.Hcenter));
|
||||
Hphase_11 = unwrap(angle(opt_b1.Hcenter) - angle(opt_a1.Hcenter));
|
||||
save_cmd = save_cmd + "Ephase_11" + "," + "Hphase_11" + ",";
|
||||
|
||||
}
|
||||
|
||||
if (find(portList=="a2") and find(portList=="b2")){
|
||||
Ephase_22 = unwrap(angle(b2.Ecenter) - angle(a2.Ecenter));
|
||||
Hphase_22 = unwrap(angle(b2.Hcenter) - angle(a2.Hcenter));
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: if (find(portList=="a2") and find(portList=="b2")){
|
||||
if (find(portList=="opt_a2") and find(portList=="opt_b2")){
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: Ephase_22 = unwrap(angle(b2.Ecenter) - angle(a2.Ecenter));
|
||||
Ephase_22 = unwrap(angle(opt_b2.Ecenter) - angle(opt_a2.Ecenter));
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: Hphase_22 = unwrap(angle(b2.Hcenter) - angle(a2.Hcenter));
|
||||
Hphase_22 = unwrap(angle(opt_b2.Hcenter) - angle(opt_a2.Hcenter));
|
||||
save_cmd = save_cmd + "Ephase_22" + "," + "Hphase_22" + ",";
|
||||
}
|
||||
|
||||
if (find(portList=="a1") and find(portList=="b2")){
|
||||
Ephase_12 = unwrap(angle(b2.Ecenter) - angle(a1.Ecenter));
|
||||
Hphase_12 = unwrap(angle(b2.Hcenter) - angle(a1.Hcenter));
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: if (find(portList=="a1") and find(portList=="b2")){
|
||||
if (find(portList=="opt_a1") and find(portList=="opt_b2")){
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: Ephase_12 = unwrap(angle(b2.Ecenter) - angle(a1.Ecenter));
|
||||
Ephase_12 = unwrap(angle(opt_b2.Ecenter) - angle(opt_a1.Ecenter));
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: Hphase_12 = unwrap(angle(b2.Hcenter) - angle(a1.Hcenter));
|
||||
Hphase_12 = unwrap(angle(opt_b2.Hcenter) - angle(opt_a1.Hcenter));
|
||||
save_cmd = save_cmd + "Ephase_12" + "," + "Hphase_12" + ",";
|
||||
}
|
||||
|
||||
if (find(portList=="a2") and find(portList=="b1")){
|
||||
Ephase_21 = unwrap(angle(b1.Ecenter) - angle(a2.Ecenter));
|
||||
Hphase_21 = unwrap(angle(b1.Hcenter) - angle(a2.Hcenter));
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: if (find(portList=="a2") and find(portList=="b1")){
|
||||
if (find(portList=="opt_a2") and find(portList=="opt_b1")){
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: Ephase_21 = unwrap(angle(b1.Ecenter) - angle(a2.Ecenter));
|
||||
Ephase_21 = unwrap(angle(opt_b1.Ecenter) - angle(opt_a2.Ecenter));
|
||||
## revised in 2026.06.07 by Qin Yue
|
||||
# legacy: Hphase_21 = unwrap(angle(b1.Hcenter) - angle(a2.Hcenter));
|
||||
Hphase_21 = unwrap(angle(opt_b1.Hcenter) - angle(opt_a2.Hcenter));
|
||||
save_cmd = save_cmd + "Ephase_21" + "," + "Hphase_21" + ",";
|
||||
}
|
||||
|
||||
@@ -283,7 +311,7 @@ Ez = getresult("z1","Ez");
|
||||
|
||||
savefname = devName+"_results.mat";
|
||||
|
||||
#matlabsave(savefname,b1,b2,z1);
|
||||
# legacy: #matlabsave(savefname,b1,b2,z1);
|
||||
|
||||
eval("matlabsave(savefname,"+save_cmd+"z1);");
|
||||
|
||||
@@ -292,4 +320,3 @@ eval("matlabsave(savefname,"+save_cmd+"z1);");
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user