finesse.symbols.Function¶
Overview
- class finesse.symbols.Function(name, operation, *args)[source]¶
- Bases: - Symbol- This is a symbol to represent a mathematical function. This could be a simple addition, or a more complicated multi-argument function. - It supports creating new mathematical operations: - import math import cmath cos = lambda x: finesse.symbols.Function("cos", math.cos, x) sin = lambda x: finesse.symbols.Function("sin", math.sin, x) atan2 = lambda y, x: finesse.symbols.Function("atan2", math.atan2, y, x) - Complex math can also be used: - import numpy as np angle = lambda x: finesse.symbols.Function("angle", np.angle, x) print(f"{angle(1+1j)} = {angle(1+1j).eval()}") - Parameters:
- namestr
- The operation name. This is used for dumping operations to kat script. 
- operationcallable
- The function to pass the arguments of this operation to. 
 
- Other Parameters:
- *args
- The arguments to pass to operation during a call. 
 
 
Properties
| Whether the operation contains any unresolved symbols. | 
Methods
| 
 | |
| 
 | Evaluates the operation. |