Add3 ​
Weighted summation block that adds three scalar inputs with configurable gains.
A component that computes a weighted sum of three real inputs, allowing different gain factors to be applied to each input before summation. The output is calculated using the formula:
where k_1, k_2, and k_3 are user-configurable gain parameters.
Usage ​
BlockComponents.Add3(k1=1.0, k2=1.0, k3=1.0)
Parameters: ​
| Name | Description | Units | Default value |
|---|---|---|---|
k1 | Gain of u1 | – | 1 |
k2 | Gain of u2 | – | 1 |
k3 | Gain of u3 | – | 1 |
Connectors ​
u1- This connector represents a real signal as an input to a component (RealInput)u2- This connector represents a real signal as an input to a component (RealInput)u3- This connector represents a real signal as an input to a component (RealInput)y- This connector represents a real signal as an output from a component (RealOutput)
Behavior ​
Source ​
"""
Weighted summation block that adds three scalar inputs with configurable gains.
A component that computes a weighted sum of three real inputs, allowing different gain factors to be
applied to each input before summation. The output is calculated using the formula:math y = k_1 \cdot u_1 + k_2 \cdot u_2 + k_3 \cdot u_3
where `k_1`, `k_2`, and `k_3` are user-configurable gain parameters.
"""
component Add3
"First real input signal"
u1 = RealInput() {
"Dyad": {
"placement": {"icon": {"iconName": "input1", "x1": -50, "y1": 150, "x2": 50, "y2": 250}}
}
}
"Second real input signal"
u2 = RealInput() {
"Dyad": {
"placement": {"icon": {"iconName": "input2", "x1": -50, "y1": 450, "x2": 50, "y2": 550}}
}
}
"Third real input signal"
u3 = RealInput() {
"Dyad": {
"placement": {"icon": {"iconName": "input3", "x1": -50, "y1": 750, "x2": 50, "y2": 850}}
}
}
"Output signal representing the weighted sum of inputs"
y = RealOutput() {
"Dyad": {
"placement": {"icon": {"iconName": "output", "x1": 950, "y1": 450, "x2": 1050, "y2": 550}}
}
}
"Gain of `u1`"
parameter k1::Real = 1.0
"Gain of `u2`"
parameter k2::Real = 1.0
"Gain of `u3`"
parameter k3::Real = 1.0
relations
y = k1 * u1 + k2 * u2 + k3 * u3
metadata {
"Dyad": {
"labels": [{"label": "$(instance)", "x": 500, "y": 1100, "rot": 0}],
"icons": {"default": "dyad://BlockComponents/Add3.svg"}
}
}
endFlattened Source
"""
Weighted summation block that adds three scalar inputs with configurable gains.
A component that computes a weighted sum of three real inputs, allowing different gain factors to be
applied to each input before summation. The output is calculated using the formula:math y = k_1 \cdot u_1 + k_2 \cdot u_2 + k_3 \cdot u_3
where `k_1`, `k_2`, and `k_3` are user-configurable gain parameters.
"""
component Add3
"First real input signal"
u1 = RealInput() {
"Dyad": {
"placement": {"icon": {"iconName": "input1", "x1": -50, "y1": 150, "x2": 50, "y2": 250}}
}
}
"Second real input signal"
u2 = RealInput() {
"Dyad": {
"placement": {"icon": {"iconName": "input2", "x1": -50, "y1": 450, "x2": 50, "y2": 550}}
}
}
"Third real input signal"
u3 = RealInput() {
"Dyad": {
"placement": {"icon": {"iconName": "input3", "x1": -50, "y1": 750, "x2": 50, "y2": 850}}
}
}
"Output signal representing the weighted sum of inputs"
y = RealOutput() {
"Dyad": {
"placement": {"icon": {"iconName": "output", "x1": 950, "y1": 450, "x2": 1050, "y2": 550}}
}
}
"Gain of `u1`"
parameter k1::Real = 1.0
"Gain of `u2`"
parameter k2::Real = 1.0
"Gain of `u3`"
parameter k3::Real = 1.0
relations
y = k1 * u1 + k2 * u2 + k3 * u3
metadata {
"Dyad": {
"labels": [{"label": "$(instance)", "x": 500, "y": 1100, "rot": 0}],
"icons": {"default": "dyad://BlockComponents/Add3.svg"}
}
}
endTest Cases ​
No test cases defined.
Related ​
Examples
Experiments
Analyses
Tests