lynx.blocks.TransferFunctionBlock

class lynx.blocks.TransferFunctionBlock[source]

Bases: Block

Transfer function block with numerator and denominator polynomials.

Parameters:
  • num – Coefficients of numerator polynomial (highest degree first)

  • den – Coefficients of denominator polynomial (highest degree first)

Example

H(s) = (s + 2) / (s^2 + 3s + 2) num = [1, 2] den = [1, 3, 2]

Ports:

Input: in (single input) Output: out (single output)

Methods

__init__(id, num, den[, position, label])

Initialize transfer function block.

add_parameter(name, value[, expression])

Add a parameter to the block.

add_port(port_id, port_type[, label])

Add a port to the block.

get_parameter(name)

Get parameter value by name.

get_ports()

Get all ports as dictionaries.

is_input_marker()

Check if this is an input marker block.

is_output_marker()

Check if this is an output marker block.

set_parameter(param_name, value)

Update block parameter and sync to parent diagram.

to_dict()

Serialize block to dictionary for JSON export.

__init__(id: str, num: List[float], den: List[float], position: Dict[str, float] | None = None, label: str | None = None) None[source]

Initialize transfer function block.

Parameters:
  • id – Unique block identifier

  • num – Numerator polynomial coefficients

  • den – Denominator polynomial coefficients

  • position – Optional {x, y} position on canvas

  • label – Optional user-facing label (defaults to id)