API Reference

state_space.liapunovTool.cli

Command-line interface for state_space.liapunovTool.

The CLI preserves the original Lyapunov-tool subcommands:

  • ct

  • dt

  • example

It also adds a sphinx-skel helper for generating a conservative, GitHub Pages friendly Sphinx documentation skeleton.

state_space.liapunovTool.cli.build_parser()[source]

Build the command-line parser.

Return type:

ArgumentParser

state_space.liapunovTool.cli.main(argv=None)[source]

Run the liapunovTool command-line interface.

Parameters:

argv (list[str] | None)

Return type:

int

state_space.liapunovTool.apis

class state_space.liapunovTool.apis.RunRequest(mode: 'Mode', A: 'Optional[str]' = None, G: 'Optional[str]' = None, Q: 'Optional[str]' = None, hermitian: 'bool' = False, digits: 'int' = 6, evalf: 'Optional[int]' = None, latex: 'bool' = False, latex_out: 'Optional[str]' = None, which: 'Optional[str]' = None)[source]

Bases: object

Parameters:
  • mode (Literal['ct', 'dt', 'example'])

  • A (str | None)

  • G (str | None)

  • Q (str | None)

  • hermitian (bool)

  • digits (int)

  • evalf (int | None)

  • latex (bool)

  • latex_out (str | None)

  • which (str | None)

A: str | None = None
G: str | None = None
Q: str | None = None
digits: int = 6
evalf: int | None = None
hermitian: bool = False
latex: bool = False
latex_out: str | None = None
mode: Literal['ct', 'dt', 'example']
which: str | None = None
class state_space.liapunovTool.apis.RunResult(mode: 'Mode', hermitian: 'bool', P: 'sp.Matrix', pd_class: 'str', latex_text: 'Optional[str]' = None, meta: 'Dict[str, Any]' = None)[source]

Bases: object

Parameters:
  • mode (Literal['ct', 'dt', 'example'])

  • hermitian (bool)

  • P (sympy.Matrix)

  • pd_class (str)

  • latex_text (str | None)

  • meta (Dict[str, Any])

P: sympy.Matrix
hermitian: bool
latex_text: str | None = None
meta: Dict[str, Any] = None
mode: Literal['ct', 'dt', 'example']
pd_class: str

state_space.liapunovTool.app

class state_space.liapunovTool.app.LyapunovApp[source]

Bases: object

High-level orchestrator: parse → solve → classify → (optional) save LaTeX.

run(req)[source]
Parameters:

req (RunRequest)

Return type:

RunResult

state_space.liapunovTool.core

class state_space.liapunovTool.core.LyapunovSolver[source]

Bases: object

static solve_ct(A, Q, hermitian)[source]
Parameters:
  • A (sympy.Matrix)

  • Q (sympy.Matrix)

  • hermitian (bool)

Return type:

sympy.Matrix

static solve_dt(G, Q, hermitian)[source]
Parameters:
  • G (sympy.Matrix)

  • Q (sympy.Matrix)

  • hermitian (bool)

Return type:

sympy.Matrix

class state_space.liapunovTool.core.PBuilder[source]

Bases: object

static build(n, hermitian)[source]
Parameters:
  • n (int)

  • hermitian (bool)

Return type:

PUnknown

class state_space.liapunovTool.core.PDClassifier[source]

Bases: object

static sylvester_pd(P, digits=16)[source]
Parameters:
  • P (sympy.Matrix)

  • digits (int)

Return type:

str

class state_space.liapunovTool.core.PUnknown(P: 'sp.Matrix', unknowns: 'List[sp.Symbol]')[source]

Bases: object

Parameters:
  • P (sympy.Matrix)

  • unknowns (List[sympy.Symbol])

P: sympy.Matrix
unknowns: List[sympy.Symbol]

state_space.liapunovTool.io

state_space.liapunovTool.io.out_path(default_dir, name)[source]
Parameters:
  • default_dir (str)

  • name (str)

Return type:

str

state_space.liapunovTool.io.parse_matrix(s)[source]
Parameters:

s (str)

Return type:

sympy.Matrix

state_space.liapunovTool.io.parse_scalar(s)[source]
Parameters:

s (str)

state_space.liapunovTool.io.save_text(path, text)[source]
Parameters:
  • path (str)

  • text (str)

Return type:

None

state_space.liapunovTool.utils

state_space.liapunovTool.utils.timed(func)[source]
Parameters:

func (Callable[[...], Any])

Return type:

Callable[[…], Any]

state_space.liapunovTool.design

state_space.liapunovTool.design.fmt(obj)[source]
Return type:

str

state_space.liapunovTool.design.fmt_matrix(M)[source]
Parameters:

M (sympy.MatrixBase)

Return type:

str

state_space.liapunovTool.design.latex_block(lines)[source]
Parameters:

lines (List[str])

Return type:

str

state_space.liapunovTool.design.make_ct_latex(A, Q, P, hermitian)[source]
Parameters:
  • A (sympy.Matrix)

  • Q (sympy.Matrix)

  • P (sympy.Matrix)

  • hermitian (bool)

Return type:

str

state_space.liapunovTool.design.make_dt_latex(G, Q, P, hermitian)[source]
Parameters:
  • G (sympy.Matrix)

  • Q (sympy.Matrix)

  • P (sympy.Matrix)

  • hermitian (bool)

Return type:

str

state_space.liapunovTool.design.sone(expr)[source]
Return type:

str