This page summarizes the S-parameter file formats for all the S-parameters elements, and ways of using them in INTERCONNECT.
| [[Note:]] The unit of the angle of the S-parameter (∠S) is the radian. |
Optical N Port S-Parameter
The Optical N Port S-Parameter element has two types available: "transmission" and "modulation."
Format for "transmission" type
Default
Option 1: with number of ports on the left and right sides of the element defined in the header
Option 2: with port name and position defined for individual port
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.
Option 3: Group delay
An option is available to isolate the group delay, or linear, contribution to the phase. This makes it easier to keep track of intervals of \(2\pi\) in the phase data for long structures, where the phase changes quickly as a function of frequency. The header requires the group delay value, evaluated at the center frequency of the S-parameter frequency data in units of seconds. The phase angle in the third column is the total phase angle minus the group delay phase change relative to the center frequency. If the group delay phase contribution is not removed from the total phase, the group delay will be double-counted in the simulation. The group delay phase change for data point \(i\) is \(2 \pi \tau_g \times (f_i-f_c)\), where \(f_i\) is the frequency for data point \(i\), \(f_c=(f_1+f_N)/2\) is the center frequency, \(N\) is the number of frequency points and \(n_g\) is the group delay. The process for removing the group delay phase change is described in greater detail in this application example.
Option 4: sweep S-parameter file
Another option is available for populating the S-parameter element with interpolated parameters from a sweep.
You can generate a sweep S-parameter file, through S-parameter sweeps. A legacy method also exists that allows you to generate an xml lookup table with multiple S-parameter files. However, interpolating files generated from S-parameter sweeps is faster than interpolating using lookup tables, as it eliminates the file loading process.
One example of a sweep S-parameter file is shown below (the group delay values are optional):
The s-parameter file generated from sweep cannot be assigned directly via GUI. To apply these parameters to an element, you must use the readnportsparameterat command, along with the setvalue command. Further details with regards to the script commands are in the section below on Using s-parameter files.
For even faster interpolation while running readnportsparameterat, you can also use convertnportsparametersweep to first convert the s-parameter file to a binary format (.idat).
Option 5: Touchstone file format
In 2021R1.1 and later: The Optical N Port S-Parameter element supports Touchstone format S-parameter files:
- Supports single mode with an arbitrary number of physical ports.
- Supports format with and without group delay (be able to read this from comments in Touchstone format).
For more information on touchstone file format details, please refer to the Electrical N Port S-Parameter section below.
Format for "modulation" type
For the Optical N Port S-Parameter element with "type" = "modulation", the file format is shown below. This format is used when the s parameter is temperature-dependent.
| [[Note:]] 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. |
Optical 1xN S-Parameter
This format applies to a single input port and \(N\) output ports.
In the case of \(N = 1\), the format looks as follows:
Optical S-Parameter
This format applies to a single input and a single output port.
If the S-parameters are symmetric (\(S_{11}=S_{22}\) and \(S_{21}=S_{12} \)), the following format can be used.
If all the S-parameters apart from \(S_{21}\) are zero, the following format can be used.
Optical N Port Propagation Parameter
For the Optical N Port Propagation Parameter element with "type" = "propagation", the file format is defined as:
Optical Time Variant S-Parameter
For the Optical Time Variant S-Parameter element with "type" = "modulation" and control input signal a, the file format is defined as:
Optical Nonlinear S-Parameter
The Optical Nonlinear S-Parameter element only works for 2 port (1 by 1) element at this stage, and with "type" = "transmission", the file format is defined as:
| [[Note:]] The optical powers need to be defined in this specific order: input port mode1, input port mode2, output port mode1 and output port mode2. |
Electrical N Port S-Parameter
The file format follows the standard Touchstone file format. Users can choose between "magnitude angle" file format and "real imaginary and dB angle" file format.
The following example is a magnitude angle file format for a 4-port element:
The following example is a real imaginary and dB angle file format for a 2 port element:
The option line is required at the beginning of the file to specify the format of the data in the file. The option line starts with a "#" and has the format of:
where
Electrical Time Variant S-Parameter
The file format is shown below:
Using S-parameter files
To assign S-parameter files from the GUI, use the “load from file” and “s parameters file name” properties in the element. To load a compatible s-parameter file, set “load from file” to “true”, and select a file using “s parameter file name”. The screenshot below shows an example for the Optical N Port S-Parameter element.
Assigning with script
To assign S-parameter files to elements in script, use the following commands:
- importsparameter: Assigns S-parameter data in the Script workspace to an S-parameter element. Use the read script command in conjunction with this script command to assign s-parameter files directly to elements, either from text files or touchstone formatted files.
- touchstoneload : Loads passive network data from a file containing Touchstone file formatted s-parameters. This script loads the file as a raw matrix.
- readnportsparameterat: Interpolates the S-Parameter sweep file with the specified parameter values. You can set the S-parameter value to an element using setvalue. The command convertnportsparametersweep can speed up the interpolation process by converting the text file into a binary file.
- lookupreadnportsparameter : Returns an interpolated S-parameter cell from a file containing a lookup table of design and extracted parameters. The lookup table must follow the INTERCONNECT XML lookup table format. You can set the s-parameter value to an element using setvalue. This interpolation is slower compared to using readnportsparameterat due to having to open multiple s-parameter files.
- setsparameter : Sets the S-parameter of a scripted element directly using matrices. Cannot be used with elements other than scripted elements.