SaveLoad module and saving file structureΒΆ
The saving file for ErwinJr2 is a json file discribing the structure of QC layers and optical waveguide.
The save and load functions is independently functioning as the SaveLoad module.
Here is a sample json file
{
"FileType": "ErwinJr2 Data File",
"Version": "200504",
"Description": "dx.doi.org/10.1038/nphoton.2009.262",
"Wavelength": 4.7,
"Substrate": "InP",
"EField": 102.0,
"x resolution": 1.0,
"E resolution": 0.5,
"Solver": "ODE",
"Temperature": 300.0,
"Repeats": 3,
"Materials": {
"Compostion": ["InGaAs", "AlInAs"],
"Mole Fraction": [0.66, 0.31]
},
"QC Layers": {
"Material": [0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1],
"Width": [28.0, 26.0, 22.0, 21.0, 18.0, 18.0, 15.0, 13.0, 12.0, 10.0, 42.0, 12.0, 39.0, 14.0, 33.0, 23.0],
"Doping": [0.0, 1.5, 1.5, 1.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
"Active Region": [true, false, false, false, false, false, true, true, true, true, true, true, true, true, true, false]
},
"Waveguide": {
"wavelength": 4.7,
"materials": ["Air", "Au", "SiNx", "InxGa1-xAs", "InxGa1-xAs", "Al1-xInxAs", "Al1-xInxAs", "InxGa1-xAs", "Active Core", "InxGa1-xAs", "InP"],
"moleFracs": [0.0, 0.0, 0.35, 0.53, 0.53, 0.52, 0.52, 0.53, 0.53, 0.53, 0.0],
"dopings": [0.0, 0.0, 0.0, 1200.0, 90.0, 2.0, 3.0, 0.5, 0.5, 0.5, 0.0],
"width": [1.0, 0.45, 0.4, 0.01, 0.5, 0.5, 0.6, 0.2, 1.384, 0.2, 2.0],
"mobilities": [null, null, null, null, null, null, null, null, null, null, null],
"custom": {"Active Core": {"index": "(3.286+0j)", "period": [346.0, 40], "gain": 53.4}}
}
}