finesse.simulations.graph.tools.expression_tuple_to_symbolic¶
- finesse.simulations.graph.tools.expression_tuple_to_symbolic(expr, optical_equations)[source]¶
Converts an expression tuple to a symbolic expression using the provided optical equations.
- Parameters
- exprtuple
The expression tuple to be converted.
- optical_equationsdict
A dictionary containing the optical equations.
- Returns
- finesse.symbols.Symbol
The simplified symbolic expression.
Notes
This function recursively converts an expression tuple into a symbolic expression using the provided optical equations. The expression tuple can contain operators such as ‘+’ and ‘*’, and operands that are either symbols or values. The optical equations dictionary maps symbols to their corresponding symbolic expressions.
Examples
>>> from finesse.symbols import Variable >>> optical_equations = {'a': Variable('a'), 'b': Variable('b')} >>> expr = ('+', ('*', 'a', 2), ('*', 'b', 3)) >>> expression_tuple_to_symbolic(expr, optical_equations) 2*a + 3*b