Imports a dataset from a Sentaurus TDR file into a corresponding currently selected Lumerical simulation object.
This script command only supports the following objects, attempting to import into any other object will result in an error.
- FDTD: np Density and Temperature Index Perturbation
- Multiphysics: Import doping, Import heat distribution, Import temperature distribution
Note: The results in imported objects cannot be visualized directly due to the IP protection of the content in tdr files. In FDTD and MODE, you can run a short simulation and visualize the index result that includes perturbations. In Multiphysics, you can run meshing to visualize the imported doping profile or run a short simulation to visualize doping and other imported datasets.
| Syntax | Description |
|---|---|
| out = tdrimportdataset(“file_name”, dataset_name, opt); |
Imports a dataset from a TDR file into a selected object. The arguments are as follows:
Returns 1 if the import was successful. |
The table below shows the fields for the configuration structure opt.
| Field | Description |
|---|---|
| X_rename |
This maps the TDR dataset name to the attribute name in the Lumerical dataset that is imported into the selected Lumerical simulation object. For example, if the TDR dataset is Note: Specific names are required when importing into Lumerical, if the correct names aren’t used, the results will be incorrect.
For doping concentrations, it must be N regardless of the doping type. |
| X_target_prefixed_units | The target units to which to convert the TDR dataset X for use in Lumerical. This should just be the unit prefix, not the whole unit. For example, if you want to convert the TDR dataset units to cm^-3 units, the value of this option should be just “cm”, or a comma separated string if there are multiple unit types in the formula. The actual formula for the units from the TDR file is preserved and just the individual SI unit prefixes are changed in the formula. |
| lum_dataset_name | The name of the Lumerical dataset to encapsulate the imported data in, you can generally set it arbitrarily. |
| destination_cs |
Optional. Specifies the Lumerical coordinate system. The allowed values are found in tdraddregion. The default is cs_3d_z_y_x_neg in 3D and cs_2d_y_x in 2D. The value specified here should match that used in tdraddregion if you have imported the geometry from the same TDR file. |
Example – Import np density into FDTD
# Wrap tdrimportdataset around a function to first add the right grid attribute
function addNPDensity(tdrFileName,tdrDsName,opt){
addgridattribute("np density");
return tdrimportdataset(tdrFileName,tdrDsName,opt);
}
tdrDsName = {"state_0/eDensity/Silicon_1", "state_0/hDensity/Silicon_1"};
opt = {"eDensity_rename" : "n",
"eDensity_target_prefixed_units" : "cm",
"hDensity_rename" : "p",
"hDesnity_target_prefixed_units" : "cm",
"lum_dataset_name" : "charge",
"destination_cs", "cs_3d_z_y_x_neg"};
out = addNPDensity(tdrFileName, tdrDsName, opt);Example – Import doping density into CHARGE
function addDoping(tdrFileName, tdrDsName, type, opt) {
addimportdope;
set("name", opt.lum_dataset_name);
set("dopant type", type);
return tdraddimportdataset(tdrFileName, tdrDsName, opt);
}
tdrDsName = {"state0/PhosphorusActiveConcentration/Silicon"};
opt = {"PhosphorusActiveConcentration_rename" : "N", #Always N for import doping
"PhosphorusActiveConcentration_target_prefixed_units" : "m",
"lum_dataset_name" : "doping_N"};
out = addDoping(tdrFileName, tdrDsName, "n", opt);Wrapper functions
The Knowledge Base article Synopsys Sentaurus™ interoperability – import from and export to TDR files contains a set of wrapper functions and examples which is a more user-friendly method of using this built-in script command.
See Also
Synopsys Sentaurus™ interoperability – import from and export to TDR files, tdrinfo, tdraddregion, tdrwritedataset