Optical N port s-parameter element
Keywords
optical, bidirectional
Ports
Name | Type |
---|---|
port 1 | Optical Signal |
port 2 | Optical Signal |
Properties
General Properties
Name | Default value | Default unit | Range |
---|---|---|---|
name Defines the name of the element. |
Optical N Port S-Parameter | - | - |
annotate Defines whether or not to display annotations on the schematic editor. |
true | - | [true, false] |
enabled Defines whether or not the element is enabled. |
true | - | [true, false] |
type Defines the element unique type (read only). |
Optical N Port S-Parameter | - | - |
description A brief description of the elements functionality. |
Optical N port s-parameter element | - | - |
prefix Defines the element name prefix. |
SPAR | - | - |
model Defines the element model name. |
- | - | - |
library Defines the element location or source in the library (custom or design kit). |
- | - | - |
local path Defines the local path or working folder $LOCAL for the element. |
- | - | - |
url An optional URL address pointing to the element online help. |
- | - | - |
Standard Properties
Name | Default value | Default unit | Range |
---|---|---|---|
configuration Defines the bidirectional or unidirectional element configuration. |
bidirectional | - | [bidirectional, s parameters |
load from file Defines whether or not to load s-parameters from an input file or to use the currently stored s-parameters. |
false | - | [true, false] |
s parameters filename The file containing the s-parameters. Refer to the Implementation Details section for the format expected. |
- | - | - |
Thermal Properties
Name | Default value | Default unit | Range |
---|---|---|---|
temperature Defines the temperature. |
%temperature% | K | (-∞, +∞) |
Numerical Properties
Name | Default value | Default unit | Range |
---|---|---|---|
remove disconnected ports Defines whether or not to remove disconnected ports from the internal s-parameters. |
false | - | [true, false] |
order The order that the element internal s-parameters are raised to. This allows users to automatically cascade an arbitrary number of elements. |
1 | - | [1, +∞) |
passivity Defines how passivity of s-parameters is enforced: 'ignore' ignores the passivity of the s-parameters. 'test' tests if the induced 2-norm of the s-parameters is less than 1. 'enforce' enforces the passivity by making sure the the induced 2-norm of the s-parameters is less than 1. 'optimal' enforces the passivity by making sure the the induced 2-norm and the Frobenius norm of the s-parameters are both less than 1. |
ignore | - | [ignore, test, enforce, optimal |
passivity tolerance When enforcing passivity the induced 2-norm of the s-parameters at an offending frequency will be equal to 1-eps, where eps is the passivity tolerance. |
1e-006 | - | [0, 1] |
reciprocity Defines how reciprocity of s-parameters is enforced: 'ignore' ignores the reciprocity of the s-parameters. 'test' tests for symmetry across the diagonal of the s-parameter matrix. 'enforce' enforces symmetry across the diagonal of the s-parameter matrix. |
ignore | - | [ignore, test, enforce |
Numerical/Digital Filter Properties
Name | Default value | Default unit | Range |
---|---|---|---|
digital filter type Defines the digital filter type used to fit the element transfer function in time domain. |
FIR | - | [single tap, FIR, IIR |
number of taps estimation Defines the method used to estimate the number of taps of the digital filter. |
fit tolerance | - | [disabled, fit tolerance, group delay |
filter fit tolerance Defines the mean square error for the fitting function. |
0.05 | - | (0, 1) |
filter fit number of iterations This determines the maximum number of iterations required before fitting reaches the tolerance error. |
50 | - | [1, +∞) |
filter fit rolloff Defines the frequency roll off for the fitting function. |
0.05 | - | [0, 1) |
window function Defines the window type for the digital filter. |
rectangular | - | [rectangular, hamming, hanning |
number of fir taps Defines the number of coefficients for digital filter. |
256 | - | [1, +∞) |
maximum number of fir taps Defines the number of coefficients for digital filter. |
4096 | - | [1, +∞) |
number of iir taps Defines the number of coefficients for digital filter. |
4 | - | [2, +∞) |
maximum number of iir taps Defines the number of coefficients for digital filter. |
20 | - | [2, +∞) |
initialize filter taps Defines whether to use the initial input signal to initialize filter state values or to set them to zero values. |
false | - | [true, false] |
fractional delay Defines whether to use a fractional delay filter or force the delay to be an integer multiple of the sample period. |
true | - | [true, false] |
delay compensation The number of delays to compensate for latency. |
0 | - | [0, +∞) |
Diagnostic Properties
Name | Default value | Default unit | Range |
---|---|---|---|
run diagnostic Enables the frequency response of the designed filter implementation and the ideal frequency response to be generated as results. |
false | - | [true, false] |
diagnostic size The number of frequency points used when calculating the filter frequency response. |
1024 | - | [2, +∞) |
Results
Name | Description |
---|---|
diagnostic/response #/transmission | The complex transmission vs. frequency corresponding to the ideal and designed filter. |
diagnostic/response #/gain | The gain vs. frequency corresponding to the ideal and designed filter. |
diagnostic/response #/error | Mean square error comparing the frequency response of the designed filter implementation with the ideal frequency response. |
diagnostic/passivity | The induced 2-norm or the spectral norm of the s-parameters vs. frequency. |
diagnostic/reciprocity | The induced 2-norm or the spectral norm of (S-S') vs. frequency, where S is the s-parameters matrix. |
====================================
Implementation Details
There are a few options for the file format. The number of ports will automatically adjust to match the data in the S parameter data file. Please see the following example files: optical_N_port_sparameter.icp.
For this Optical N Port S-Parameter element, s-parameter type allowed is "transmission" or "modulation". The "transmission" type is used to define general s-parameter elements.
Option 1 (general):
("output port name","mode label",mode ID (out),"input port name",mode ID (in),"transmission")
(number of frequency points, number of columns)
f1 abs(S) angle(S)
f2 abs(S) angle(S)
...
Example file: attenuatortetm.dat
Option 2 (with port location on symbol):
[number of ports on the left, number of ports on the right]
("output port name","mode label",mode ID (out),"input port name",mode ID (in),"transmission")
(number of frequency points, number of columns)
f1 abs(S) angle(S)
f2 abs(S) angle(S)
...
Example file: awg_1x9.dat
Option 3:
This option should be used when you want to define the port name and port position in the s-parameter file. If not specified, the port names will follow the order "port 1", "port 2" etc.
["port name","LEFT/RIGHT/TOP/BOTTOM"]
["port name","LEFT/RIGHT/TOP/BOTTOM"]
...
("output port name","mode label",mode ID (out),"input port name",mode ID (in),"transmission")
(number of frequency points, number of columns)
f1 abs(S) angle(S)
f2 abs(S) angle(S)
...
Example file: awg_1x2x2x4.dat
The "modulation" type is used to define temperature dependent s-parameter elements.
("output port name","mode label",mode ID (out),"input port name",mode ID (in),"modulation")
(1,N)
T1, T2, ..., TN
(number of frequency points, 2*N+1)
f1 abs(S1) angle(S1) abs(S2) angle(S2) ... abs(SN) angle(SN)
f2 abs(S1) angle(S1) abs(S2) angle(S2) ... abs(SN) angle(SN)
...
Example file: s_param_temperature_dependent.dat
Please note that only the "mode label" for the output port needs to be defined in the s-parameter file. That is because this "mode label" will be used to display the result in the analyzers. The "mode label" for the input port is defined in the sources or the Optical Network Analyzer (ONA) so there is no need to specify it in the file.
If the s-parameter is not fully defined for each of the ports combination, the default value 0 will be used for undefined ones. e.g., if only S21 and S31 are defined for a 3-port S-Parameter element, S12 = S13 = S23 = S32 = S11 = S22 = S33 =0, the transmission through this combination of ports is blocked.
For detailed file format information, please see the S-parameter file formats page.
Touchstone file:
In 2021R1.1 release and later the Optical N Port S Parameter element supports Touchstone format s-parameter files:
- supports single mode with arbitrary number of physical ports
- supports format with and without group delay (be able to read this from comments in Touchstone format)
The port definition and group delay are defined in the header comments.
! Touchstone File Format: Version 1.0
! Two-Port Data Order: 21_12
# HZ S MA R 50.00
! Optical Port List
! Port[0] = {"d1","mode 1",1,"LEFT"}
! Port[1] = {"d2","mode 1",1,"LEFT"}
! Port[2] = {"d3","mode 1",1,"LEFT"}
! Port[3] = {"d4","mode 1",1,"RIGHT"}
! GroupDelay = [[6.31529e-14,1.26475e-13,1.52878e-13,1.41617e-13],[1.27078e-13,6.38548e-14,1.5531e-13,1.52694e-13],[1.52694e-13,1.5531e-13,6.3855e-14,1.27078e-13],[1.41617e-13,1.52878e-13,1.26475e-13,6.31529e-14]]
! FREQ AMP PHASE AMP PHASE AMP PHASE AMP PHASE
1.9986163866666666e+14 5.0219998520000544e-02 1.4226922936283140e+02 1.0145708525796642e-02 -2.6757751558537759e+01 1.7931915832802403e-01 2.3775132507229156e+01 3.3882021573290944e-01 -1.1991773992533795e+02
1.0070718681505362e-02 5.8056900135876051e+00 5.0732592488865420e-02 1.0341717250370441e+02 1.3671544758191506e-01 -1.1717664057567175e+02 1.7904565568818445e-01 1.3135049317039986e+01
1.7904568355540454e-01 1.3134966495855060e+01 1.3671541123886211e-01 -1.1717662922776177e+02 5.0732579445953961e-02 1.0340664818618049e+02 1.0070728102671721e-02 5.8095461126970553e+00
3.3882025417731043e-01 -1.1991793078017376e+02 1.7931913428988117e-01 2.3775200730398538e+01 1.0145731964707239e-02 -2.6756811813667721e+01 5.0220004135475060e-02 1.4226828549876950e+02
...
Example
Using the inter-mode interaction ability of the Optical N Port S-Parameter element, we can easily build polarization manipulating elements such as polarization splitters and rotators. This property can also be used to simulate inter-mode crosstalk effects.
Polarization beam splitter
In the following example, the s-parameter file loaded into the element is for a polarization beam splitter. The CW Laser has the azimuth angle equals π/4 so the power is evenly distributed into the 2 polarizations. The Power Meters at the end measures the power and polarization of each branch.
Example file: polarization_splitter_sparameter.dat
Polarization rotator
The following example demonstrates an S-Parameter based polarization rotator element. The s-parameter file is generated based on the Application Example Polarization rotator using EME solver in MODE Solutions. The circuit and result are shown below. The Optical Network Analyzer measures the transmission from the TE mode input signal to the output signal which contains both TE and TM modes.
Example file: polarization_rotator_sparameter.txt
Double bus ring resonator
The following example demonstrate a Touchstone S-Parameter based on a double bus ring resonator model. The Touchstone s-parameter file is generated based on the Application Example Ring resonator using FDTD solver. The circuit and result are shown below. The Optical Network Analyzer measures the power transmission of the through port and drop port of the ring for the TE mode.