finesse.components.mechanical.SuspensionTFPlant
¶
Overview
- class finesse.components.mechanical.SuspensionTFPlant(name, inputs, outputs, plant, connections_to=None)¶
Bases:
Connector
A customised suspension element that accepts arbitrary input and output nodes and a 2D array of control.TransferFunction objects that define a transfer function between each of them. See the Python Control package for more details on these.
Inputs and outputs must be named in the format port.name
Inputs must be unique to outputs
All plant transfer functions must have the same denominators
The mechanical port of other optical elements can be connected to this suspension by using the connections_to dictionary input. This takes the name of a port defined in this suspension and maps it to the mechanical port of another element.
The plant, inputs, and outputs cannot be changed once initialised. There is no KatScript interface for this component.
- Parameters
- namestr
Name of element
- inputsarray_like, list
Sequence of inputs for this plant, should be strings of the format port.node
- outputsarray_like, list
Sequence of outputs for this plant, should be strings of the format port.node
- plantarray_like, list[list]
A 2D array of control.TransferFunction that describe the transfer function between each input to every output. Shape should be [len(outputs), len(inputs)]. Elements can also be None which means no coupling between each transfer function.
- connections_todict[str: SignalNode], optional
Dict of port names at this suspension component and a mechanical port of some other element. Names of nodes at in each port should be identical. Keys of the dict should be in the format port.node. Values should be mechanical nodes of other elements.
Properties
Methods
|
|
|
Make a bode plot for a particular node coupling for this suspension. |