ess.reduce.polarization.correction#

Functions

CorrectionWorkflow([half_polarized])

Create a workflow for polarization correction.

HalfPolarizedWorkflow(*, polarizer_workflow)

Create a half-polarized workflow, i.e, with a polarizer but no analyzer.

PolarizationAnalysisWorkflow(*, ...)

Create a polarization analysis workflow.

compute_half_polarized_corrected_data(...)

Apply half-polarized correction coefficients to one measured spin channel.

compute_half_polarized_correction(*, ...)

Combine the polarizer correction and flipper correction for a half-polarized workflow.

compute_polarization_corrected_data(channel, ...)

Apply polarization-correction coefficients to one measured spin channel.

compute_polarization_correction(*, analyzer, ...)

Compute columns of combined correction coefficients for polarizer and analyzer.

compute_polarizing_element_correction(...)

Compute matrix coefficients for the correction of a polarizing element.

make_spin_flipping_matrix_down(efficiency)

Create the inverse flipper matrix for the spin-down flipper state.

make_spin_flipping_matrix_up(efficiency)

Create the inverse flipper matrix for the spin-up flipper state.

sum_polarization_contributions(upup, updown, ...)

Sum flipper-state contributions into spin-state channels.

Classes

InverseFlipperMatrix(efficiency, swap)

Inverse flipper matrix for a polarizing element.