Beam propagation tools for use outside of a simulation context.

The recommended function for most use-cases is propagate_beam() (and propagate_beam_astig() for astigmatic beam propagations) which traces a beam through a specified path of a model. See Beam propagation for details and examples.


acc_gouy([from_node, to_node, via_node, ...])

Computes the accumulated Gouy phase along a specified path.

compute_abcd([from_node, to_node, via_node, ...])

Computes the composite ABCD matrix through a given path.

compute_cavity_mismatches(model[, cav1, cav2])

Computes the mismatch parameter (see BeamParam.mismatch() for the equation) between cavities of the model.

propagate_beam([from_node, to_node, ...])

Propagates a beam through a specified path, returning dictionaries of the beam parameter at each node and component.

propagate_beam_astig([from_node, to_node, ...])

Propagates the beam through a specified path over both the tangential and sagittal planes.