Photonic Model: fiber_array
Information on QA tests and QA types: Introduction to Quality Assurance (QA) tests
Instructions on running QA tests: Running QA tests in CML Compiler
QA tests
QA script | QA type | FOMs | Comments |
---|---|---|---|
fiber_array_single_loss_qa | Behavior | Loss | Single test for preset parameter values |
fiber_array_randomized_loss_qa | Behavior | Loss | Array of tests for random parameter values |
fiber_array_statistical_qa | Regression | statistical | statistical compact model |
QA Variables
These variables are defined as below in a struct named "QA" in the source data file:
Field | Type | Description |
---|---|---|
wavelength | number |
Source wavelength for setting up all the QAs in units of meter. |
single_test | struct with fields defined in single_test table |
Settings to run the QA test for a parameter preset. |
random_test | struct with fields described in random_test table |
Settings to run the QA test for a randomized parameter set. |
relative_tolerances | struct |
The relative tolerance for QA tests which verify the accuracy of different figures of merit defined as a struct. This struct has the following fields corresponding to the FOMs of the element:
|
single_test
Field | Type | Description |
---|---|---|
enable_single_test | boolean | A flag which controls whether or not a QA test is run for a parameter preset. |
parameters | struct |
The preset parameters to run the single QA test for if enable_single_test is set to true. This struct contains the following fields:
|
random_test
Field | Type | Description |
---|---|---|
Nr | integer | The number of randomized paraemeter sets to test. |
rand_seed | integer | Define the seed for generating randomized parameter sets |
parameters | struct |
The range of parameters to run multiple random QA tests. This struct contains the following:
|
Statistical QA Variables
(statistical compact models only)
These variables are defined as below in a struct named "QA" in the "statistical" struct in the source data file:
Field | Type | Description |
---|---|---|
enable_qa | boolean | Enable or disable running the statistical QA (Monte Carlo analysis). |
reference_data_available | boolean | When true, statistical QA results will be compared against reference data. When false, reference data is generated (only needed for the first run or after a model update). |
N_trials | number | Number of trials in Monte Carlo sweep. |
absolute_tolerance | number |
Absolute tolerance for QA tests which verify the statistical variations of the FOMs. If the simulated values differ from the values provided within the data file by more than this tolerance, the QA tests will fail. This struct accepts absolute tolerance values as numbers for following FOMs:
|
QA scripts
fiber_array_single_loss_qa.lsf
fiber_array_randomized_loss_qa.lsf
These scripts connect the multi-fiber array element with an ONA and performs a frequency domain simulation to measure the fiber-to-waveguide loss for each channel. The ‘single_loss’ script runs a single simulation with preset user-defined parameter values. The ‘random_loss’ script runs multiple simulations with randomly chosen parameter values with the range provided by the user. Both scripts compare the simulation results with source data and make sure the difference are within the tolerance value.
QA type | FOMs | QA variables |
---|---|---|
|
|
|
fiber_array_statistical_qa.lsf
The setup is similar to the nominal testbench with an ONA connected to the multi-fiber array, set up to run frequency domain simulation. The analysis script of the Root Element is used to collect the loss for each channel and a Monte-Carlo sweep is set up to collect these results for comparison to the data saved in stat_refdata.
QA type | FOMs | QA variables |
---|---|---|
|
|
|