Field |
Type |
Description |
photonic_model
|
String |
The name of the photonic model used for this template.
Please visit here for a list of all available photonic models.
|
mode_data
|
Cell |
n x 1 cell array (n number of modes). Each element of the cell is a struct with fields:
- name: String with the name of the mode ("TE" or "TM")
- ID: Integer to identify the mode, which should be 1 for "TE" and 2 for "TM". These should be consistent across the entire CML.
|
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) |
digital_filter_type |
String |
A string containing the type of digital filter used to fit the element transfer function in time domain. Valid entries are:
- "FIR" - Should be used where phase information is important
- "IIR" - Can be used in cases where phase is not important, but the transmission is frequency dependent
|
number_of_taps_estimation |
String |
A string containing the method of choosing the number of taps for the FIR filter of the element. Valid entries are:
- "group delay" - Choose the number of FIR taps to match the expected group delay of the element, and allow the end user to use the delay compensation feature of INTERCONNECT
- "fit tolerance" - Choose the number of FIR taps to get the best match with the S-parameter spectrum.
- "disabled" - Disable tap estimation and use the number of 'fir_taps' provided by the user.
|
fir_taps |
Number |
Number of taps for the FIR filter if digital_filter_type is set to FIR. Larger number allows to resolve frequency dependence better, but it increases time delay.
Suggestions:
- Set to ~64 for devices where dispersive properties are important.
- Set to ~1 for devices that will be used in circuits where time delays are a concern
|
iir_taps |
Number |
Number of taps for infinite impulse response (IIR) filter if digital_filter_type is set to IIR.
Suggestions:
- For most cases, the default number of taps (4) is sufficient. In some cases, it might be necessary to use a larger value
|
passivity_enforcement |
String |
A string containing the method of passivity enforcement used on the input data. Valid entries are:
- "ignore - Ignore any passivity issue in the data
- "test" - Test if the induced 2-norm of the s-parameters is less than 1 in which case the data is passive.
- "enforce" - Enforce the passivity by making sure the induced 2-norm of the s-parameters is less than 1
|
reciprocity_enforcement |
String |
A string containing the method of reciprocity enforcement used on the input data. Valid entries are:
- "ignore - Ignore any reciprocity issue in the data
- "test" - Test for symmetry across the diagonal of the s-parameter matrix in which case the data is reciprocal.
- "enforce" - Enforce the symmetry across the diagonal of the s-parameter matrix.
|