finesse.tracing.ctracer.TraceTree.from_node

TraceTree.from_node(type cls, node, dependency, bool symmetric, pre_node=None, bool is_gauss=False, list exclude=None)

Construct a TraceTree from an optical node root.

The resulting tree includes all optical node paths traced forward from node.

Parameters

node : OpticalNode

The root node.

dependency : Cavity or Gauss

The dependency object - i.e. what the trace sub-trees depend on.

symmetric : bool

Flag indicating whether the tree should be constructed assuming that opposite node beam parameters will be set via the reverse of the original node beam parameter (true indicates this will be the case). In practice, this means that the resultant tree will not include any duplicate ports.

pre_node : OpticalNode, optional; default: None

An optional node to add before the root for the root sub-tree.

is_gauss : bool, optional; default: False

Whether the root node is a gauss node or not.

Returns

tree : TraceTree

The tree of all paths from node.