wofry.propagator package

Subpackages

Submodules

wofry.propagator.decorators module

Abstract decorator classes for wofry wavefront propagators.

class wofry.propagator.decorators.WavefrontDecorator[source]

Bases: object

classmethod fromGenericWavefront(wavefront)[source]
get_dimension()[source]
toGenericWavefront()[source]

wofry.propagator.polarization module

Polarization state constants for wofry wavefronts (SIGMA, PI, TOTAL).

class wofry.propagator.polarization.Polarization[source]

Bases: object

PI = 1
SIGMA = 0
TOTAL = 3

wofry.propagator.propagator module

Core wofry propagator infrastructure: Propagator, PropagationManager, and PropagationParameters.

class wofry.propagator.propagator.AbstractPropagator[source]

Bases: object

do_propagation(parameters=<wofry.propagator.propagator.PropagationParameters object>)[source]
get_dimension()[source]
get_handler_name()[source]
is_handler(handler_name)[source]
class wofry.propagator.propagator.PropagationApplication[source]

Bases: object

ALL = 'All'
class wofry.propagator.propagator.PropagationElements[source]

Bases: object

INSERT_AFTER = 0
INSERT_BEFORE = 1
add_beamline_element(beamline_element=<syned.beamline.beamline_element.BeamlineElement object>, element_parameters=None)[source]
add_beamline_elements(beamline_elements=[], element_parameters_list=None)[source]
get_propagation_element(index)[source]
get_propagation_element_parameter(index)[source]
get_propagation_elements()[source]
get_propagation_elements_number()[source]
get_propagation_elements_parameters()[source]
insert_beamline_element(index, new_element=<syned.beamline.beamline_element.BeamlineElement object>, mode=1, new_element_parameters=None)[source]
class wofry.propagator.propagator.PropagationMode[source]

Bases: object

STEP_BY_STEP = 0
WHOLE_BEAMLINE = 1
class wofry.propagator.propagator.PropagationParameters(wavefront=<wofry.propagator.wavefront.Wavefront object>, propagation_elements=<wofry.propagator.propagator.PropagationElements object>, **additional_parameters)[source]

Bases: object

get_PropagationElements()[source]
get_additional_parameter(key)[source]
get_wavefront()[source]
has_additional_parameter(key)[source]
set_additional_parameters(key, value)[source]
class wofry.propagator.propagator.Propagator[source]

Bases: AbstractPropagator

do_propagation(parameters=<wofry.propagator.propagator.PropagationParameters object>)[source]
do_specific_progation_after(wavefront, propagation_distance, parameters, element_index=None)[source]
do_specific_progation_before(wavefront, propagation_distance, parameters, element_index=None)[source]
get_additional_parameter(parameter_name, default_value, propagation_parameters, element_index=None)[source]
class wofry.propagator.propagator.Propagator1D[source]

Bases: Propagator

do_propagation(parameters=<wofry.propagator.propagator.PropagationParameters object>)[source]
get_dimension()[source]
class wofry.propagator.propagator.Propagator2D[source]

Bases: Propagator

do_propagation(parameters=<wofry.propagator.propagator.PropagationParameters object>)[source]
get_dimension()[source]

wofry.propagator.wavefront module

Abstract base classes for wofry wavefronts (Wavefront, WavefrontDimension).

class wofry.propagator.wavefront.Wavefront[source]

Bases: object

Abstract base class for all wofry wavefronts.

Concrete subclasses must implement get_dimension() and duplicate(). Serialisation to/from a hex string is provided via pickle.

duplicate()[source]

Return a deep copy of this wavefront.

classmethod from_hex_tring(hex_string)[source]

Deserialise a wavefront from a hex string produced by to_hex_tring().

Parameters:

hex_string (str) – Hex-encoded pickle bytes.

Returns:

Reconstructed wavefront instance.

Return type:

Wavefront

get_dimension()[source]

Return the wavefront dimension (‘1’ or ‘2’).

Returns:

WavefrontDimension.ONE or WavefrontDimension.TWO.

Return type:

str

to_hex_tring()[source]

Serialise the wavefront to a hex string via pickle.

Returns:

Hex-encoded pickle bytes.

Return type:

str

class wofry.propagator.wavefront.WavefrontDimension[source]

Bases: object

Constants identifying the spatial dimension of a wavefront.

ONE = '1'
TWO = '2'

Module contents