PaNOSC-ViNYL / SimEx

Start-to-end photon experiment simulation platform
https://simex.readthedocs.io/
GNU General Public License v3.0
26 stars 25 forks source link

Unified units in simex_platform #152

Open CFGrote opened 6 years ago

CFGrote commented 6 years ago

Some SimEx classes use the python module pint to handle physical units (e.g. "meter") and constants ( e.g. the elementary charge "e"). Examples are the DetectorGeometry class, DetectorPanel class, PhotonBeamParameters, and Parameters and Calculators that make use of the former.

The goal is to update all SimEx classes to use the pint module.

As a sequel, one would then update IO to make use of the same concept.

Pint :beer: Resources

n01r commented 6 years ago

Did you already compile a list of Parameter and Calculator objects that need to be adapted to use pint?

CFGrote commented 5 years ago

Go through this list of calculators and define action needed

Calculator Action needed Status
AbstractBaseCalculator.py [ ]
AbstractPhotonDetector.py [ ]
AbstractPhotonDiffractor.py [ ]
AbstractPhotonInteractor.py [ ]
AbstractPhotonPropagator.py [ ]
ComptonScatteringCalculator.py [ ]
CrystFELPhotonDiffractor.py [ ]
EMCCaseGenerator.py [ ]
EstherPhotonMatterInteractor.py [ ]
FEFFPhotonMatterInteractor.py [ ]
IdealPhotonDetector.py [ ]
PlasmaXRTSCalculator.py open
SingFELPhotonDiffractor.py [ ]
XCSITPhotonDetector.py [ ]
XFELPhotonPropagator.py [ ]
XMDYNDemoPhotonMatterInteractor.py [ ]
XMDYNPhotonMatterInteractor.py [ ]
CFGrote commented 5 years ago

Go through this list of parameters and define action needed

Parameter class Action needed Status
EstherPhotonMatterInteractorParameters.py [ ]
FEFFPhotonMatterInteractorParameters.py [ ]
PhotonBeamParameters.py,imported [ ]
PhotonMatterInteractorParameters.py [ ]
PlasmaXRTSCalculatorParameters.py [ ]
SingFELPhotonDiffractorParameters.py [ ]
WavePropagatorParameters.py [ ]
XCSITPhotonDetectorParameters.py [ ]