Skip to content

Integration corrections are inconsistent #79

Description

@tifuchs

Issue

The configuration of the corrections for structure factor determination are now living in a shared dialog.

It is not consistent and obvious where corrections are applied.

  1. Stationary integration: ok. Always apply all selected correction factors
  2. Rocking integration: Here is where we run into issues: Almost all correction factors can be applied at two positions:
    a. during rocking curve generation (solid angle must be applied here, but everything else could be applied later)
    b. during rocking curve integration: Anything not applied here should be applied. Lorentz rocking factors must be applied here.

Saving all correction factors in the ro curves is not desirable as the data structures become large quickly (~1 GB compressed per CTR without saving all correction factors)

Suggested ordering

If selected in the dialog apply:

  1. During image integration:
    a. Always solid angle
    b. Polarization
    c. Footprint correction
    d. Stationary Lorentz if stationary integration
    e. Only if a new specific override is selected: Stationary Lorentz for rocking curve generation (hkl rocking and Bragg rocking).

  2. During rocking curve integration:
    a. Rocking scan Lorentz
    b. Footprint correction (if not yet applied!)
    c. Polarization (if not yet applied!)

Safety metadata

To facilitate correct ordering of the correction factors we must add new metadata to the generated scans.
Add a dict that contains the currently applied correction factors. Add a metadata version number.

Integration handlers must ensure that correction factors are never applied twice!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    PhysicsIssues related to physicsbugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions