Analog.Basic.VCV
Linear voltage-controlled voltage source.
The right port voltage is controlled by the left port voltage:
The left port current is zero (infinite input impedance).
Corresponds to Modelica.Electrical.Analog.Basic.VCV.
This component extends from ElectricalComponents.Analog.Interfaces.TwoPort
Usage
ElectricalComponents.Analog.Basic.VCV(gain=1)
Parameters:
| Name | Description | Units | Default value |
|---|---|---|---|
gain | Voltage gain | – | 1 |
Connectors
p1- This connector represents an electrical pin with voltage and current as the potential and flow variables, respectively. (Pin)n1- This connector represents an electrical pin with voltage and current as the potential and flow variables, respectively. (Pin)p2- This connector represents an electrical pin with voltage and current as the potential and flow variables, respectively. (Pin)n2- This connector represents an electrical pin with voltage and current as the potential and flow variables, respectively. (Pin)
Variables
| Name | Description | Units |
|---|---|---|
v1 | Voltage drop of port 1 (= p1.v - n1.v) | V |
v2 | Voltage drop of port 2 (= p2.v - n2.v) | V |
i1 | Current flowing from pos. to neg. pin of port 1 | A |
i2 | Current flowing from pos. to neg. pin of port 2 | A |
Behavior
Source
"""
Linear voltage-controlled voltage source.
The right port voltage is controlled by the left port voltage:math v_2 = v_1 \cdot \text
The left port current is zero (infinite input impedance).
Corresponds to `Modelica.Electrical.Analog.Basic.VCV`.
"""
component VCV
extends ElectricalComponents.Analog.Interfaces.TwoPort
"Voltage gain"
parameter gain::Real = 1
relations
v2 = v1 * gain
i1 = 0
metadata {
"Dyad": {
"labels": [{"label": "$(instance)", "x": 500, "y": 1100, "rot": 0}],
"icons": {"default": "dyad://ElectricalComponents/VCV.svg"}
}
}
endFlattened Source
"""
Linear voltage-controlled voltage source.
The right port voltage is controlled by the left port voltage:math v_2 = v_1 \cdot \text
The left port current is zero (infinite input impedance).
Corresponds to `Modelica.Electrical.Analog.Basic.VCV`.
"""
component VCV
"Positive electrical pin of port 1"
p1 = Pin() {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": -40, "y1": -40, "x2": 60, "y2": 60, "rot": 0}
},
"tags": []
}
}
"Negative electrical pin of port 1"
n1 = Pin() {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": -40, "y1": 940, "x2": 60, "y2": 1040, "rot": 0}
},
"tags": []
}
}
"Positive electrical pin of port 2"
p2 = Pin() {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": 960, "y1": -40, "x2": 1060, "y2": 60, "rot": 0}
},
"tags": []
}
}
"Negative electrical pin of port 2"
n2 = Pin() {
"Dyad": {
"placement": {
"diagram": {"iconName": "default", "x1": 960, "y1": 950, "x2": 1060, "y2": 1050, "rot": 0}
},
"tags": []
}
}
"Voltage drop of port 1 (= p1.v - n1.v)"
variable v1::Voltage
"Voltage drop of port 2 (= p2.v - n2.v)"
variable v2::Voltage
"Current flowing from pos. to neg. pin of port 1"
variable i1::Current
"Current flowing from pos. to neg. pin of port 2"
variable i2::Current
"Voltage gain"
parameter gain::Real = 1
relations
v1 = p1.v - n1.v
v2 = p2.v - n2.v
i1 = p1.i
i2 = p2.i
0 = p1.i + n1.i
0 = p2.i + n2.i
v2 = v1 * gain
i1 = 0
metadata {
"Dyad": {
"labels": [{"label": "$(instance)", "x": 500, "y": 1100, "rot": 0}],
"icons": {"default": "dyad://ElectricalComponents/VCV.svg"}
}
}
endTest Cases
No test cases defined.