ewokstomo.tasks.energycalculation.ComputeWigglerSpectrum#

class ewokstomo.tasks.energycalculation.ComputeWigglerSpectrum(inputs=None, varinfo=None, node_id=None, node_attrs=None, execinfo=None, profile_directory=None)[source]#

Bases: Task

Compute a wiggler spectrum on an aperture using xoppy_calc_wiggler_on_aperture.

Inputs (units):
  • PHOT_ENERGY_MIN / PHOT_ENERGY_MAX (eV), NPOINTS (int).

  • ENERGY (GeV), CURRENT (mA).

  • FIELD, NPERIODS (int), ULAMBDA (m), K (–), NTRAJPOINTS (int), FILE (str).

  • SLIT_*: distances in m/mm per name; flags as ints.

  • SHIFT_X_VALUE (m), SHIFT_BETAX_VALUE (rad).

  • TRAJ_RESAMPLING_FACTOR, SLIT_POINTS_FACTOR (floats), LOG_CHOICE (0/1).

Outputs:
  • energy_eV (eV), sorted ascending.

  • flux (phot/s/0.1%bw) as returned by XOPPY.

  • spectral_power (W/eV).

  • cumulated_power (W).

Parameters:
run()[source]#

To be implemented by the derived classes