finesse.tracing.tree.TraceTree¶
Overview
- class finesse.tracing.tree.TraceTree(node, dependency)¶
- Bases: - object- A binary tree data structure representing all the beam tracing paths from some root optical node of a model. - Each instance of this class has a left and right sub-tree (of the class type) and a parent tree. These linked tree attributes can be None. If the tree has a left / right sub-tree then the memoryviews left_abcd_x, left_abcd_y etc. will be initialised from the numerical ABCD matrix from the tree’s optical node to the next tree’s optical node. - Every sub-tree has a dependency attribute which is the object that the trace tree depends on - either a - Cavityor a- Gaussinstance.
Methods
| 
 | |
| 
 | Add a left sub-tree to the tree. | 
| 
 | Add a right sub-tree to the tree. | 
| 
 | |
| 
 | Whether the tree contains the specified object, determined recursively. | 
| 
 | |
| 
 | Recursively search for the TraceTree corresponding to the optical node. | 
| 
 | Construct a TraceTree from a cavity instance. | 
| 
 | Construct a TraceTree from an optical node root. | 
| 
 | Construct a TraceTree from a list of optical nodes. | 
| 
 | Retrieve a set consisting of all the  | 
| Retrieve a list of each TraceTree, from here, which is changing. | |
| Retrieves a list of the final input optical nodes within the tree. | |
| Finds the final left sub-tree from this tree node. | |
| Obtain a list of all the node couplings corresponding to self-reflections. | |
| 
 | |
| 
 | |
| 
 | Removes the left sub-tree and returns it. | 
| 
 | Removes the right sub-tree and returns it. | 
| 
 | Trace the beam through the source tree. | 
| 
 | Trims branches from the tree starting at any optical node in nodes. |