We have an exciting announcement about badges coming in May 2025. Until then, we will temporarily stop issuing new badges for course completions and certifications. However, all completions will be recorded and fulfilled after May 2025.

Ansys Learning Forum Forums Discuss Simulation Photonics Arbitrary sign for eigen mode Reply To: Arbitrary sign for eigen mode

amitrotem2
Subscriber

I'm running on a Windows 11 Pro 23H2.

You can get somthing more reproducible by moving the rectangle (or the solver region) along the wide axis.
Here I moved the solver region so the coordinates of the mode won’t change.

 


clc;
cleardcard;
closeall;
newproject;
## design
addrect;
set("x",0);set("x span",1e-6);
set("y",0);set("y span",1e-6);
set("z",0);set("z span",0.2e-6);
set("material", "Si (Silicon) - Palik");
## solver
addfde;
set("solver type", "2D X normal");
set("x",0);
set("y",0);set("y span",2e-6);
set("z",0);set("z span",1e-6);
set("number of trial modes", 3);
set("mesh cells z", 50);
set("mesh cells y", 50);
## get mode
K = 5;
for (k=0:K){
    setnamed("FDE", "y", (k/K-0.5)*0.5e-6);
    #setnamed("rectangle", "y", (k/K-0.5)*0.5e-6);
    findmodes;
    copydcard("mode2", "m"+num2str(k));
    switchtolayout;
}
## get neff and expand modes
neff_list = matrix(K);
Smat = matrix(K,K);
for (k=1:K){
    neff_list(k) = getdata("m"+num2str(k), "neff");
    for (j=1:K){
        X = expand("m"+num2str(k),"m"+num2str(j));
        Smat(j,k) = X(1); # should be 1
    }
}
## modes have minus signs
image(real(Smat));

Â