Transformation
Linear transforms to map an input signal range to an output signal.
JCS Network Configuration
structure.yaml Configuration
type | proc_transform |
Signals - From Process
Signal name | Type | Required | Description |
---|---|---|---|
y_1 | float32 | required | Transform output 1 Signal name can be renamed by the user |
y_2 | float32 | optional | Transform output 2 Signal name can be renamed by the user |
Signals - To Process
Signal name | Type | Required | Description |
---|---|---|---|
x_1 | float32 | required | Transform input 1. |
x_2 | float32 | optional | Transform input 2.transform_type type_2x2 only. |
Configuration Parameters
Parameter name | Type | Required | Description |
---|---|---|---|
transform_type |
enum | required | Selects the transform type. |
a_coeff |
float32 | optional | Single transform coefficient. Required if transform_type type_1x1 is selected |
b_coeff |
float32 | optional | Single transform coefficient. Required if transform_type type_1x1 is selected. |
A22_coeffs |
float32 | required | 2x2 A matrix transform coefficients, stored as an array: [a11, a12, a21, a22] Required is transform_type type_2x2 is selected. |
b21_coeffs |
float32 | required | 2x1 b vector transform coefficients, stored as an array: [b11, b21] Required is transform_type type_2x2 is selected. |
The following transforms are available for parameter transform_type
:
transform_type | Description |
---|---|
type_1x1 |
Single input, single output transform defined by \(y = ax + b\), where \(a\) and \(b\) are constants. |
type_2x2 |
Double input, double output transform defined by \(\textbf{y} = \textbf{Ax} + \textbf{b}\), where \(\textbf{A}\) is a 2x2 matrix and \(\textbf{b}\) is a 2x1 vector. |
Operation
1X1 Transform
If transform_type
type_1x1
is selected then the transform is configured as a 1x1 transform that is defined by:
Where \(a\) is a single coefficient, \(b\) is a single coefficient and \(x\) and \(y\) are the single input and output signals.
Configuration requirements:
Operation of the 1x1 transform requires:
-
transform_type
must be set totype_1x1
. -
a_coeff
to be configured. If not configured, a default value of \(a = 1.0\) is applied. -
b_coeff
to be configured. If not configured, a default value of \(b = 0.0\) is applied. -
Signal
x_1
must be connected.
2X2 Transform
If transform_type
type_2x2
is selected then the transform is configured as a 2x2 matrix transform that is defined by:
Where \(\textbf{A}\) is a 2x2 matrix, \(\textbf{b}\) is a 2x1 vector and \(\textbf{x}\) and \(\textbf{y}\) are the input and two output signals.
Configuration requirements:
Operation of the 2x2 transform requires:
-
transform_type
must be set totype_2x2
. -
A22_coeffs
to be configured. If not configured, a default value of \(\textbf{A} = \big[\begin{smallmatrix} 1 & 0\\ 0 & 1 \end{smallmatrix}\big]\) is applied. -
b21_coeffs
to be configured. If not configured, a default value of \(\textbf{b} = \small[\begin{smallmatrix} 0 & 0 \end{smallmatrix}\small]^{\mathsf{T}}\) is applied. -
Signal
x_1
must be connected. - Signal
x_2
must be connected.