finesse.solutions.beamtrace.AstigmaticPropagationSolution.plot

AstigmaticPropagationSolution.plot(*args, filename=None, show=True, ignore=None, name_xoffsets=None, name_yoffsets=None, ylims=None, npts=1000, resolution='equal', subs=None)[source]

Plot any combination of the beam sizes, accumulated Gouy phases and / or wavefront curvatures over the propagated path, showing the values for both planes.

The expected, valid positional arguments are any combination of:
  • “beamsize”,

  • “gouy”,

  • “curvature”,

or “all” to plot all of the above.

If no positional args are given then the beamsize (first axis) and accumulated Gouy phase (second axis) will be plotted by default.

Note

The resulting figure will be divided into two columns, the first giving the absolute quantity values for both planes and the second giving the difference between the quantities in the two planes (tangential plane minus sagittal plane).

For beam size plots, the tangential plane values are shown in red whilst sagittal are shown in blue. Whilst for any other quantity, the tangential plane values are solid lines and sagittal are dashed lines.

The locations of each component will be marked on the figure, unless the component is in ignore or the component has “AR” or “HR” in its name.

Parameters

filename : str or file-like, optional

Name of a file or existing file object to save the figure to.

show : bool, optional; default: True

Whether to show the figure.

ignore : component, sequence of, optional

A component or sequence of components to ignore when making markers.

name_xoffsets : dict, optional

Dictionary of component names to x-axis offsets for shifting where the component name text is placed. The offset value is interpreted in terms of data co-ordinates.

name_yoffsets : dict, optional

Dictionary of component names to y-axis offsets for shifting where the component name text is placed. The offset value is interpreted in terms of data co-ordinates.

ylims : dict, optional

Dictionary of target names (i.e. “beamsize”, “gouy” or “curvature”) to manual axis y-limits.

npts : int, optional; default: 1000

See equivalent argument in PropagationSolution.all_segments().

resolution : str, optional; default: “equal”

See equivalent argument in PropagationSolution.all_segments().

subs : dict, optional

A dictionary of model parameter to value substitutions to pass to the eval methods of symbolic expressions.

If this solution object is not symbolic then this argument is ignored.

Returns

fig : Figure

Handle to the figure.

axs : axes

The axis handles.