A parameterized polarization rotator model described by s-parameters. This is an example template of polarization rotating waveguide taper parameterized by two parameters, taper output width and the taper length . This data is provided in a parameterized s-parameter format.
Template: ptaper_pr_c
Photonic Model: sparsweep_pcell
Quality Assurance Test: sparsweep_pcell QA
Supported Parameters: Taper output width, taper length.
Interoperability with Cadence Virtuoso:
- Circuit design flows using INTERCONNECT model: Yes.
- Circuit design flow using photonic Verilog-A model: Yes.
Modeling Data
The source data template for a parameterized polarization rotator element can be divided into two sections.
- For new users (continue with the following section: Basic Data Requirement)
- For advanced users (continue with section: Complete Data Requirement)
The parameterized polarization rotator template can be used to create an advanced compact model for a custom parameterized polarization rotator. The template contains a lot of different modeling data to create an accurate model. However, not all these data need to be updated by users. The fastest and simplest way to modify the template data and create a custom compact model is to only update the data listed in the 'basic data requirement section' below, while all the remaining data (which are illustrated in detail in subsequent sections) can stay at their default value.
Note: Advanced users please jump start with Complete Data Requirement (for advanced users) section.
Basic data requirement (for new users)
The basic and minimum data required to build the parameterized polarization rotator model is described below.
general
"general" is a struct with the following fields:
Field | Type | Description |
---|---|---|
description | string | A string containing a brief description of the model, which will be displayed to the end user. |
notes | cell |
A cell array providing model notes which will be displayed to the end user. Each element of the cell is a struct with the fields:
|
ports
"ports" is a struct with the following fields:
Field | Type | Description |
---|---|---|
opt_X |
struct with fields described in table below | Port definition corresponding to the X th optical port. |
Each field above consists of the following fields:
Field | Type | Description |
---|---|---|
name | string | The name of the port, which will be visible to the end user. This name should be consistent with the name that will be used for netlisting. |
dir | string | The directionality of the port, either "Input", "Output", or "Bidirectional" |
pos | string |
The side of the model which the port will be displayed on, either "Left", "Right", "Top", or "Bottom" |
loc | number |
The placement of the port on the side defined by loc, provided as a coordinate between 0 and 1. |
order | number |
The order at which the port is listed in a netlist. |
parameters
"parameters" is a struct with the following fields:
Field | Type | Description |
---|---|---|
parameter_X | struct with fields described in table below |
parameter_X with X being an integer are parameters that the user can arbitrarily define. For "temperature" to be defined as a parameter only following fields should be provided:
|
Each struct above consists of following fields:
Field | Type | Description |
---|---|---|
name |
string |
Name of the parameter. |
kind | string |
The type of quantity described by this parameter. The values for this parameter correspond to the allowed values within the "Kind" dropdown menu within the Property Editor in INTERCONNECT. The "Kind" determines the units. Some example kinds are:
|
default |
number |
The nominal value of the parameter |
min
|
number |
Minimum allowed value if the visible_to_user is set to True. |
max
|
number |
Maximum allowed value if the visible_to_user is set to True. |
model_data
"model_data" is a struct with the following fields:
Field | Type | Description |
---|---|---|
mode_data |
cell |
n x 1 cell array (n number of modes). Each element of the cell is a struct with fields:
|
spar_filename | string | A string containing the filename of the s-parameter data file for this element. This must include the extension of the file (.txt) |
S-parameter data file is described below.
S-parameter data file | file |
A text file containing parameterized polarization rotator s-parameters in Optical N Port S-Parameter format (see "S-Parameter file sweep option"). The s-parameters must be defined for at least two frequency points. Note:
|
Complete data requirement (for advanced users)
The complete data section provides a complete reference of data supported by the parameterized polarization rotator model including the basic required data described in the previous section. The descriptions of all the fields in the parameterized polarization rotator source data template are described below.
general
"general" is a struct with the following fields:
[[snippet||11549514081811]]
ports
"ports" is a struct with the following fields:
[[snippet||12147423089811]]
Each field above consists of the following fields:
[[snippet||11549759363603]]
parameters
"parameters" is a struct with the following fields:
[[snippet||12188681692563]]
model_data
"model_data" is a struct with the following fields:
[[snippet||12147882417043]]
S-parameter data file is described below.
S-parameter data file | file |
A text file containing parameterized polarization rotator s-parameters in Optical N Port S-Parameter format (see "S-Parameter file sweep option"). The s-parameters must be defined for at least two frequency points. Note:
|
QA
"QA" is a struct with the following fields:
[[snippet||12184428062739]]