andes.core.block.LeadLag2ndOrd#

class andes.core.block.LeadLag2ndOrd(u, T1, T2, T3, T4, zero_out=False, name=None, tex_name=None, info=None)[source]#

Second-order lead-lag transfer function block.

     ┌──────────────────┐
     │ 1 + sT3 + s^2 T4 │
u -> │ ──────────────── │ -> y
     │ 1 + sT1 + s^2 T2 │
     └──────────────────┘

Exports two internal states (x1 and x2) and output algebraic variable y.

Parameters:
uBaseVar or BaseParam

Input signal.

T1BaseParam

Denominator first-order time constant.

T2BaseParam

Denominator second-order time constant. Also used as the t_const of the internal state x1.

T3BaseParam

Numerator first-order time constant.

T4BaseParam

Numerator second-order time constant.

zero_outbool, optional

If True, bypass the block as y = u when T2 <= 0. Default is False.

__init__(u, T1, T2, T3, T4, zero_out=False, name=None, tex_name=None, info=None)[source]#

Methods

define()

Notes

enforce_tex_name(fields)

Enforce tex_name is not None

export()

Method for exporting instances defined in this class in a dictionary.

f_numeric(**kwargs)

Function call to update differential equation values.

g_numeric(**kwargs)

Function call to update algebraic equation values.

j_numeric(**kwargs)

Per-iteration numerical Jacobian update.

j_reset()

Helper function to clear the lists holding the numerical Jacobians.

j_setup()

One-time Jacobian sparsity pattern and constant value setup.

Attributes

class_name

Return the class name.