xrt 1.6.0__zip → 1.6.1__zip
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {xrt-1.6.0 → xrt-1.6.1}/MANIFEST.in +0 -1
- {xrt-1.6.0 → xrt-1.6.1}/PKG-INFO +21 -18
- {xrt-1.6.0 → xrt-1.6.1}/examples/withDummy/__init__.py +7 -3
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/__init__.py +57 -37
- xrt-1.6.1/examples/withRaycing/00_xRayCalculator/calc_undulator.py +118 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_undulator_tune.py +1 -1
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/synchrotronSources.py +33 -29
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/undulatorVortex.py +26 -18
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/__init__.py +22 -6
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/04_Lenses/crl_stack.py +5 -2
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/__init__.py +4 -2
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/__init__.py +19 -5
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/07_AnalyzerBent2D/01BD_SourceZCrystalThetaAlpha.py +3 -3
- xrt-1.6.1/examples/withRaycing/08_CLAESS_BL/__init__.py +58 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/09_Gratings/FZP.py +5 -3
- xrt-1.6.1/examples/withRaycing/09_Gratings/GratingFlexPES-turned.py +440 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/09_Gratings/__init__.py +22 -7
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/10_MultipleReflect/BentTaperedPolyCapillary.py +1 -1
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/10_MultipleReflect/__init__.py +31 -8
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/doubleSlitScan.py +9 -4
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/slitscan.py +4 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/waveFZP.py +8 -3
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/waveGrating.py +24 -19
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/waveMirrors.py +2 -0
- xrt-1.6.1/examples/withRaycing/13_Warping/ExampleOfSlopeErrorMapToParametricMirror.py +74 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/13_Warping/warp.py +3 -4
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/14_SoftiMAX/__init__.py +9 -2
- {xrt-1.6.0 → xrt-1.6.1}/setup.py +15 -18
- xrt-1.6.1/tests/raycing/RemoteOpenCLCalculation/__pycache__/__init__.cpython-312.pyc +0 -0
- xrt-1.6.1/tests/raycing/RemoteOpenCLCalculation/__pycache__/zmq_server.cpython-312.pyc +0 -0
- xrt-1.6.1/tests/raycing/_SynchrotronSources/MAX-IV-IDs-Flux.py +204 -0
- {xrt-1.6.0/examples/withRaycing/00_xRayCalculator → xrt-1.6.1/tests/raycing/_SynchrotronSources}/calc_undulator.py +7 -2
- xrt-1.6.1/tests/raycing/_SynchrotronSources/calc_undulator_power.py +41 -0
- xrt-1.6.1/tests/raycing/_SynchrotronSources/calc_undulator_tune.py +62 -0
- xrt-1.6.1/tests/raycing/_SynchrotronSources/synchrotronSourcesTests.py +839 -0
- xrt-1.6.1/tests/raycing/_SynchrotronSources/undulatorHamed.py +444 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/laguerre_hermite_gaussian_beam.py +1 -1
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_asymmetric_xtal.py +9 -3
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_backcattering_xtal_Shvydko.py +3 -0
- xrt-1.6.1/tests/raycing/test_ellipsoid_tube_mirror.py +150 -0
- xrt-1.6.1/tests/raycing/test_hyperboloid_tube_mirror.py +155 -0
- xrt-1.6.1/tests/raycing/test_materials.py +986 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_mosaic_xtal.py +42 -9
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_param_mirror.py +65 -20
- xrt-1.6.1/tests/raycing/test_pytte.py +372 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_undulator_convergence.py +15 -6
- {xrt-1.6.0 → xrt-1.6.1}/tests/speed/1_SourceZCrystalThetaAlpha_speed.py +4 -4
- {xrt-1.6.0 → xrt-1.6.1}/xrt/__init__.py +23 -34
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/__init__.py +69 -21
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/apertures.py +35 -19
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/coherence.py +30 -18
- xrt-1.6.1/xrt/backends/raycing/data/BrCo.npz +0 -0
- xrt-1.6.1/xrt/backends/raycing/data/Chantler.npz +0 -0
- xrt-1.6.1/xrt/backends/raycing/data/Henke.npz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/materials.py +86 -13
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/materials_compounds.py +4 -4
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/materials_crystals.py +33 -35
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/modes.py +2 -4
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/myopencl.py +16 -3
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/oes.py +441 -53
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/oes_base.py +81 -128
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/pyTTE_x/pyTTE_rkpy.py +81 -60
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/pyTTE_x/pyTTE_rkpy_qt.py +150 -11
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/pyTTE_x/ttcrystal.py +56 -39
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/run.py +2 -1
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/screens.py +2 -13
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/sources.py +34 -20
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/sources_geoms.py +2 -2
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/sources_sybase.py +9 -5
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/sources_synchr.py +36 -11
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/waves.py +32 -13
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/static/jquery.js +2 -2
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/qt.py +4 -1
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtBentXtal.py +86 -37
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtGlow/__init__.py +24 -20
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtGlow/notes.py +12 -8
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/__init__.py +64 -51
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/tutorial.py +39 -24
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQookStart.py +10 -3
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQookStart.pyw +9 -3
- {xrt-1.6.0 → xrt-1.6.1}/xrt/plotter.py +29 -16
- {xrt-1.6.0 → xrt-1.6.1}/xrt/runner.py +8 -7
- {xrt-1.6.0 → xrt-1.6.1}/xrt/version.py +2 -2
- {xrt-1.6.0 → xrt-1.6.1}/xrt.egg-info/PKG-INFO +21 -18
- {xrt-1.6.0 → xrt-1.6.1}/xrt.egg-info/SOURCES.txt +11 -94
- {xrt-1.6.0 → xrt-1.6.1}/xrt.egg-info/requires.txt +7 -0
- xrt-1.6.0/examples/withRaycing/08_CLAESS_BL/__init__.py +0 -50
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-15deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-15deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-15deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-15deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-30deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-30deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-30deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-30deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-45deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-45deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-45deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-45deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-60deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-60deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-60deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-60deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-75deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-75deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-75deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-75deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a0deg.xc.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a0deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a0deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a0deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a0deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a15deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a15deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a15deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a15deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a30deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a30deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a30deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a30deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a45deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a45deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a45deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a45deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a60deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a60deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a60deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a60deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a75deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a75deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a75deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a75deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a-30deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a-30deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a0deg.xc.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a30deg.xc.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a30deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a30deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a30deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a30deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-05deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-05deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-15deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-15deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-15deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-30deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-30deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-30deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-30deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-45deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-45deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-45deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-45deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-60deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-60deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-60deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-60deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-75deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-75deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-75deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a0deg.xc.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a0deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a0deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a0deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a0deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a15deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a15deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a30deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a30deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a45deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a45deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a60deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a60deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a75deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a75deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_Rinfm_a30deg.xc.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_Rinfm_a30deg_pp_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_Rinfm_a30deg_pp_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_Rinfm_a30deg_tt_pi.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_Rinfm_a30deg_tt_sigma.xcb.gz +0 -0
- xrt-1.6.0/tests/raycing/test_materials.py +0 -1540
- xrt-1.6.0/tests/raycing/test_pytte.py +0 -49
- xrt-1.6.0/xrt/backends/raycing/data/BrCo.npz +0 -0
- xrt-1.6.0/xrt/backends/raycing/data/Chantler.npz +0 -0
- xrt-1.6.0/xrt/backends/raycing/data/Henke.npz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/LICENSE.txt +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/README.txt +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withDummy/logo-python.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withDummy/logo_xrt.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withDummy/xrt_demo.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_absorption.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_bm.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_carbon_contamination.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_coated_mirror.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_crystal.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_crystal_dtheta.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_crystal_rocking_curve.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_mirror.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_multilayer.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_multilayer_E.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_multilayer_theta.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_slab.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_transmittivity.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_undulator_power.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/B-Hamed.xlsx +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/MAX-IV-IDs-Flux.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/U32TaperedScan.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/bionano3.dc0 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/fluxThroughAperture.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/my_arbitrary_field_test.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/thetaexafssc1an_zn_hgap_00002r2.fio.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/undulator-rays-near-wave-filament.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/undulatorHamed.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/undulatorHamed_fromField.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/undulatorTapering.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/undulatorTapering_zmq.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/3D/BalderBL.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/3D/traceBalderBL.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/BalderBL.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/BalderFlux.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/traceBalderBL.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/traceDCMBalderBL.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/traceFiltersBalderBL.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/traceMirrorPitchBalderBL.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/traceMirrorPitchBothBalderBL.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/traceMirrorRBalderBL.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/03_LaueMono/01_bentLaueSCM.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/03_LaueMono/02_bentLaueDCM_RC.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/03_LaueMono/03_bentLaue_material.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/03_LaueMono/03_polychromatic_focus.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/03_LaueMono/04_bentLaue2D_material.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/03_LaueMono/04_sagittal_bending.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/03_LaueMono/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/04_Lenses/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/04_Lenses/crl_individual.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/04_Lenses/crl_individual_3D.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/01_collimated_BR.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/02_collimated_LR.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/03_collimated_BT.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/04_collimated_LT.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/05_convergent_BT.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/06_convergent_LT.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/07_convergent_LT_slit.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/08_convergent_LT_bent.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/09_convergent_LT_bentSph.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/01B_BentTT.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/01B_SourceZCrystalThetaAlpha.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/01L_SourceZCrystalThetaAlpha.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/02_vonHamos.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/02_vonHamosElliptical.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/flux-dE.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/vonHamosPos.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/07_AnalyzerBent2D/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/08_CLAESS_BL/ClaessBL_N.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/08_CLAESS_BL/traceClaessBL_N.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/09_Gratings/BraggFresnel.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/09_Gratings/Grating.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/09_Gratings/GratingFlexPES.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/09_Gratings/efficiency1-LEG.txt +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/10_MultipleReflect/Cylinder.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/10_MultipleReflect/MontelMirror.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/11.6 DiffractionOnApertures.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/IMP_1st_1p11.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/IMP_2nd_1p11.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/LEG_1st_1p85.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/LEG_2nd_1p85.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/LaguerreGaussianBeam_SiemensStar.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/MEG_1st_1p48.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/MEG_2nd_1p48.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/apex175p9.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/coherentModePropagation.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/12_Multilayer/BalderDMM.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/12_Multilayer/traceDMM.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/13_Warping/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/13_Warping/mock_surface.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/14_SoftiMAX/Softi_CXIw1D.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/14_SoftiMAX/Softi_CXIw2D.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/14_SoftiMAX/Softi_STXMw1D.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/14_SoftiMAX/Softi_STXMw2D.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/15_XRD/P02_PD.xml +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/15_XRD/_images/rings_on_detector.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/15_XRD/xrd_mono.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/16_ParametricOptimization/16.1_autoOptimization_detuning.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/1crystal.xml +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/4crystals.xml +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/BioXAS_Main.xml +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_glow.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_p01.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_p02.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_p03a.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_p03b.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_p03c.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_p03d.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp01_glow.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp01_p01.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp02_glow.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp02_p01.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp02_p02.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp04_glow.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp04_p01.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp04_p02.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp04_p03.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp04_p04.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/lens1.xml +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/lens3.xml +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/testAlignment.xml +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/testGrating.xml +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withRaycing/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/00_simple.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/01_filters.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/02_VCM_stripes.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/CLAESS01-norefl.ws +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/CVDdiamond.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/Pt_refl.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/Rh_refl.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/Si111.rc +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/Si311.rc +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/Si_refl.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/effic.01 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/end.00 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/end.01 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/optax.01 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/shadow-source.bat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/shadow-source.sh +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/shadow-trace.bat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/shadow-trace.sh +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/shadowvui.bat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/start.00 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/start.01 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/systemfile.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xsh_bragg_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xsh_env_file.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xsh_epath_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xsh_input_source_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xsh_nphoton_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xsh_prerefl_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xshwig.par +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/03_DCM_energy.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/CLAESS-noVFM.ws +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/CVDdiamond.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/Rh_refl.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/Si111.rc +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/Si311.rc +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/effic.01 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/effic.02 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/effic.03 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/end.00 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/end.01 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/end.02 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/end.03 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/error_source.log +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/optax.01 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/optax.02 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/optax.03 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/output_source.log +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/shadow-source.bat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/shadow-source.sh +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/shadow-trace.bat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/shadow-trace.sh +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/start.00 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/start.01 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/start.02 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/start.03 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/start_old.02 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/systemfile.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xsh_env_file.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xsh_epath_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xsh_input_source_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xsh_mirinfo_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xsh_mirinfo_tmp.out +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xsh_nphoton_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xshwig.par +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/04_dE_VCM_bending.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/05_VFM_bending.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/06_mirrors_pitch.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/CLAESS.ws +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/CVDdiamond.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/Rh_refl.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/Si111.rc +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/effic.01 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/effic.02 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/effic.03 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/effic.04 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/end.00 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/end.01 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/end.02 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/end.03 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/end.04 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/optax.01 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/optax.02 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/optax.03 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/optax.04 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/shadow-source.bat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/shadow-source.sh +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/shadow-trace.bat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/shadow-trace.sh +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/start.00 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/start.01 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/start.02 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/start.03 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/start.04 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/start_old.02 +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/systemfile.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xsh_env_file.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xsh_epath_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xsh_input_source_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xsh_mirinfo_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xsh_mirinfo_tmp.out +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xsh_nphoton_tmp.inp +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xshwig.par +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/examples/withShadow/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/setup.cfg +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/convexHull.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/kde.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/CXRO-Reflectivities/CSiO2_p_rough1.CXRO.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/CXRO-Reflectivities/CSiO2_s_rough1.CXRO.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/CXRO-Reflectivities/RhSi_p_rough2.CXRO.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/CXRO-Reflectivities/RhSi_s_rough2.CXRO.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/CXRO-Reflectivities/WSi300id0.CXRO.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/CXRO-Reflectivities/WSi300id6.CXRO.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/IR/RefractiveIndexINFO_BK7.csv +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/IR/one_plate_test.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/IR/wedge_diamond.xml +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/RemoteOpenCLCalculation/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/RemoteOpenCLCalculation/queue_device.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/RemoteOpenCLCalculation/zmq_server.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Ag_absCoeff.xcrosssec.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Al_absCoeff.xcrosssec.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Au_absCoeff.xcrosssec.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Be_absCoeff.xcrosssec.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Diamond60mum.xpower.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Ni_absCoeff.xcrosssec.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Pt4mrad_p.xf1f2.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Pt4mrad_s.xf1f2.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Rh2mrad_p.xf1f2.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Rh2mrad_s.xf1f2.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/ScCr_ML_reflection_REFLEC.npy +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/ScCr_ML_transmission_REFLEC.npy +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Si05deg_p.xf1f2.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Si05deg_s.xf1f2.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/SiO205deg_p.xf1f2.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/SiO205deg_s.xf1f2.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/W25A_10kev_p.mlayer.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/W25A_10kev_s.mlayer.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/WSi100_45A40.mlayer.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/WSi45A04.mlayer.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/WSi45_100A40.mlayer.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Zn_absCoeff.xcrosssec.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/mLScCr-spph.mlayer.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/graphite002_mosaic04_03kev.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/graphite002_mosaic04_08kev.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/graphite002_mosaic04_17kev.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_-5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_-5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_-5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_-5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_0_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_0_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_0_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_0_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_5_p.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_5_p.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_5_s.xc.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_5_s.xin.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/info_opencl.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/misc/bessy.dc0.gz +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/read_NOM_maps.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_coherent_fraction_stack.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_crystals.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_ellipse_2.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_laue_bent.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_mosaic_xtal_thin.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_multilayer_transmission.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_oes.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_polygonal_aperture.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_sources.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_undulator_on_mesh.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/raycing/test_undulator_size.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/speed/2_synchrotronSources_speed.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/speed/3_Softi_CXIw2D_speed.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/tests/speed/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/dummy.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/OE.cl +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/data/AtomicData.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/data/f0_xop.dat +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/diffract.cl +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/materials.cl +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/materials_elemental.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/physconsts.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/pyTTE_x/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/pyTTE_x/crystal_vectors.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/pyTTE_x/deformation.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/pyTTE_x/elastic_tensors.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/pyTTE_x/legacy.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/pyTTE_x/pyTTE.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/pyTTE_x/quantity.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/pyTTE_x/rotation_matrix.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/pyTTE_x/ttscan.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/sources_beams.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/sources_legacy.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/stages.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/undulator.cl +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/xrt_complex_double.cl +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/raycing/xrt_complex_float.cl +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/backends/shadow.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/__init__.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/1-LEG_profile-adhoc.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/1-LEG_profile-default.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/ePos=0.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/ePos=1.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/ePos=2.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_glow.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_p01.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_p02.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_p03a.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_p03b.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_p03c.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_p03d.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/filterFootprint2_I400mum.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/filterFootprint2_I400mum_norm1.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/filterFootprint2_I400mum_norm2.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/invertColorMap=0_negative=0.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/invertColorMap=0_negative=1.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/invertColorMap=1_negative=0.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/invertColorMap=1_negative=1.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/negative=1+fullNegative.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/offset0.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/offset5000.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/outline00.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/outline05.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/outline10.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookSplash2.gif +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor01.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor02.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor03.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor04.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor05.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor06.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor07.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor08.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor09.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor10.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor11.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/layout.html +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/page.html +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/static/default.css_t +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/static/math_config_win32.js +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/static/utils.js +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/theme.conf +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/conf.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/ext.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/commons/gl.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtGlow/_icons/icon-GLow.ico +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/3dg_256.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/GPU4.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/add1.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/add2.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/add3.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/add4.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/add5.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/add6.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/dialog-information.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/dialog-question.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/eyeglasses7_128.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/filenew.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/fileopen.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/filesave.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/filesaveas.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/home.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/index.txt +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/light_bulb.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/logo-xrtQt.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/pythonscript.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/pythonscriptsave.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/pythonscriptsaveas.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/readme.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/run.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/xbcc.ico +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/xbcc.png +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/xrQt1.ico +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/kde.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/multipro.py +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt/xrt_logo.ico +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt.egg-info/dependency_links.txt +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt.egg-info/not-zip-safe +0 -0
- {xrt-1.6.0 → xrt-1.6.1}/xrt.egg-info/top_level.txt +0 -0
|
@@ -7,6 +7,15 @@ r"""
|
|
|
7
7
|
Diffraction from grating
|
|
8
8
|
------------------------
|
|
9
9
|
|
|
10
|
+
.. imagezoom:: _images/1-LEG_E-orders-tr1.*
|
|
11
|
+
:align: right
|
|
12
|
+
|
|
13
|
+
.. imagezoom:: _images/1-LEG_E-orders-x.*
|
|
14
|
+
:align: right
|
|
15
|
+
|
|
16
|
+
.. imagezoom:: _images/1-LEG_E-orders-z.*
|
|
17
|
+
:align: right
|
|
18
|
+
|
|
10
19
|
Various gratings described in [Boots]_ have been tested with xrt for
|
|
11
20
|
diffraction efficiency. The efficiency curves in [Boots]_ were calculated by
|
|
12
21
|
means of the code ``peg`` which provides almost identical results to those by
|
|
@@ -32,16 +41,6 @@ ray tracing approach. In that approach the rays were deflected according to the
|
|
|
32
41
|
grating equation. Here, in wave propagation, the grating equation was only used
|
|
33
42
|
to position the screen.
|
|
34
43
|
|
|
35
|
-
.. imagezoom:: _images/1-LEG_E-orders-tr1.*
|
|
36
|
-
|
|
37
|
-
\
|
|
38
|
-
|
|
39
|
-
.. imagezoom:: _images/1-LEG_E-orders-x.*
|
|
40
|
-
|
|
41
|
-
\
|
|
42
|
-
|
|
43
|
-
.. imagezoom:: _images/1-LEG_E-orders-z.*
|
|
44
|
-
|
|
45
44
|
Notice that in contrast to the conventional grating theories (also used in
|
|
46
45
|
``REFLEC``), the diffraction orders here have the sagittal dimension. And that
|
|
47
46
|
dimension has diffraction fringes and a variable width, too!
|
|
@@ -60,12 +59,16 @@ rapid low-energy decrease. It seems that the detector had a pinhole that might
|
|
|
60
59
|
cut the beam at low energies as the diffracted beam becomes wider there (see
|
|
61
60
|
the transverse pictures above), which may explain lower measured efficiency.
|
|
62
61
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
For the IMP grating ("impurity", see its properties in the figure below), the
|
|
62
|
+
For the IMP grating ("impurity", see its properties in the figure), the
|
|
66
63
|
difference is bigger.
|
|
67
64
|
|
|
68
|
-
|
|
65
|
+
+------------+------------+
|
|
66
|
+
| |greff1| | |greff2| |
|
|
67
|
+
+------------+------------+
|
|
68
|
+
|
|
69
|
+
.. |greff1| imagezoom:: _images/1-LEG_E-eff.*
|
|
70
|
+
.. |greff2| imagezoom:: _images/2-IMP_E-eff.*
|
|
71
|
+
:loc: upper-right-corner
|
|
69
72
|
|
|
70
73
|
We believe that ``REFLEC`` is essentially wrong at high energies. If we
|
|
71
74
|
mentally translate the working terraces of a blazed grating to form a
|
|
@@ -80,8 +83,13 @@ portion of the front side behind it stay in the shadow. We compare the two
|
|
|
80
83
|
gratings shown below, one is with 90 degree anti-blaze angle and the other is
|
|
81
84
|
with *pitch* as anti-blaze angle.
|
|
82
85
|
|
|
83
|
-
|
|
84
|
-
|
|
86
|
+
+------------+------------+
|
|
87
|
+
| |greff3| | |greff4| |
|
|
88
|
+
+------------+------------+
|
|
89
|
+
|
|
90
|
+
.. |greff3| imagezoom:: _images/1-LEG_profile-adhoc.*
|
|
91
|
+
.. |greff4| imagezoom:: _images/1-LEG_profile-anti.*
|
|
92
|
+
:loc: upper-right-corner
|
|
85
93
|
|
|
86
94
|
``REFLEC`` gives different efficiencies for these two cases (see above) whereas
|
|
87
95
|
xrt cannot distinguish them. We tried to artificially remove the shadows by
|
|
@@ -91,9 +99,6 @@ high-energy efficiency, similarly to the ``REFLEC``'s behaviour.
|
|
|
91
99
|
The factors which definitely will affect the efficiency are (1) restricted
|
|
92
100
|
coherence radius and (2) roughness. Both will be added into this example in a
|
|
93
101
|
later release of xrt.
|
|
94
|
-
|
|
95
|
-
We are open for further discussion on the above results with interested
|
|
96
|
-
scientists.
|
|
97
102
|
"""
|
|
98
103
|
#Set proper setting for the grating and comment/uncomment one of the three main
|
|
99
104
|
#invoked functions (at the very bottom).
|
|
@@ -18,12 +18,14 @@ difference in the calculated flux between the rays and the waves.
|
|
|
18
18
|
|
|
19
19
|
.. |mirrorWR| imagezoom:: _images/mirror-256-01flat-01-beamFSMrays_f.*
|
|
20
20
|
.. |mirrorWW| imagezoom:: _images/mirror-256-01flat-02-beamFSMwave_f.*
|
|
21
|
+
:loc: upper-right-corner
|
|
21
22
|
|
|
22
23
|
The flux losses are not due to the integration errors, as was proven by
|
|
23
24
|
variously dense meshes. The losses are solely caused by cutting the tails, as
|
|
24
25
|
proven by a wider image shown below.
|
|
25
26
|
|
|
26
27
|
.. imagezoom:: _images/mirror-256wide-01flat-02-beamFSMwave_f.*
|
|
28
|
+
:align: center
|
|
27
29
|
|
|
28
30
|
"""
|
|
29
31
|
__author__ = "Konstantin Klementiev", "Roman Chernikov"
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
__date__ = "20 Jan 2024"
|
|
3
|
+
# import sys
|
|
4
|
+
# sys.path.append(r"C:\Ray-tracing")
|
|
5
|
+
import numpy as np
|
|
6
|
+
from scipy import ndimage
|
|
7
|
+
# import pickle
|
|
8
|
+
|
|
9
|
+
import xrt.backends.raycing.oes as roe
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class EllipticalMirrorParamNOM(roe.EllipticalMirrorParam):
|
|
13
|
+
def __init__(self, *args, **kwargs):
|
|
14
|
+
kwargs = self.__pop_kwargs(**kwargs)
|
|
15
|
+
super().__init__(*args, **kwargs)
|
|
16
|
+
self.nom_read()
|
|
17
|
+
|
|
18
|
+
def __pop_kwargs(self, **kwargs):
|
|
19
|
+
self.waviness = kwargs.pop('figureError') # file name
|
|
20
|
+
return kwargs
|
|
21
|
+
|
|
22
|
+
def nom_read(self):
|
|
23
|
+
# here, the file self.waviness has this structure:
|
|
24
|
+
# x[mm] y[mm] z[nm]
|
|
25
|
+
# 30.00 29.75 -31.498373
|
|
26
|
+
# 30.50 29.75 -32.992258
|
|
27
|
+
# 31.00 29.75 -33.864061
|
|
28
|
+
# 31.50 29.75 -34.240630
|
|
29
|
+
# ...
|
|
30
|
+
xL, yL, zL = np.loadtxt(self.waviness, unpack=True)
|
|
31
|
+
nX = (yL == yL[0]).sum()
|
|
32
|
+
nY = (xL == xL[0]).sum()
|
|
33
|
+
x = xL[:nX]
|
|
34
|
+
y = yL[::nX]
|
|
35
|
+
z = zL.reshape((nY, nX))
|
|
36
|
+
dx = x[1] - x[0]
|
|
37
|
+
dy = y[1] - y[0]
|
|
38
|
+
b, a = np.gradient(z) # NOM x is along (our y) and y is across (our x)
|
|
39
|
+
# a, b = np.gradient(z) # NOM x is across and y is along
|
|
40
|
+
a = np.arctan(a/dy)
|
|
41
|
+
b = np.arctan(b/dx)
|
|
42
|
+
self.nom_rmsA = ((a**2).sum() / (nX * nY))**0.5
|
|
43
|
+
self.nom_rmsB = ((b**2).sum() / (nX * nY))**0.5
|
|
44
|
+
self.nom_splineZ = ndimage.spline_filter(z.T) * 1e-6 # mm to nm
|
|
45
|
+
self.nom_splineA = ndimage.spline_filter(a.T) * 1e-6 # rad to µrad
|
|
46
|
+
self.nom_splineB = ndimage.spline_filter(b.T) * 1e-6 # rad to µrad
|
|
47
|
+
self.nom_nX = nX
|
|
48
|
+
self.nom_nY = nY
|
|
49
|
+
self.nom_x = x
|
|
50
|
+
self.nom_y = y
|
|
51
|
+
|
|
52
|
+
def local_r_distorted(self, s, phi):
|
|
53
|
+
r = self.local_r(s, phi)
|
|
54
|
+
x, y, z = self.param_to_xyz(s, phi, r)
|
|
55
|
+
# if NOM x is along (our y) and y is across (our x):
|
|
56
|
+
coords = np.array([
|
|
57
|
+
(y/(self.nom_x[-1]-self.nom_x[0]) + 0.5) * (self.nom_nX-1),
|
|
58
|
+
(x/(self.nom_y[-1]-self.nom_y[0]) + 0.5) * (self.nom_nY-1)])
|
|
59
|
+
# coords.shape = (2, self.nrays)
|
|
60
|
+
z += ndimage.map_coordinates(self.nom_splineZ, coords, prefilter=True)
|
|
61
|
+
s1, phi1, r1 = self.xyz_to_param(x, y, z)
|
|
62
|
+
return r1 - r
|
|
63
|
+
|
|
64
|
+
def local_n_distorted(self, s, phi):
|
|
65
|
+
r = self.local_r(s, phi)
|
|
66
|
+
x, y, z = self.param_to_xyz(s, phi, r)
|
|
67
|
+
# if NOM x is along (our y) and y is across (our x):
|
|
68
|
+
coords = np.array([
|
|
69
|
+
(y/(self.nom_x[-1]-self.nom_x[0]) + 0.5) * (self.nom_nX-1),
|
|
70
|
+
(x/(self.nom_y[-1]-self.nom_y[0]) + 0.5) * (self.nom_nY-1)])
|
|
71
|
+
# coords.shape = (2, self.nrays)
|
|
72
|
+
a = ndimage.map_coordinates(self.nom_splineA, coords, prefilter=True)
|
|
73
|
+
b = ndimage.map_coordinates(self.nom_splineB, coords, prefilter=True)
|
|
74
|
+
return -a, -b
|
|
@@ -69,7 +69,6 @@ focusing case.
|
|
|
69
69
|
.. |warp_rtG| animation:: _images/warp_rtG
|
|
70
70
|
.. |warp_rtw| animation:: _images/warp_rtw
|
|
71
71
|
.. |warp_rtN| animation:: _images/warp_rtN
|
|
72
|
-
:loc: lower-left-corner
|
|
73
72
|
.. |warp_wp0| animation:: _images/warp_wp0
|
|
74
73
|
:loc: upper-right-corner
|
|
75
74
|
.. |warp_wpG| animation:: _images/warp_wpG
|
|
@@ -393,7 +392,7 @@ def define_plots(beamLine):
|
|
|
393
392
|
ePos=0, title='2-refl')
|
|
394
393
|
Rstr = '{0:.1f}km'.format(R*1e-6) if R < 1e19 else 'inf'
|
|
395
394
|
plotRefl.saveName = '{0}-{1}-R={2}.png'.format(prefix, iR, Rstr)
|
|
396
|
-
Rstr = '{0:.1f} km'.format(R*1e-6) if R < 1e19 else '$\infty$'
|
|
395
|
+
Rstr = '{0:.1f} km'.format(R*1e-6) if R < 1e19 else r'$\infty$'
|
|
397
396
|
plotRefl.textPanel = plotRefl.ax2dHist.text(
|
|
398
397
|
0.01, 0.01, 'R = {0}'.format(Rstr),
|
|
399
398
|
transform=plotRefl.ax2dHist.transAxes, size=12,
|
|
@@ -423,5 +422,5 @@ def main():
|
|
|
423
422
|
|
|
424
423
|
|
|
425
424
|
if __name__ == '__main__':
|
|
426
|
-
|
|
427
|
-
main()
|
|
425
|
+
see_the_bump()
|
|
426
|
+
# main()
|
|
@@ -5,6 +5,9 @@ r"""
|
|
|
5
5
|
SoftiMAX at MAX IV
|
|
6
6
|
------------------
|
|
7
7
|
|
|
8
|
+
.. imagezoom:: _images/softiMAX_layout.*
|
|
9
|
+
:align: right
|
|
10
|
+
|
|
8
11
|
The images below are produced by scripts in
|
|
9
12
|
``\examples\withRaycing\14_SoftiMAX``.
|
|
10
13
|
|
|
@@ -12,10 +15,11 @@ The beamline will have two branches:
|
|
|
12
15
|
- STXM (Scanning Transmission X-ray Microscopy) and
|
|
13
16
|
- CXI (Coherent X-ray Imaging),
|
|
14
17
|
|
|
15
|
-
see the scheme provided by
|
|
18
|
+
see the scheme provided by Karina Thånell.
|
|
16
19
|
|
|
17
|
-
..
|
|
20
|
+
.. raw:: html
|
|
18
21
|
|
|
22
|
+
<div class="clearer"> </div>
|
|
19
23
|
|
|
20
24
|
STXM branch
|
|
21
25
|
~~~~~~~~~~~
|
|
@@ -34,6 +38,7 @@ end (FE) slit, to M1, to M2 and to plane grating (PG) – is done with rays:
|
|
|
34
38
|
.. |st_rFE| imagezoom:: _images/stxm-2D-1-rays-0emit-0enSpread-monoE-00-FE.*
|
|
35
39
|
.. |st_rM1| imagezoom:: _images/stxm-2D-1-rays-0emit-0enSpread-monoE-01-M1local.*
|
|
36
40
|
.. |st_rM2| imagezoom:: _images/stxm-2D-1-rays-0emit-0enSpread-monoE-02-M2local.*
|
|
41
|
+
:loc: upper-right-corner
|
|
37
42
|
.. |st_rPG| imagezoom:: _images/stxm-2D-1-rays-0emit-0enSpread-monoE-02a-PGlocal.*
|
|
38
43
|
:loc: upper-right-corner
|
|
39
44
|
|
|
@@ -229,6 +234,7 @@ below. This is in contrast to *ray* propagation, where the angular ray
|
|
|
229
234
|
distribution is invariant at any position between two optical elements.
|
|
230
235
|
|
|
231
236
|
.. imagezoom:: _images/cxi_waveFronts.*
|
|
237
|
+
:align: center
|
|
232
238
|
|
|
233
239
|
.. rubric:: Rays, waves and hybrid
|
|
234
240
|
|
|
@@ -312,6 +318,7 @@ coherent fraction.
|
|
|
312
318
|
|
|
313
319
|
.. |cxi-coh1-0emit| animation:: _images/cxi-coh1-0emit
|
|
314
320
|
.. |cxi-coh1-non0e| animation:: _images/cxi-coh1-non0e
|
|
321
|
+
:loc: upper-right-corner
|
|
315
322
|
.. |cxi-coh3-0emit| animation:: _images/cxi-coh3-0emit
|
|
316
323
|
.. |cxi-coh3-non0e| animation:: _images/cxi-coh3-non0e
|
|
317
324
|
:loc: upper-right-corner
|
{xrt-1.6.0 → xrt-1.6.1}/setup.py
RENAMED
|
@@ -143,36 +143,26 @@ The primary purpose of xrtGlow is to demonstrate the alignment correctness
|
|
|
143
143
|
given the fact that xrtQook can automatically calculate several positional and
|
|
144
144
|
angular parameters.
|
|
145
145
|
|
|
146
|
-
|
|
146
|
+
Installation
|
|
147
147
|
------------
|
|
148
148
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
(these are search key words), pytools and pyopencl. PyQt4 or PyQt5 are needed
|
|
152
|
-
for xrtQook. Spyder (as library of Spyder IDE) is highly recommended for nicer
|
|
153
|
-
view of xrtQook. OpenGL is required for xrtGlow.
|
|
149
|
+
Install it by pip or conda or get xrt from `GitHub` and use it with or without
|
|
150
|
+
installation.
|
|
154
151
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
xrt is available as source distribution from `pypi.python.org
|
|
159
|
-
<https://pypi.python.org/pypi/xrt>`_ and from `GitHub
|
|
160
|
-
<https://github.com/kklmn/xrt>`_. The distribution archive also includes tests
|
|
161
|
-
and examples. The complete documentation is available online at
|
|
162
|
-
`Read the Docs <http://xrt.readthedocs.io>`_ and offline as
|
|
163
|
-
`zip file at GitHub <https://github.com/kklmn/xrt-docs>`_.
|
|
152
|
+
The distribution archive also includes tests and examples. The complete
|
|
153
|
+
documentation is available online on `Read the Docs` and offline as zip file on
|
|
154
|
+
GitHub`.
|
|
164
155
|
|
|
165
156
|
Get help
|
|
166
157
|
--------
|
|
167
158
|
|
|
168
|
-
For getting help and/or reporting a bug please use `GitHub xrt Issues
|
|
169
|
-
<https://github.com/kklmn/xrt/issues>`_.
|
|
159
|
+
For getting help and/or reporting a bug please use `GitHub xrt Issues`.
|
|
170
160
|
|
|
171
161
|
"""
|
|
172
162
|
|
|
173
163
|
setup(
|
|
174
164
|
name='xrt',
|
|
175
|
-
version='1.6.
|
|
165
|
+
version='1.6.1',
|
|
176
166
|
description='Ray tracing and wave propagation in x-ray regime, primarily '
|
|
177
167
|
'meant for modeling synchrotron sources, beamlines and '
|
|
178
168
|
'beamline elements. Includes a GUI for creating a beamline '
|
|
@@ -203,8 +193,15 @@ setup(
|
|
|
203
193
|
install_requires=['numpy>=1.8.0', 'scipy>=0.17.0', 'matplotlib>=2.0.0',
|
|
204
194
|
'sphinx>=1.6.2', 'sphinxcontrib-jquery', 'distro',
|
|
205
195
|
'colorama',
|
|
196
|
+
# GPU support
|
|
197
|
+
'pyopencl',
|
|
198
|
+
# glow support
|
|
199
|
+
'pyopengl', 'siphash24'
|
|
206
200
|
# 'openpyxl',
|
|
207
201
|
],
|
|
202
|
+
extras_require={
|
|
203
|
+
'pyqt5': ['pyqt5', 'PyQtWebEngine']
|
|
204
|
+
},
|
|
208
205
|
classifiers=['Development Status :: 5 - Production/Stable',
|
|
209
206
|
'Intended Audience :: Science/Research',
|
|
210
207
|
'Natural Language :: English',
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
import os, sys;
|
|
3
|
+
newCode = True
|
|
4
|
+
codePath = r"c:\github\xrt" if newCode else os.path.join('..', '..', '..')
|
|
5
|
+
sys.path.append(codePath)
|
|
6
|
+
#import matplotlib as mpl
|
|
7
|
+
import copy
|
|
8
|
+
import numpy as np
|
|
9
|
+
import matplotlib.pyplot as plt
|
|
10
|
+
try:
|
|
11
|
+
import xlwt
|
|
12
|
+
except ImportError:
|
|
13
|
+
xlwt = None
|
|
14
|
+
|
|
15
|
+
import xrt.backends.raycing as raycing
|
|
16
|
+
raycing._VERBOSITY_ = 80
|
|
17
|
+
import xrt.backends.raycing.sources as rs
|
|
18
|
+
from xrt.backends.raycing.physconsts import SIE0
|
|
19
|
+
|
|
20
|
+
suffix = '_new' if newCode else '_old'
|
|
21
|
+
withUndulator = True
|
|
22
|
+
#withUndulator = False
|
|
23
|
+
#withUrgentUndulator = True
|
|
24
|
+
withUrgentUndulator = False
|
|
25
|
+
#withSRWUndulator = True
|
|
26
|
+
withSRWUndulator = False
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def run(case):
|
|
30
|
+
eMax = 200100.
|
|
31
|
+
eN = 201
|
|
32
|
+
thetaMax, psiMax = 500e-6, 500e-6
|
|
33
|
+
if case == 'Balder':
|
|
34
|
+
Kmax = 8.446
|
|
35
|
+
# Kmax = 3
|
|
36
|
+
thetaMax, psiMax = 200e-6, 50e-6
|
|
37
|
+
# thetaMax, psiMax = 1130e-6/2, 1180e-6/2 # asked by Magnus
|
|
38
|
+
eMax, eN = 400100, 401
|
|
39
|
+
kwargs = dict(name='SoleilW50', eE=3.0, eI=0.5,
|
|
40
|
+
eEpsilonX=0.263, eEpsilonZ=0.008, betaX=9., betaZ=2.,
|
|
41
|
+
period=50., n=39, K=Kmax, eMax=eMax,
|
|
42
|
+
xPrimeMax=thetaMax*1e3, zPrimeMax=psiMax*1e3, distE='BW')
|
|
43
|
+
elif case == 'BioMAX & NanoMAX':
|
|
44
|
+
Kmax = 1.92
|
|
45
|
+
thetaMax, psiMax = 100e-6, 50e-6
|
|
46
|
+
kwargs = dict(name='IVU18.5', eE=3.0, eI=0.5,
|
|
47
|
+
eEpsilonX=0.263, eEpsilonZ=0.008, betaX=9., betaZ=2.,
|
|
48
|
+
period=18.5, n=108, K=Kmax, eMax=eMax,
|
|
49
|
+
xPrimeMax=thetaMax*1e3, zPrimeMax=psiMax*1e3, distE='BW')
|
|
50
|
+
elif case == 'Veritas' or case == 'Hippie':
|
|
51
|
+
thetaMax, psiMax = 100e-6, 50e-6
|
|
52
|
+
# thetaMax, psiMax = 100e-6, 200e-6 # asked by Magnus
|
|
53
|
+
# thetaMax, psiMax = 500e-6, 500e-6 # asked by Magnus
|
|
54
|
+
kwargs = dict(name='U48', eE=3.0, eI=0.5,
|
|
55
|
+
eEpsilonX=0.263, eEpsilonZ=0.008, betaX=9., betaZ=2.,
|
|
56
|
+
eMax=eMax,
|
|
57
|
+
xPrimeMax=thetaMax*1e3, zPrimeMax=psiMax*1e3, distE='BW')
|
|
58
|
+
if case == 'Veritas':
|
|
59
|
+
kwargs['period'] = 48.
|
|
60
|
+
kwargs['n'] = 81
|
|
61
|
+
kwargs['K'] = 4.51
|
|
62
|
+
if case == 'Hippie':
|
|
63
|
+
kwargs['period'] = 53.
|
|
64
|
+
kwargs['n'] = 73
|
|
65
|
+
kwargs['K'] = 5.28
|
|
66
|
+
|
|
67
|
+
sourceW = rs.Wiggler(**kwargs)
|
|
68
|
+
energy = np.linspace(100., eMax, eN)
|
|
69
|
+
theta = np.linspace(-1, 1, 101) * thetaMax
|
|
70
|
+
psi = np.linspace(-1, 1, 101) * psiMax
|
|
71
|
+
# theta = np.linspace(-1, 1, 15) * thetaMax
|
|
72
|
+
# psi = np.linspace(-1, 1, 15) * psiMax
|
|
73
|
+
dtheta, dpsi = theta[1] - theta[0], psi[1] - psi[0]
|
|
74
|
+
I0W = sourceW.intensities_on_mesh(energy, theta, psi)[0]
|
|
75
|
+
fluxW = I0W.sum(axis=(1, 2)) * dtheta * dpsi
|
|
76
|
+
dE = energy[1] - energy[0]
|
|
77
|
+
power = fluxW.sum()*dE*SIE0*1e3
|
|
78
|
+
print('total power = {} W'.format(power))
|
|
79
|
+
cumpower = np.cumsum(fluxW)*dE*SIE0*1e3 / power
|
|
80
|
+
ind = np.argwhere(cumpower > 0.5)[0]
|
|
81
|
+
y1, y2 = cumpower[ind-1], cumpower[ind]
|
|
82
|
+
x1, x2 = energy[ind-1], energy[ind]
|
|
83
|
+
Ec = (0.5*(x2-x1) - (y1*x2-y2*x1)) / (y2-y1)
|
|
84
|
+
print('Ec = {0} eV'.format(Ec))
|
|
85
|
+
|
|
86
|
+
if withUrgentUndulator:
|
|
87
|
+
ukwargs = copy.copy(kwargs)
|
|
88
|
+
del(ukwargs['distE'])
|
|
89
|
+
del(ukwargs['betaX'])
|
|
90
|
+
del(ukwargs['betaZ'])
|
|
91
|
+
ukwargs['eSigmaX'] = (kwargs['eEpsilonX']*kwargs['betaX']*1e3)**0.5
|
|
92
|
+
ukwargs['eSigmaZ'] = (kwargs['eEpsilonZ']*kwargs['betaZ']*1e3)**0.5
|
|
93
|
+
ukwargs['eMin'] = energy[0]
|
|
94
|
+
ukwargs['eMax'] = energy[-1]
|
|
95
|
+
ukwargs['eN'] = len(energy)-1
|
|
96
|
+
ukwargs['nx'] = len(theta)//2
|
|
97
|
+
ukwargs['nz'] = len(psi)//2
|
|
98
|
+
ukwargs['icalc'] = 3
|
|
99
|
+
sourceU = rs.UndulatorUrgent(**ukwargs)
|
|
100
|
+
I0U = sourceU.intensities_on_mesh()[0]
|
|
101
|
+
fluxUU = I0U.sum(axis=(1, 2)) * dtheta * dpsi * 4e6
|
|
102
|
+
fluxUU[fluxUU <= 0] = 1
|
|
103
|
+
fluxUU[np.isnan(fluxUU)] = 1
|
|
104
|
+
|
|
105
|
+
if withSRWUndulator:
|
|
106
|
+
import pickle
|
|
107
|
+
with open('c:\Ray-tracing\srw\SRWres.pickle', 'rb') as f:
|
|
108
|
+
energySRW, thetaSRW, psiSRW, I0SRW = pickle.load(f)[0:4]
|
|
109
|
+
dtheta = thetaSRW[1] - thetaSRW[0]
|
|
110
|
+
dpsi = psiSRW[1] - psiSRW[0]
|
|
111
|
+
fluxSRWU = I0SRW.sum(axis=(1, 2)) * dtheta * dpsi
|
|
112
|
+
|
|
113
|
+
if withUndulator:
|
|
114
|
+
# kwargs['targetOpenCL'] = None
|
|
115
|
+
# kwargs['taper'] = 0, 4.2
|
|
116
|
+
# kwargs['gp'] = 1e-4 # needed if does not converge
|
|
117
|
+
# if newCode:
|
|
118
|
+
# kwargs['gIntervals'] = 4
|
|
119
|
+
## kwargs['gp'] = 1e-7
|
|
120
|
+
sourceU = rs.Undulator(**kwargs)
|
|
121
|
+
I0U = sourceU.intensities_on_mesh(energy, theta, psi)[0]
|
|
122
|
+
fluxU = I0U.sum(axis=(1, 2)) * dtheta * dpsi
|
|
123
|
+
|
|
124
|
+
fig = plt.figure(figsize=(8, 6))
|
|
125
|
+
fig.suptitle(case, fontsize=14)
|
|
126
|
+
rect2d1 = [0.12, 0.12, 0.85, 0.8]
|
|
127
|
+
ax1 = fig.add_axes(rect2d1, aspect='auto')
|
|
128
|
+
rect2d2 = [0.22, 0.19, 0.33, 0.5]
|
|
129
|
+
ax2 = fig.add_axes(rect2d2, aspect='auto')
|
|
130
|
+
ax2.spines['top'].set_visible(False)
|
|
131
|
+
ax2.spines['right'].set_visible(False)
|
|
132
|
+
ax2.xaxis.set_ticks_position('bottom')
|
|
133
|
+
ax2.yaxis.set_ticks_position('left')
|
|
134
|
+
ax2.patch.set_visible(False)
|
|
135
|
+
for ax, lw in zip([ax1, ax2], [2, 2]):
|
|
136
|
+
# plot = ax.plot
|
|
137
|
+
plot = ax.semilogy
|
|
138
|
+
# plot = ax.loglog
|
|
139
|
+
plot(energy/1000., fluxW, '-', lw=lw, alpha=0.7,
|
|
140
|
+
label='xrt, as wiggler')
|
|
141
|
+
if withUndulator:
|
|
142
|
+
plot(energy/1000., fluxU, '-', lw=lw, alpha=0.7,
|
|
143
|
+
label='xrt, as undulator')
|
|
144
|
+
if withUrgentUndulator:
|
|
145
|
+
plot(energy/1000., fluxUU, '-', lw=lw, alpha=0.7,
|
|
146
|
+
label='Urgent')
|
|
147
|
+
if withSRWUndulator:
|
|
148
|
+
plot(energySRW/1000., fluxSRWU, '-', lw=lw, alpha=0.7,
|
|
149
|
+
label='SRW (zero emittance)')
|
|
150
|
+
if case == 'BioMAX & NanoMAX': # Spectra results
|
|
151
|
+
# fnames = ['bionano2.dc0', 'bionano3.dc0']
|
|
152
|
+
# labels = ['Spectra, accuracy {0}'.format(i) for i in [2, 3]]
|
|
153
|
+
fnames = ['bionano3.dc0']
|
|
154
|
+
labels = ['Spectra']
|
|
155
|
+
for fname, label in zip(fnames, labels):
|
|
156
|
+
e, f = np.loadtxt(fname, skiprows=10, usecols=(0, 1),
|
|
157
|
+
unpack=True)
|
|
158
|
+
plot(e/1000, f, lw=lw, alpha=0.7, label=label)
|
|
159
|
+
ax1.set_xlabel(u'energy (keV)')
|
|
160
|
+
ax1.set_ylabel(u'flux through {0:.0f}×{1:.0f} µrad² (ph/s/0.1%BW)'.format(
|
|
161
|
+
theta[-1]*2e6, psi[-1]*2e6))
|
|
162
|
+
ax1.set_xlim(1, eMax/1e3)
|
|
163
|
+
if case == 'Veritas' or case == 'Hippie':
|
|
164
|
+
ax1.set_ylim(1e1, None)
|
|
165
|
+
else:
|
|
166
|
+
ax1.set_ylim(1e3, None)
|
|
167
|
+
ax2.set_xlim(1, 30)
|
|
168
|
+
ax2.set_ylim(1e12, 2e15)
|
|
169
|
+
if withUndulator:
|
|
170
|
+
ax1.legend(loc='upper right')
|
|
171
|
+
|
|
172
|
+
plt.savefig(u'flux_{0}_{1:.0f}×{2:.0f}µrad²_{3}.png'.format(
|
|
173
|
+
case, theta[-1]*2e6, psi[-1]*2e6, suffix))
|
|
174
|
+
|
|
175
|
+
if xlwt is not None:
|
|
176
|
+
wb = xlwt.Workbook()
|
|
177
|
+
ws = wb.add_sheet('flux')
|
|
178
|
+
ws.write(0, 0, u'energy (eV)')
|
|
179
|
+
ws.write(
|
|
180
|
+
0, 1, u'fluxW through {0:.0f}×{1:.0f} µrad² (ph/s/0.1%BW)'.format(
|
|
181
|
+
theta[-1]*2e6, psi[-1]*2e6))
|
|
182
|
+
if withUndulator:
|
|
183
|
+
ws.write(
|
|
184
|
+
0, 2,
|
|
185
|
+
u'fluxU through {0:.0f}×{1:.0f} µrad² (ph/s/0.1%BW)'.format(
|
|
186
|
+
theta[-1]*2e6, psi[-1]*2e6))
|
|
187
|
+
|
|
188
|
+
for i, e in enumerate(energy):
|
|
189
|
+
ws.write(i+1, 0, e)
|
|
190
|
+
ws.write(i+1, 1, fluxW[i])
|
|
191
|
+
if withUndulator:
|
|
192
|
+
ws.write(i+1, 2, fluxW[i])
|
|
193
|
+
|
|
194
|
+
wb.save(u'flux_{0}_{1:.0f}×{2:.0f}µrad².xls'.format(
|
|
195
|
+
case, theta[-1]*2e6, psi[-1]*2e6))
|
|
196
|
+
|
|
197
|
+
plt.show()
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
if __name__ == '__main__':
|
|
201
|
+
run('Balder')
|
|
202
|
+
# run('BioMAX & NanoMAX')
|
|
203
|
+
# run('Veritas')
|
|
204
|
+
# run('Hippie')
|
|
@@ -6,7 +6,10 @@ import numpy as np
|
|
|
6
6
|
import matplotlib.pyplot as plt
|
|
7
7
|
import time
|
|
8
8
|
# path to xrt:
|
|
9
|
-
import os, sys;
|
|
9
|
+
import os, sys;
|
|
10
|
+
newCode = False
|
|
11
|
+
codePath = r"c:\github\xrt" if newCode else os.path.join('..', '..', '..')
|
|
12
|
+
sys.path.append(codePath)
|
|
10
13
|
import xrt.backends.raycing.sources as rs
|
|
11
14
|
|
|
12
15
|
wantUrgentUndulator = False
|
|
@@ -16,12 +19,13 @@ def flux_through_aperture(energy, theta, psi, I0):
|
|
|
16
19
|
dtheta, dpsi = theta[1] - theta[0], psi[1] - psi[0]
|
|
17
20
|
flux = I0.sum(axis=(1, 2)) * dtheta * dpsi
|
|
18
21
|
plt.plot(energy, flux)
|
|
22
|
+
plt.savefig("01 - Flux_ap_{}.png".format("new" if newCode else "old"))
|
|
19
23
|
|
|
20
24
|
|
|
21
25
|
def intensity_in_transverse_plane(energy, theta, psi, I0):
|
|
22
26
|
plt.imshow(I0[len(energy)//2, :, :],
|
|
23
27
|
extent=[theta[0]*1e6, theta[-1]*1e6, psi[0]*1e6, psi[-1]*1e6])
|
|
24
|
-
|
|
28
|
+
plt.savefig("02 - Intensity_tr_plane_{}.png".format("new" if newCode else "old"))
|
|
25
29
|
|
|
26
30
|
def colored_intensity_in_transverse_plane(energy, theta, psi, I0):
|
|
27
31
|
import matplotlib as mpl
|
|
@@ -66,6 +70,7 @@ def colored_intensity_in_transverse_plane(energy, theta, psi, I0):
|
|
|
66
70
|
rgbC = mpl.colors.hsv_to_rgb(hsvC)
|
|
67
71
|
axC.imshow(rgbC / rgbC.max(), aspect='auto', origin='lower',
|
|
68
72
|
extent=[0, 1, energy[0], energy[-1]])
|
|
73
|
+
plt.savefig("03 - Intensity_tr_plane_color_{}.png".format("new" if newCode else "old"))
|
|
69
74
|
|
|
70
75
|
|
|
71
76
|
def main():
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# path to xrt:
|
|
3
|
+
import os, sys;
|
|
4
|
+
newCode = True
|
|
5
|
+
codePath = r"c:\github\xrt" if newCode else os.path.join('..', '..', '..')
|
|
6
|
+
sys.path.append(codePath)
|
|
7
|
+
import numpy as np
|
|
8
|
+
import matplotlib.pyplot as plt
|
|
9
|
+
import xrt.backends.raycing.sources as rs
|
|
10
|
+
import time
|
|
11
|
+
|
|
12
|
+
print("please wait...")
|
|
13
|
+
t0 = time.time()
|
|
14
|
+
source = rs.Undulator(eE=3.0, eI=0.5, eEpsilonX=0.263, eEpsilonZ=0.008,
|
|
15
|
+
betaX=9., betaZ=2., period=19.3, n=101, K=0.52,
|
|
16
|
+
eEspread=0*1e-3, distE='BW')
|
|
17
|
+
|
|
18
|
+
energy = np.linspace(1000, 31000, 1501)
|
|
19
|
+
theta = np.linspace(-1, 1, 21) * 30e-6
|
|
20
|
+
psi = np.linspace(-1, 1, 21) * 30e-6
|
|
21
|
+
Ks = np.linspace(0.3, 2.2, 20)
|
|
22
|
+
Kmax, gmin = 2.2, 4.2
|
|
23
|
+
gaps = np.log(Kmax/Ks) / np.pi * source.L0 + gmin
|
|
24
|
+
harmonics = range(1, 17)
|
|
25
|
+
|
|
26
|
+
powers = source.power_vs_K(energy, theta, psi, harmonics, Ks)
|
|
27
|
+
|
|
28
|
+
plt.plot(gaps, powers, 'o-')
|
|
29
|
+
ax = plt.gca()
|
|
30
|
+
ax.set_xlabel(u'magnetic gap (mm)')
|
|
31
|
+
ax.set_ylabel(u'total power through (60 µrad)² (W)')
|
|
32
|
+
|
|
33
|
+
maxPower = powers.max()
|
|
34
|
+
for i, (power, K, gap) in enumerate(zip(powers, Ks, gaps)):
|
|
35
|
+
ax.text(gap, power + maxPower*0.03 * (i % 2 * 2 - 1),
|
|
36
|
+
'{0}{1:.1f}'.format('K=' if i == 0 else '', K), fontsize=9,
|
|
37
|
+
ha='center', va='center')
|
|
38
|
+
print("done in {:.3f}s!".format(time.time()-t0))
|
|
39
|
+
|
|
40
|
+
plt.savefig('undulator_power_CoSAXS_{}.png'.format("new" if newCode else "old"))
|
|
41
|
+
plt.show()
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
__author__ = "Konstantin Klementiev, Roman Chernikov"
|
|
3
|
+
__date__ = "22 Jan 2016"
|
|
4
|
+
# path to xrt:
|
|
5
|
+
import os, sys;
|
|
6
|
+
newCode = False
|
|
7
|
+
codePath = r"c:\github\xrt" if newCode else os.path.join('..', '..', '..')
|
|
8
|
+
sys.path.append(codePath)
|
|
9
|
+
import numpy as np
|
|
10
|
+
import matplotlib.pyplot as plt
|
|
11
|
+
from matplotlib.ticker import FormatStrFormatter
|
|
12
|
+
import xrt.backends.raycing.sources as rs
|
|
13
|
+
|
|
14
|
+
print("please wait...")
|
|
15
|
+
source = rs.Undulator(eE=3.0, eI=0.5, eEpsilonX=0.263, eEpsilonZ=0.008,
|
|
16
|
+
betaX=9.539, betaZ=1.982, period=18.5, n=108, K=0.52,
|
|
17
|
+
eEspread=0*8e-4, distE='BW', gIntervals=2)
|
|
18
|
+
|
|
19
|
+
energy = np.linspace(2000, 30000, 5601)
|
|
20
|
+
theta = np.linspace(-1, 1, 11) * 30e-6 # 60 µrad opening
|
|
21
|
+
psi = np.linspace(-1, 1, 11) * 30e-6 # 60 µrad opening
|
|
22
|
+
xlims, ylims = (3, 24), (1e14, 5e15)
|
|
23
|
+
Ks = np.linspace(0.3, 2.2, 20)
|
|
24
|
+
Kmax, gmin = 1.92, 4.2 # needed to calculate gap(K)
|
|
25
|
+
gaps = np.log(Kmax/Ks) / np.pi * source.L0 + gmin
|
|
26
|
+
harmonics = [1, 2, 3, 4, 5, 7, 9]
|
|
27
|
+
colors = ['b', 'g', 'r', 'c', 'm', 'y', 'k']
|
|
28
|
+
|
|
29
|
+
tunesE, tunesF = source.tuning_curves(energy, theta, psi, harmonics, Ks)
|
|
30
|
+
|
|
31
|
+
# plot:
|
|
32
|
+
for tuneE, tuneF, harmonic, color in zip(tunesE, tunesF, harmonics, colors):
|
|
33
|
+
plt.loglog(tuneE, tuneF, 'o-', label='{0}'.format(harmonic),
|
|
34
|
+
color=color)
|
|
35
|
+
# format the graph:
|
|
36
|
+
ax = plt.gca()
|
|
37
|
+
ax.set_xlabel(u'energy (eV)')
|
|
38
|
+
ax.set_ylabel(u'flux through (60 µrad)² (ph/s/0.1% bw)')
|
|
39
|
+
ax.set_xlim(xlims)
|
|
40
|
+
ax.set_ylim(ylims)
|
|
41
|
+
ax.xaxis.set_minor_formatter(FormatStrFormatter("%.0f"))
|
|
42
|
+
ax.xaxis.set_major_formatter(FormatStrFormatter("%.0f"))
|
|
43
|
+
plt.grid(which='both')
|
|
44
|
+
ax.legend(loc='upper right', title='harmonics')
|
|
45
|
+
|
|
46
|
+
# labels of K and gap:
|
|
47
|
+
for tuneE, tuneF, harmonic in zip(tunesE, tunesF, harmonics):
|
|
48
|
+
if harmonic == 3:
|
|
49
|
+
ax.text(tuneE[-1], tuneF[-1]*1.05, 'K=', fontsize=8,
|
|
50
|
+
ha='right', va='bottom')
|
|
51
|
+
ax.text(tuneE[-1]/1.05, tuneF[-1]/1.2, 'gap=\n(mm)', fontsize=8,
|
|
52
|
+
color='b', ha='right', va='center')
|
|
53
|
+
for x, y, K, gap in zip(tuneE, tuneF, Ks, gaps):
|
|
54
|
+
if xlims[0] < x < xlims[1] and ylims[0] < y < ylims[1]:
|
|
55
|
+
ax.text(x, y*1.05, '{0:.2f}'.format(K), fontsize=8)
|
|
56
|
+
if harmonic == 3:
|
|
57
|
+
ax.text(x/1.05, y/1.2, '{0:.2f}'.format(gap), fontsize=8,
|
|
58
|
+
color='b')
|
|
59
|
+
print("done!")
|
|
60
|
+
|
|
61
|
+
plt.savefig('calc_undulator_tune_{}.png'.format("new" if newCode else "old"))
|
|
62
|
+
plt.show()
|