xrt 1.5.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.5.0 → xrt-1.6.1}/MANIFEST.in +4 -4
- {xrt-1.5.0 → xrt-1.6.1}/PKG-INFO +21 -20
- {xrt-1.5.0 → xrt-1.6.1}/examples/withDummy/__init__.py +7 -3
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/__init__.py +57 -37
- xrt-1.6.1/examples/withRaycing/00_xRayCalculator/calc_crystal.py +45 -0
- xrt-1.6.1/examples/withRaycing/00_xRayCalculator/calc_undulator.py +118 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_undulator_power.py +1 -1
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_undulator_tune.py +2 -2
- xrt-1.6.1/examples/withRaycing/01_SynchrotronSources/fluxThroughAperture.py +354 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/my_arbitrary_field_test.py +1 -1
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/synchrotronSources.py +33 -29
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/undulatorHamed.py +6 -5
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/undulatorHamed_fromField.py +4 -6
- xrt-1.6.1/examples/withRaycing/01_SynchrotronSources/undulatorVortex.py +372 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/__init__.py +22 -6
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/traceDCMBalderBL.py +1 -1
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/03_LaueMono/01_bentLaueSCM.py +62 -48
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/03_LaueMono/02_bentLaueDCM_RC.py +2 -2
- xrt-1.6.1/examples/withRaycing/03_LaueMono/03_bentLaue_material.py +288 -0
- xrt-1.6.1/examples/withRaycing/03_LaueMono/03_polychromatic_focus.py +347 -0
- xrt-1.6.1/examples/withRaycing/03_LaueMono/04_bentLaue2D_material.py +238 -0
- xrt-1.6.1/examples/withRaycing/03_LaueMono/04_sagittal_bending.py +343 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/04_Lenses/crl_individual.py +0 -1
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/04_Lenses/crl_stack.py +5 -2
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/08_convergent_LT_bent.py +40 -26
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/09_convergent_LT_bentSph.py +42 -29
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/__init__.py +4 -2
- xrt-1.6.1/examples/withRaycing/06_AnalyzerBent1D/01B_BentTT.py +299 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/01B_SourceZCrystalThetaAlpha.py +2 -3
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/01L_SourceZCrystalThetaAlpha.py +2 -3
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/02_vonHamos.py +41 -39
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/02_vonHamosElliptical.py +3 -2
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/__init__.py +104 -43
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/flux-dE.py +6 -7
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/07_AnalyzerBent2D/01BD_SourceZCrystalThetaAlpha.py +99 -73
- xrt-1.6.1/examples/withRaycing/08_CLAESS_BL/__init__.py +58 -0
- {xrt-1.5.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.5.0 → xrt-1.6.1}/examples/withRaycing/09_Gratings/__init__.py +22 -7
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/10_MultipleReflect/BentTaperedPolyCapillary.py +24 -24
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/10_MultipleReflect/__init__.py +31 -8
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/11.6 DiffractionOnApertures.py +2 -2
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/LaguerreGaussianBeam_SiemensStar.py +1 -1
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/doubleSlitScan.py +9 -4
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/slitscan.py +4 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/waveFZP.py +12 -7
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/waveGrating.py +29 -25
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/waveMirrors.py +2 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/12_Multilayer/BalderDMM.py +2 -2
- xrt-1.6.1/examples/withRaycing/13_Warping/ExampleOfSlopeErrorMapToParametricMirror.py +74 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/13_Warping/warp.py +10 -9
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/14_SoftiMAX/Softi_CXIw1D.py +10 -10
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/14_SoftiMAX/Softi_CXIw2D.py +1 -1
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/14_SoftiMAX/Softi_STXMw1D.py +1 -1
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/14_SoftiMAX/Softi_STXMw2D.py +1 -1
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/14_SoftiMAX/__init__.py +9 -2
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/00_simple.py +1 -1
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/effic.01 +1 -1
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/end.00 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/end.01 +2 -2
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/start.00 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xsh_input_source_tmp.inp +1 -1
- xrt-1.6.1/examples/withShadow/03/tmp0/shadow-trace.bat +4 -0
- xrt-1.6.1/examples/withShadow/04_06/tmp0/shadow-source.bat +7 -0
- xrt-1.6.1/examples/withShadow/04_06/tmp0/shadow-trace.bat +4 -0
- {xrt-1.5.0 → xrt-1.6.1}/setup.py +22 -22
- xrt-1.6.1/tests/raycing/IR/RefractiveIndexINFO_BK7.csv +125 -0
- xrt-1.6.1/tests/raycing/IR/one_plate_test.py +123 -0
- xrt-1.6.1/tests/raycing/IR/wedge_diamond.xml +233 -0
- xrt-1.6.1/tests/raycing/RemoteOpenCLCalculation/__init__.py +53 -0
- 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/RemoteOpenCLCalculation/zmq_server.py +199 -0
- xrt-1.6.1/tests/raycing/_SynchrotronSources/MAX-IV-IDs-Flux.py +204 -0
- {xrt-1.5.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.5.0 → xrt-1.6.1}/tests/raycing/laguerre_hermite_gaussian_beam.py +1 -1
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/read_NOM_maps.py +1 -1
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_asymmetric_xtal.py +9 -3
- {xrt-1.5.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.5.0 → xrt-1.6.1}/tests/raycing/test_laue_bent.py +2 -3
- xrt-1.6.1/tests/raycing/test_materials.py +986 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_mosaic_xtal.py +44 -18
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_mosaic_xtal_thin.py +149 -148
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_param_mirror.py +65 -17
- xrt-1.6.1/tests/raycing/test_pytte.py +372 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_undulator_convergence.py +15 -6
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_undulator_on_mesh.py +18 -17
- {xrt-1.5.0 → xrt-1.6.1}/tests/speed/1_SourceZCrystalThetaAlpha_speed.py +6 -7
- {xrt-1.5.0 → xrt-1.6.1}/tests/speed/2_synchrotronSources_speed.py +21 -17
- {xrt-1.5.0 → xrt-1.6.1}/tests/speed/3_Softi_CXIw2D_speed.py +30 -21
- xrt-1.6.1/tests/speed/__init__.py +72 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/__init__.py +37 -36
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/__init__.py +146 -46
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/apertures.py +238 -89
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/coherence.py +31 -19
- 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.5.0 → xrt-1.6.1}/xrt/backends/raycing/materials.cl +473 -2
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/materials.py +560 -62
- xrt-1.6.1/xrt/backends/raycing/materials_compounds.py +853 -0
- xrt-1.6.1/xrt/backends/raycing/materials_crystals.py +1439 -0
- xrt-1.6.1/xrt/backends/raycing/materials_elemental.py +717 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/modes.py +2 -4
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/myopencl.py +265 -19
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/oes.py +1684 -315
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/oes_base.py +434 -170
- xrt-1.6.1/xrt/backends/raycing/pyTTE_x/__init__.py +9 -0
- xrt-1.6.1/xrt/backends/raycing/pyTTE_x/crystal_vectors.py +58 -0
- xrt-1.6.1/xrt/backends/raycing/pyTTE_x/deformation.py +300 -0
- xrt-1.6.1/xrt/backends/raycing/pyTTE_x/elastic_tensors.py +384 -0
- xrt-1.6.1/xrt/backends/raycing/pyTTE_x/legacy.py +326 -0
- xrt-1.6.1/xrt/backends/raycing/pyTTE_x/pyTTE.py +906 -0
- xrt-1.6.1/xrt/backends/raycing/pyTTE_x/pyTTE_rkpy.py +1038 -0
- xrt-1.6.1/xrt/backends/raycing/pyTTE_x/pyTTE_rkpy_qt.py +855 -0
- xrt-1.6.1/xrt/backends/raycing/pyTTE_x/quantity.py +344 -0
- xrt-1.6.1/xrt/backends/raycing/pyTTE_x/rotation_matrix.py +105 -0
- xrt-1.6.1/xrt/backends/raycing/pyTTE_x/ttcrystal.py +890 -0
- xrt-1.6.1/xrt/backends/raycing/pyTTE_x/ttscan.py +241 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/run.py +2 -1
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/screens.py +81 -53
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/sources.py +112 -17
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/sources_beams.py +5 -4
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/sources_geoms.py +23 -15
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/sources_legacy.py +1 -1
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/sources_sybase.py +117 -57
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/sources_synchr.py +78 -30
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/waves.py +53 -36
- xrt-1.6.1/xrt/gui/commons/_themes/qook/static/jquery.js +2 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/ext.py +3 -1
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/qt.py +13 -44
- xrt-1.6.1/xrt/gui/xrtBentXtal.py +1382 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtGlow/__init__.py +90 -65
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtGlow/notes.py +12 -8
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/__init__.py +168 -86
- xrt-1.6.1/xrt/gui/xrtQook/_icons/3dg_256.png +0 -0
- xrt-1.6.1/xrt/gui/xrtQook/_icons/xbcc.ico +0 -0
- xrt-1.6.1/xrt/gui/xrtQook/_icons/xbcc.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/tutorial.py +45 -22
- xrt-1.6.1/xrt/gui/xrtQookStart.py +53 -0
- xrt-1.6.1/xrt/gui/xrtQookStart.pyw +52 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/multipro.py +14 -34
- {xrt-1.5.0 → xrt-1.6.1}/xrt/plotter.py +68 -48
- {xrt-1.5.0 → xrt-1.6.1}/xrt/runner.py +20 -16
- {xrt-1.5.0 → xrt-1.6.1}/xrt/version.py +2 -2
- {xrt-1.5.0 → xrt-1.6.1}/xrt.egg-info/PKG-INFO +21 -20
- {xrt-1.5.0 → xrt-1.6.1}/xrt.egg-info/SOURCES.txt +44 -99
- xrt-1.6.1/xrt.egg-info/requires.txt +14 -0
- xrt-1.5.0/examples/withRaycing/00_xRayCalculator/calc_crystal.py +0 -24
- xrt-1.5.0/examples/withRaycing/08_CLAESS_BL/__init__.py +0 -50
- xrt-1.5.0/examples/withShadow/00_02/tmp0/shadow-source.bat +0 -7
- xrt-1.5.0/examples/withShadow/00_02/tmp0/shadow-trace.bat +0 -4
- xrt-1.5.0/examples/withShadow/00_02/tmp0/shadowvui.bat +0 -4
- xrt-1.5.0/tests/raycing/RemoteOpenCLCalculation/zmq_server.py +0 -51
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-15deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-15deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-15deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-15deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-30deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-30deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-30deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-30deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-45deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-45deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-45deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-45deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-60deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-60deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-60deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-60deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-75deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-75deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-75deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a-75deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a0deg.xc.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a0deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a0deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a0deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a0deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a15deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a15deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a15deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a15deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a30deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a30deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a30deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a30deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a45deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a45deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a45deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a45deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a60deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a60deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a60deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a60deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a75deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a75deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a75deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_R50m_a75deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a-30deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a-30deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a0deg.xc.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a30deg.xc.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a30deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a30deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a30deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi111_E50keV_t1000mkm_Rinfm_a30deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-05deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-05deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-15deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-15deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-15deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-30deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-30deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-30deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-30deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-45deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-45deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-45deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-45deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-60deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-60deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-60deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-60deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-75deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-75deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a-75deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a0deg.xc.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a0deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a0deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a0deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a0deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a15deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a15deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a30deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a30deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a45deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a45deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a60deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a60deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a75deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_R50m_a75deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_Rinfm_a30deg.xc.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_Rinfm_a30deg_pp_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_Rinfm_a30deg_pp_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_Rinfm_a30deg_tt_pi.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/XOP-RockingCurves-Bent/lSi333_E50keV_t1000mkm_Rinfm_a30deg_tt_sigma.xcb.gz +0 -0
- xrt-1.5.0/tests/raycing/test_materials.py +0 -1327
- xrt-1.5.0/xrt/backends/raycing/data/BrCo.npz +0 -0
- xrt-1.5.0/xrt/backends/raycing/data/Chantler.npz +0 -0
- xrt-1.5.0/xrt/backends/raycing/data/Henke.npz +0 -0
- xrt-1.5.0/xrt/gui/commons/__init__.py +0 -1
- xrt-1.5.0/xrt/gui/xrtQookStart.py +0 -31
- xrt-1.5.0/xrt/gui/xrtQookStart.pyw +0 -31
- xrt-1.5.0/xrt.egg-info/requires.txt +0 -4
- {xrt-1.5.0 → xrt-1.6.1}/LICENSE.txt +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/README.txt +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withDummy/logo-python.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withDummy/logo_xrt.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withDummy/xrt_demo.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_absorption.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_bm.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_carbon_contamination.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_coated_mirror.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_crystal_dtheta.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_crystal_rocking_curve.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_mirror.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_multilayer.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_multilayer_E.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_multilayer_theta.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_slab.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/00_xRayCalculator/calc_transmittivity.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/B-Hamed.xlsx +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/MAX-IV-IDs-Flux.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/U32TaperedScan.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/bionano3.dc0 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/thetaexafssc1an_zn_hgap_00002r2.fio.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/undulator-rays-near-wave-filament.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/undulatorTapering.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/01_SynchrotronSources/undulatorTapering_zmq.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/3D/BalderBL.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/3D/traceBalderBL.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/BalderBL.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/BalderFlux.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/traceBalderBL.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/traceFiltersBalderBL.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/traceMirrorPitchBalderBL.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/traceMirrorPitchBothBalderBL.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/02_Balder_BL/traceMirrorRBalderBL.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/03_LaueMono/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/04_Lenses/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/04_Lenses/crl_individual_3D.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/01_collimated_BR.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/02_collimated_LR.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/03_collimated_BT.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/04_collimated_LT.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/05_convergent_BT.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/06_convergent_LT.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/05_QWP/07_convergent_LT_slit.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/06_AnalyzerBent1D/vonHamosPos.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/07_AnalyzerBent2D/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/08_CLAESS_BL/ClaessBL_N.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/08_CLAESS_BL/traceClaessBL_N.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/09_Gratings/BraggFresnel.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/09_Gratings/Grating.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/09_Gratings/GratingFlexPES.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/09_Gratings/efficiency1-LEG.txt +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/10_MultipleReflect/Cylinder.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/10_MultipleReflect/MontelMirror.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/IMP_1st_1p11.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/IMP_2nd_1p11.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/LEG_1st_1p85.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/LEG_2nd_1p85.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/MEG_1st_1p48.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/MEG_2nd_1p48.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/apex175p9.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/11_Waves/coherentModePropagation.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/12_Multilayer/traceDMM.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/13_Warping/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/13_Warping/mock_surface.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/15_XRD/P02_PD.xml +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/15_XRD/_images/rings_on_detector.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/15_XRD/xrd_mono.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/16_ParametricOptimization/16.1_autoOptimization_detuning.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/1crystal.xml +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/4crystals.xml +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/BioXAS_Main.xml +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_glow.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_p01.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_p02.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_p03a.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_p03b.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_p03c.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/ex03_p03d.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp01_glow.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp01_p01.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp02_glow.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp02_p01.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp02_p02.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp04_glow.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp04_p01.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp04_p02.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp04_p03.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/_images/exp04_p04.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/lens1.xml +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/lens3.xml +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/testAlignment.xml +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/_QookBeamlines/testGrating.xml +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withRaycing/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/01_filters.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/02_VCM_stripes.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/CLAESS01-norefl.ws +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/CVDdiamond.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/Pt_refl.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/Rh_refl.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/Si111.rc +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/Si311.rc +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/Si_refl.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/optax.01 +0 -0
- {xrt-1.5.0/examples/withShadow/03 → xrt-1.6.1/examples/withShadow/00_02}/tmp0/shadow-source.bat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/shadow-source.sh +0 -0
- {xrt-1.5.0/examples/withShadow/03 → xrt-1.6.1/examples/withShadow/00_02}/tmp0/shadow-trace.bat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/shadow-trace.sh +0 -0
- /xrt-1.5.0/examples/withShadow/04_06/tmp0/shadow-trace.bat → /xrt-1.6.1/examples/withShadow/00_02/tmp0/shadowvui.bat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/start.01 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/systemfile.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xsh_bragg_tmp.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xsh_env_file.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xsh_epath_tmp.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xsh_nphoton_tmp.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xsh_prerefl_tmp.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/00_02/tmp0/xshwig.par +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/03_DCM_energy.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/CLAESS-noVFM.ws +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/CVDdiamond.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/Rh_refl.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/Si111.rc +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/Si311.rc +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/effic.01 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/effic.02 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/effic.03 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/end.00 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/end.01 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/end.02 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/end.03 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/error_source.log +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/optax.01 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/optax.02 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/optax.03 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/output_source.log +0 -0
- {xrt-1.5.0/examples/withShadow/04_06 → xrt-1.6.1/examples/withShadow/03}/tmp0/shadow-source.bat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/shadow-source.sh +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/shadow-trace.sh +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/start.00 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/start.01 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/start.02 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/start.03 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/start_old.02 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/systemfile.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xsh_env_file.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xsh_epath_tmp.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xsh_input_source_tmp.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xsh_mirinfo_tmp.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xsh_mirinfo_tmp.out +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xsh_nphoton_tmp.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/03/tmp0/xshwig.par +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/04_dE_VCM_bending.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/05_VFM_bending.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/06_mirrors_pitch.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/CLAESS.ws +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/CVDdiamond.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/Rh_refl.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/Si111.rc +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/effic.01 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/effic.02 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/effic.03 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/effic.04 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/end.00 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/end.01 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/end.02 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/end.03 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/end.04 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/optax.01 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/optax.02 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/optax.03 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/optax.04 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/shadow-source.sh +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/shadow-trace.sh +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/start.00 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/start.01 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/start.02 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/start.03 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/start.04 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/start_old.02 +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/systemfile.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xsh_env_file.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xsh_epath_tmp.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xsh_input_source_tmp.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xsh_mirinfo_tmp.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xsh_mirinfo_tmp.out +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xsh_nphoton_tmp.inp +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/04_06/tmp0/xshwig.par +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/examples/withShadow/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/setup.cfg +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/convexHull.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/kde.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/CXRO-Reflectivities/CSiO2_p_rough1.CXRO.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/CXRO-Reflectivities/CSiO2_s_rough1.CXRO.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/CXRO-Reflectivities/RhSi_p_rough2.CXRO.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/CXRO-Reflectivities/RhSi_s_rough2.CXRO.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/CXRO-Reflectivities/WSi300id0.CXRO.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/CXRO-Reflectivities/WSi300id6.CXRO.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/RemoteOpenCLCalculation/queue_device.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Ag_absCoeff.xcrosssec.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Al_absCoeff.xcrosssec.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Au_absCoeff.xcrosssec.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Be_absCoeff.xcrosssec.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Diamond60mum.xpower.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Ni_absCoeff.xcrosssec.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Pt4mrad_p.xf1f2.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Pt4mrad_s.xf1f2.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Rh2mrad_p.xf1f2.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Rh2mrad_s.xf1f2.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/ScCr_ML_reflection_REFLEC.npy +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/ScCr_ML_transmission_REFLEC.npy +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Si05deg_p.xf1f2.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Si05deg_s.xf1f2.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/SiO205deg_p.xf1f2.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/SiO205deg_s.xf1f2.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/W25A_10kev_p.mlayer.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/W25A_10kev_s.mlayer.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/WSi100_45A40.mlayer.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/WSi45A04.mlayer.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/WSi45_100A40.mlayer.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/Zn_absCoeff.xcrosssec.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-Reflectivities/mLScCr-spph.mlayer.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_007mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_100mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi111_thick_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_007mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_100mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/bSi333_thick_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_007mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi111_100mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_007mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/btSi333_100mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/graphite002_mosaic04_03kev.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/graphite002_mosaic04_08kev.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/graphite002_mosaic04_17kev.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_007mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi111_100mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_007mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/lSi333_100mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_007mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi111_100mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_007mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_-5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_-5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_-5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_-5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_0_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_0_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_0_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_0_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_5_p.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_5_p.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_5_s.xc.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/XOP-RockingCurves/ltSi333_100mum_5_s.xin.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/info_opencl.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/misc/bessy.dc0.gz +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_coherent_fraction_stack.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_crystals.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_ellipse_2.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_multilayer_transmission.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_oes.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_polygonal_aperture.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_sources.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/tests/raycing/test_undulator_size.py +0 -0
- {xrt-1.5.0/tests/speed → xrt-1.6.1/xrt/backends}/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/dummy.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/OE.cl +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/data/AtomicData.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/data/f0_xop.dat +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/diffract.cl +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/physconsts.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/stages.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/undulator.cl +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/xrt_complex_double.cl +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/raycing/xrt_complex_float.cl +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/backends/shadow.py +0 -0
- {xrt-1.5.0/xrt/backends → xrt-1.6.1/xrt/gui}/__init__.py +0 -0
- {xrt-1.5.0/xrt/gui → xrt-1.6.1/xrt/gui/commons}/__init__.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/1-LEG_profile-adhoc.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/1-LEG_profile-default.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/ePos=0.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/ePos=1.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/ePos=2.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_glow.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_p01.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_p02.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_p03a.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_p03b.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_p03c.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/ex03_p03d.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/filterFootprint2_I400mum.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/filterFootprint2_I400mum_norm1.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/filterFootprint2_I400mum_norm2.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/invertColorMap=0_negative=0.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/invertColorMap=0_negative=1.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/invertColorMap=1_negative=0.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/invertColorMap=1_negative=1.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/negative=1+fullNegative.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/offset0.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/offset5000.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/outline00.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/outline05.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/outline10.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookSplash2.gif +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor01.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor02.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor03.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor04.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor05.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor06.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor07.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor08.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor09.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor10.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_images/qookTutor11.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/layout.html +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/page.html +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/static/default.css_t +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/static/math_config_win32.js +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/static/utils.js +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/_themes/qook/theme.conf +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/conf.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/commons/gl.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtGlow/_icons/icon-GLow.ico +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/GPU4.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/add1.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/add2.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/add3.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/add4.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/add5.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/add6.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/dialog-information.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/dialog-question.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/eyeglasses7_128.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/filenew.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/fileopen.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/filesave.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/filesaveas.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/home.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/index.txt +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/light_bulb.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/logo-xrtQt.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/pythonscript.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/pythonscriptsave.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/pythonscriptsaveas.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/readme.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/run.png +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/gui/xrtQook/_icons/xrQt1.ico +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/kde.py +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt/xrt_logo.ico +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt.egg-info/dependency_links.txt +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt.egg-info/not-zip-safe +0 -0
- {xrt-1.5.0 → xrt-1.6.1}/xrt.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,372 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
r"""
|
|
3
|
+
.. _OAM-HelicalU:
|
|
4
|
+
|
|
5
|
+
Orbital Angular Momentum of helical undulator radiation
|
|
6
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
7
|
+
|
|
8
|
+
The images below are produced by
|
|
9
|
+
``\examples\withRaycing\01_SynchrotronSources\undulatorVortex.py``.
|
|
10
|
+
|
|
11
|
+
This example calculates flux and Orbital Angular Momentum (OAM) of helical
|
|
12
|
+
undulator radiation. The calculation is done on a 3D (energy, theta, psi) or 4D
|
|
13
|
+
(energy, theta, psi, gamma) rectangular mesh for zero and true electron beam
|
|
14
|
+
energy spread, respectively. To calculate OAM projection along the propagation
|
|
15
|
+
direction, we first calculate *OAM intensity* :math:`I^l_s` for the field
|
|
16
|
+
:math:`E_s`
|
|
17
|
+
|
|
18
|
+
.. math::
|
|
19
|
+
I^l_s = E_s^* i\left(\psi\frac{\partial}{\partial\theta}-
|
|
20
|
+
\theta\frac{\partial}{\partial\psi}\right) E_s
|
|
21
|
+
|
|
22
|
+
and similarly for the field :math:`E_p`. OAM intensity is an incoherent
|
|
23
|
+
distribution, similarly to the "usual" intensity, as the phase information is
|
|
24
|
+
lost in it, and therefore it is suitable for incoherent accumulation of fields
|
|
25
|
+
originated from different electrons distributed within emittance and energy
|
|
26
|
+
spread distributions. After averaging intensity and OAM intensity over electron
|
|
27
|
+
beam energy spread distribution and convolving with electron beam angular
|
|
28
|
+
distributions, we obtain *vorticity* – the averaged normalized OAM value:
|
|
29
|
+
|
|
30
|
+
.. math::
|
|
31
|
+
l_s = \int I^l_s d\theta d\psi \bigg/ \int I_s d\theta d\psi
|
|
32
|
+
|
|
33
|
+
and similarly for the field :math:`E_p`.
|
|
34
|
+
|
|
35
|
+
The images below were calculated at the maximum flux energies at the 1st to 4th
|
|
36
|
+
harmonics. As a reminder, the flux is maximized at energies slightly below the
|
|
37
|
+
formal harmonic energies; at these energies the transverse distribution is of a
|
|
38
|
+
donut shape. As a second reminder, the radiation from a helical undulator has
|
|
39
|
+
only the first harmonic on the undulator axis but also has higher harmonics at
|
|
40
|
+
finite observation angles.
|
|
41
|
+
|
|
42
|
+
The coloring of the transverse images is done by field phase. For this purpose,
|
|
43
|
+
the radiation field (here, :math:`E_s`) was *coherently* averaged over electron
|
|
44
|
+
beam energy spread distribution and electron beam angular distributions. This
|
|
45
|
+
operation is physically illegal but was used here only for the visual effect.
|
|
46
|
+
The measurable values – intensity, flux and vorticity – were determined by the
|
|
47
|
+
correct incoherent averaging. The image brightness represents intensity.
|
|
48
|
+
|
|
49
|
+
+--------------+------------------------+------------------------+
|
|
50
|
+
| | zero emittance, | true emittance, |
|
|
51
|
+
| | zero energy spread | true energy spread |
|
|
52
|
+
+==============+========================+========================+
|
|
53
|
+
| |resTxt| | |U48results| |
|
|
54
|
+
+--------------+------------------------+------------------------+
|
|
55
|
+
| 1st harmonic | |U48Esh1-00| | |U48Esh1-ff| |
|
|
56
|
+
+--------------+------------------------+------------------------+
|
|
57
|
+
| 2nd harmonic | |U48Esh2-00| | |U48Esh2-ff| |
|
|
58
|
+
+--------------+------------------------+------------------------+
|
|
59
|
+
| 3rd harmonic | |U48Esh3-00| | |U48Esh3-ff| |
|
|
60
|
+
+--------------+------------------------+------------------------+
|
|
61
|
+
| 4th harmonic | |U48Esh4-00| | |U48Esh4-ff| |
|
|
62
|
+
+--------------+------------------------+------------------------+
|
|
63
|
+
|
|
64
|
+
.. |resTxt| replace:: Flux and vorticity
|
|
65
|
+
.. |U48results| imagezoom:: _images/U48-flux-vorticity.png
|
|
66
|
+
:align: center
|
|
67
|
+
.. |U48Esh1-00| imagezoom:: _images/U48-00-Es-OAM-transverse-image-140-352.727eV.png
|
|
68
|
+
.. |U48Esh1-ff| imagezoom:: _images/U48-ff-Es-OAM-transverse-image-140-352.727eV.png
|
|
69
|
+
:loc: upper-right-corner
|
|
70
|
+
.. |U48Esh2-00| imagezoom:: _images/U48-00-Es-OAM-transverse-image-386-621.091eV.png
|
|
71
|
+
.. |U48Esh2-ff| imagezoom:: _images/U48-ff-Es-OAM-transverse-image-386-621.091eV.png
|
|
72
|
+
:loc: upper-right-corner
|
|
73
|
+
.. |U48Esh3-00| imagezoom:: _images/U48-00-Es-OAM-transverse-image-660-920.000eV.png
|
|
74
|
+
.. |U48Esh3-ff| imagezoom:: _images/U48-ff-Es-OAM-transverse-image-660-920.000eV.png
|
|
75
|
+
:loc: upper-right-corner
|
|
76
|
+
.. |U48Esh4-00| imagezoom:: _images/U48-00-Es-OAM-transverse-image-935-1220.000eV.png
|
|
77
|
+
.. |U48Esh4-ff| imagezoom:: _images/U48-ff-Es-OAM-transverse-image-935-1220.000eV.png
|
|
78
|
+
:loc: upper-right-corner
|
|
79
|
+
|
|
80
|
+
As expected, vorticity approximately equals the harmonic number minus one in
|
|
81
|
+
the perfect case of zero emittance and zero energy spread. This pattern is
|
|
82
|
+
quite strongly affected by electron beam energy spread. Emittance plays a much
|
|
83
|
+
lesser role as the used angular acceptance is much bigger than the electron
|
|
84
|
+
beam angular distributions (360 µrad vs 5.8 and 2.0 µrad rms).
|
|
85
|
+
"""
|
|
86
|
+
__author__ = "Konstantin Klementiev"
|
|
87
|
+
__date__ = "22 Jan 2023"
|
|
88
|
+
import os, sys; sys.path.append(os.path.join('..', '..', '..')) # analysis:ignore
|
|
89
|
+
import time
|
|
90
|
+
import pickle
|
|
91
|
+
import numpy as np
|
|
92
|
+
import matplotlib as mpl
|
|
93
|
+
import matplotlib.pyplot as plt
|
|
94
|
+
|
|
95
|
+
# import xrt.backends.raycing as raycing
|
|
96
|
+
import xrt.backends.raycing.sources as rs
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
# APPLE II period 48 mm, Kx=Ky=2, ID length=4m
|
|
100
|
+
period, n = 48., 83
|
|
101
|
+
Kx = Ky = 2 # E1 = 356.1 eV
|
|
102
|
+
|
|
103
|
+
prefix = 'U48-00' # 0 emittance, 0 eSpread
|
|
104
|
+
# prefix = 'U48-f0' # true emittance, 0 eSpread
|
|
105
|
+
# prefix = 'U48-ff' # true emittance, true eSpread
|
|
106
|
+
# also comment/uncomment right parameters in undulatorKwargs
|
|
107
|
+
|
|
108
|
+
thetaMax, psiMax = 180e-6, 180e-6 # rad
|
|
109
|
+
energy = np.linspace(200., 1400., 1101)
|
|
110
|
+
imageEnergy = [352., 621., 919., 1220.]
|
|
111
|
+
# energy = np.array(imageEnergy)
|
|
112
|
+
imageIndex = np.searchsorted(energy, imageEnergy)
|
|
113
|
+
|
|
114
|
+
Source = rs.Undulator
|
|
115
|
+
undulatorKwargs = dict(
|
|
116
|
+
eE=3., eI=0.3,
|
|
117
|
+
betaX=9., betaZ=2., # m
|
|
118
|
+
|
|
119
|
+
eEpsilonX=0., eEpsilonZ=0.,
|
|
120
|
+
# eEpsilonX=0.300, eEpsilonZ=0.008, # nmrad
|
|
121
|
+
eEspread=0.,
|
|
122
|
+
# eEspread=0.001,
|
|
123
|
+
|
|
124
|
+
period=period, n=n, Ky=Ky, Kx=Kx,
|
|
125
|
+
|
|
126
|
+
phaseDeg=90,
|
|
127
|
+
xPrimeMax=1e3*thetaMax, zPrimeMax=1e3*psiMax, # mrad
|
|
128
|
+
xPrimeMaxAutoReduce=False,
|
|
129
|
+
zPrimeMaxAutoReduce=False,
|
|
130
|
+
|
|
131
|
+
# distE='BW',
|
|
132
|
+
eMin=energy[0], eMax=energy[-1],
|
|
133
|
+
|
|
134
|
+
targetOpenCL='GPU',
|
|
135
|
+
)
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
def plot_flux(energy, flux, vorticity, distE='0.1%bw'):
|
|
139
|
+
fig = plt.figure(figsize=(6, 6))
|
|
140
|
+
ax = fig.add_subplot(111)
|
|
141
|
+
ax.set_xlabel(r'Energy (eV)')
|
|
142
|
+
if distE == '0.1%bw':
|
|
143
|
+
ylabel = r'Flux (ph/s/0.1%bw)'
|
|
144
|
+
elif distE == 'eV':
|
|
145
|
+
ylabel = r'Flux (ph/s/eV)'
|
|
146
|
+
ax.set_ylabel(ylabel)
|
|
147
|
+
if distE == '0.1%bw':
|
|
148
|
+
y = flux * energy * 1e-3
|
|
149
|
+
elif distE == 'eV':
|
|
150
|
+
y = flux
|
|
151
|
+
ax.plot(energy, y)
|
|
152
|
+
ax.set_ylim(0, None)
|
|
153
|
+
# fig.savefig(prefix+"-spectral-flux.png")
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
def plot_results():
|
|
157
|
+
outName = "U48-00-grid_method.pickle"
|
|
158
|
+
with open(outName, 'rb') as f:
|
|
159
|
+
energy, flux00, vEss00 = pickle.load(f)[0:3]
|
|
160
|
+
outName = "U48-f0-grid_method.pickle"
|
|
161
|
+
with open(outName, 'rb') as f:
|
|
162
|
+
energy, fluxF0, vEssF0 = pickle.load(f)[0:3]
|
|
163
|
+
outName = "U48-ff-grid_method.pickle"
|
|
164
|
+
with open(outName, 'rb') as f:
|
|
165
|
+
energy, fluxFF, vEssFF = pickle.load(f)[0:3]
|
|
166
|
+
|
|
167
|
+
fig = plt.figure(figsize=(6, 4))
|
|
168
|
+
ax = fig.add_subplot(111)
|
|
169
|
+
ax.set_xlabel(r'Energy (eV)')
|
|
170
|
+
ax.set_ylabel(r'Flux (ph/s/0.1%bw)')
|
|
171
|
+
ax2 = ax.twinx()
|
|
172
|
+
ax2.set_ylabel(u'Vorticity')
|
|
173
|
+
|
|
174
|
+
y = flux00 * energy * 1e-3
|
|
175
|
+
ax.plot(energy, y, label='flux, 0 emittance, 0 eSpread')
|
|
176
|
+
y = fluxF0 * energy * 1e-3
|
|
177
|
+
ax.plot(energy, y, label='flux, true emittance, 0 eSpread')
|
|
178
|
+
y = fluxFF * energy * 1e-3
|
|
179
|
+
ax.plot(energy, y, label='flux, true emittance, true eSpread')
|
|
180
|
+
ax.set_ylim(0, None)
|
|
181
|
+
ax.legend(loc=(0., 0.78))
|
|
182
|
+
|
|
183
|
+
ax2.plot(energy, vEss00, '--', label='vorticity, 0 emittance, 0 eSpread')
|
|
184
|
+
ax2.plot(energy, vEssF0, '--', label='vorticity, true emittance, 0 eSpread')
|
|
185
|
+
ax2.plot(energy, vEssFF, '--', label='vorticity, true emittance, true eSpread')
|
|
186
|
+
ax2.set_ylim(0, 3.7)
|
|
187
|
+
ax2.legend(loc=(0., 0.56))
|
|
188
|
+
plt.tight_layout()
|
|
189
|
+
|
|
190
|
+
fig.savefig("flux-vorticity.png")
|
|
191
|
+
fig.savefig("flux-vorticity.pdf")
|
|
192
|
+
plt.show()
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
def intensity_in_transverse_plane(ie, theta, psi, I0):
|
|
196
|
+
fig = plt.figure(figsize=(6, 6))
|
|
197
|
+
ax = fig.add_subplot(111)
|
|
198
|
+
ax.set_xlabel(r'θ (µrad)')
|
|
199
|
+
ax.set_ylabel(r'ψ (µrad)')
|
|
200
|
+
e = energy[ie]
|
|
201
|
+
ax.imshow(I0[:, :].T, origin="lower",
|
|
202
|
+
extent=[theta[0]*1e6, theta[-1]*1e6, psi[0]*1e6, psi[-1]*1e6])
|
|
203
|
+
ax.text(0.98, 0.98, '@E={0:.1f}eV'.format(e),
|
|
204
|
+
ha='right', va='top', color='white', transform=ax.transAxes)
|
|
205
|
+
fig.savefig(prefix+"-transverse-image-{0}-{1:.3f}eV.png".format(ie, e))
|
|
206
|
+
plt.close(fig)
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
def colored_intensity_in_transverse_plane(energy, theta, psi, I0):
|
|
210
|
+
fig = plt.figure(figsize=(7, 6))
|
|
211
|
+
ax = fig.add_axes([0.15*6/7, 0.15, 0.7*6/7, 0.7])
|
|
212
|
+
ax.set_xlabel(r'θ (µrad)')
|
|
213
|
+
ax.set_ylabel(r'ψ (µrad)')
|
|
214
|
+
axC = fig.add_axes([0.95*6/7, 0.15, 0.05, 0.7])
|
|
215
|
+
plt.setp(axC.get_xticklabels(), visible=False)
|
|
216
|
+
axC.yaxis.set_label_position("right")
|
|
217
|
+
axC.yaxis.tick_right()
|
|
218
|
+
axC.set_xlim([0, 1])
|
|
219
|
+
axC.set_ylim([energy[0], energy[-1]])
|
|
220
|
+
axC.set_ylabel('energy (eV)')
|
|
221
|
+
|
|
222
|
+
hue, _, _ = np.meshgrid(energy, theta, psi, indexing='ij')
|
|
223
|
+
hue -= hue.min()
|
|
224
|
+
hue /= hue.max()
|
|
225
|
+
sat = np.ones_like(hue)
|
|
226
|
+
val = I0 / I0.max()
|
|
227
|
+
hsvI0 = np.stack((hue, sat, val), axis=3) # (len(energy), ntheta, npsi, 3)
|
|
228
|
+
rgbI0 = mpl.colors.hsv_to_rgb(hsvI0)
|
|
229
|
+
rgbI0sum = rgbI0.sum(axis=0)
|
|
230
|
+
ax.imshow(np.swapaxes(rgbI0sum, 0, 1) / rgbI0sum.max(), origin="lower",
|
|
231
|
+
extent=[theta[0]*1e6, theta[-1]*1e6, psi[0]*1e6, psi[-1]*1e6])
|
|
232
|
+
|
|
233
|
+
hue = np.array(energy)[:, np.newaxis]
|
|
234
|
+
hue -= hue.min()
|
|
235
|
+
hue /= hue.max()
|
|
236
|
+
sat = np.ones_like(hue)
|
|
237
|
+
val = np.ones_like(hue)
|
|
238
|
+
hsvC = np.stack((hue, sat, val), axis=2) # numpy1.10
|
|
239
|
+
rgbC = mpl.colors.hsv_to_rgb(hsvC)
|
|
240
|
+
axC.imshow(rgbC / rgbC.max(), aspect='auto', origin='lower',
|
|
241
|
+
extent=[0, 1, energy[0], energy[-1]])
|
|
242
|
+
fig.savefig(prefix+"-spectral-transverse-image.png")
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
def colored_phase_in_transverse_plane(ie, theta, psi, I0, phase, vorticity,
|
|
246
|
+
fieldLabel):
|
|
247
|
+
fig = plt.figure(figsize=(7, 6))
|
|
248
|
+
ax = fig.add_axes([0.15*6/7, 0.15, 0.7*6/7, 0.7])
|
|
249
|
+
ax.set_xlabel(r'θ (µrad)')
|
|
250
|
+
ax.set_ylabel(r'ψ (µrad)')
|
|
251
|
+
e = energy[ie]
|
|
252
|
+
axC = fig.add_axes([0.95*6/7, 0.15, 0.05, 0.7])
|
|
253
|
+
plt.setp(axC.get_xticklabels(), visible=False)
|
|
254
|
+
axC.yaxis.set_label_position("right")
|
|
255
|
+
axC.yaxis.tick_right()
|
|
256
|
+
axC.set_xlim([0, 1])
|
|
257
|
+
axC.set_ylim([-1, 1]) # in units of pi
|
|
258
|
+
formatter = mpl.ticker.FormatStrFormatter('%g' + r'$ \pi$')
|
|
259
|
+
axC.yaxis.set_major_formatter(formatter)
|
|
260
|
+
axC.set_ylabel('phase')
|
|
261
|
+
|
|
262
|
+
val = I0 / I0.max()
|
|
263
|
+
sat = np.ones_like(val)
|
|
264
|
+
hue = (phase/np.pi + 1) * 0.5
|
|
265
|
+
hsvI0 = np.stack((hue, sat, val), axis=2)
|
|
266
|
+
rgbI0 = mpl.colors.hsv_to_rgb(hsvI0) # (len(energy), ntheta, npsi, 3)
|
|
267
|
+
ax.imshow(np.swapaxes(rgbI0, 0, 1) / rgbI0.max(), origin="lower",
|
|
268
|
+
extent=[theta[0]*1e6, theta[-1]*1e6, psi[0]*1e6, psi[-1]*1e6])
|
|
269
|
+
ax.text(0, 1.01, '@E={0:.1f}eV'.format(e),
|
|
270
|
+
ha='left', va='bottom', color='k', transform=ax.transAxes)
|
|
271
|
+
ax.text(1, 1.01, '{0} vorticity={1:.2f}'.format(fieldLabel, vorticity),
|
|
272
|
+
ha='right', va='bottom', color='k', transform=ax.transAxes)
|
|
273
|
+
|
|
274
|
+
hue = np.linspace(-1, 1, 101)[:, np.newaxis]
|
|
275
|
+
hue -= hue.min()
|
|
276
|
+
hue /= hue.max()
|
|
277
|
+
sat = np.ones_like(hue)
|
|
278
|
+
val = np.ones_like(hue)
|
|
279
|
+
hsvC = np.stack((hue, sat, val), axis=2) # numpy1.10
|
|
280
|
+
rgbC = mpl.colors.hsv_to_rgb(hsvC)
|
|
281
|
+
axC.imshow(rgbC / rgbC.max(), aspect='auto', origin='lower',
|
|
282
|
+
extent=[0, 1, -1, 1])
|
|
283
|
+
|
|
284
|
+
fig.savefig(prefix+"-{0}-OAM-transverse-image-{1}-{2:.3f}eV.png".format(
|
|
285
|
+
fieldLabel, ie, e))
|
|
286
|
+
plt.close(fig)
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
def grid_method():
|
|
290
|
+
if undulatorKwargs['eEspread'] == 0:
|
|
291
|
+
ntheta, npsi = 801, 801
|
|
292
|
+
eSpreadNSamples = None
|
|
293
|
+
else:
|
|
294
|
+
ntheta, npsi = 251, 251
|
|
295
|
+
eSpreadNSamples = 41
|
|
296
|
+
dtheta, dpsi = 2*thetaMax/(ntheta-1), 2*psiMax/(npsi-1)
|
|
297
|
+
|
|
298
|
+
xprime = (undulatorKwargs['eEpsilonX']*1e-9/undulatorKwargs['betaX'])**0.5
|
|
299
|
+
zprime = (undulatorKwargs['eEpsilonZ']*1e-9/undulatorKwargs['betaZ'])**0.5
|
|
300
|
+
print(xprime, zprime)
|
|
301
|
+
marginFactorX = 6*xprime/thetaMax + 1 # ±3σ
|
|
302
|
+
marginFactorZ = 6*zprime/psiMax + 1 # ±3σ
|
|
303
|
+
# print(marginFactorX, marginFactorZ)
|
|
304
|
+
ntheta = int(ntheta*marginFactorX)
|
|
305
|
+
npsi = int(npsi*marginFactorZ)
|
|
306
|
+
|
|
307
|
+
thetaPlus = np.arange(ntheta)*dtheta
|
|
308
|
+
psiPlus = np.arange(npsi)*dpsi
|
|
309
|
+
thetaPlus -= thetaPlus[-1]*0.5
|
|
310
|
+
psiPlus -= psiPlus[-1]*0.5
|
|
311
|
+
whereTheta = (-thetaMax-1e-12 < thetaPlus) & (thetaPlus < thetaMax+1e-12)
|
|
312
|
+
wherePsi = (-psiMax-1e-12 < psiPlus) & (psiPlus < psiMax+1e-12)
|
|
313
|
+
theta = thetaPlus[whereTheta]
|
|
314
|
+
psi = psiPlus[wherePsi]
|
|
315
|
+
|
|
316
|
+
source = Source(**undulatorKwargs)
|
|
317
|
+
print('E1 = ', source.E1)
|
|
318
|
+
|
|
319
|
+
flux = np.zeros_like(energy)
|
|
320
|
+
vEss = np.zeros_like(energy)
|
|
321
|
+
vEps = np.zeros_like(energy)
|
|
322
|
+
I0stack = np.zeros((len(energy), len(theta), len(psi)))
|
|
323
|
+
for ie, e in enumerate(energy):
|
|
324
|
+
print(u'energy {0:.1f} eV, {1} of {2}'.format(e, ie+1, len(energy)))
|
|
325
|
+
Is, Ip, OAMs, OAMp, Es, Ep = source.intensities_on_mesh(
|
|
326
|
+
[e], thetaPlus, psiPlus, eSpreadNSamples=eSpreadNSamples,
|
|
327
|
+
resultKind='vortex')
|
|
328
|
+
fluxIs = np.trapz(np.trapz(
|
|
329
|
+
Is[0, whereTheta, :][:, wherePsi], psi), theta)
|
|
330
|
+
fluxIp = np.trapz(np.trapz(
|
|
331
|
+
Ip[0, whereTheta, :][:, wherePsi], psi), theta)
|
|
332
|
+
flux[ie] = fluxIs + fluxIp
|
|
333
|
+
|
|
334
|
+
lEs = OAMs[0, whereTheta, :][:, wherePsi] / fluxIs
|
|
335
|
+
lEp = OAMp[0, whereTheta, :][:, wherePsi] / fluxIp
|
|
336
|
+
vEs = np.trapz(np.trapz(lEs, psi), theta)
|
|
337
|
+
vEp = np.trapz(np.trapz(lEp, psi), theta)
|
|
338
|
+
vEss[ie] = vEs
|
|
339
|
+
vEps[ie] = vEp
|
|
340
|
+
print('vorticity: Es = {0}, Ep = {1}'.format(vEs, vEp))
|
|
341
|
+
I0 = (Is + Ip)[0, whereTheta, :][:, wherePsi]
|
|
342
|
+
I0stack[ie, :, :] = I0
|
|
343
|
+
if ie in imageIndex:
|
|
344
|
+
intensity_in_transverse_plane(ie, theta, psi, I0)
|
|
345
|
+
phEs = np.angle(Es[0, whereTheta, :][:, wherePsi])
|
|
346
|
+
phEp = np.angle(Ep[0, whereTheta, :][:, wherePsi])
|
|
347
|
+
colored_phase_in_transverse_plane(
|
|
348
|
+
ie, theta, psi, I0, phEs, vEs, 'Es')
|
|
349
|
+
colored_phase_in_transverse_plane(
|
|
350
|
+
ie, theta, psi, I0, phEp, vEp, 'Ep')
|
|
351
|
+
|
|
352
|
+
integrand = flux/energy*1e3 if source.distE == 'BW' else flux
|
|
353
|
+
totalPhPerS = np.trapz(integrand, energy)
|
|
354
|
+
print('total flux = {0:.3g} ph/s'.format(totalPhPerS))
|
|
355
|
+
|
|
356
|
+
dump = [energy, flux, vEss, vEps, totalPhPerS]
|
|
357
|
+
outName = prefix+"-grid_method.pickle"
|
|
358
|
+
with open(outName, 'wb') as f:
|
|
359
|
+
pickle.dump(dump, f, protocol=2)
|
|
360
|
+
|
|
361
|
+
plot_flux(energy, flux, vEs)
|
|
362
|
+
# colored_intensity_in_transverse_plane(energy, theta, psi, I0stack)
|
|
363
|
+
plt.show()
|
|
364
|
+
|
|
365
|
+
|
|
366
|
+
if __name__ == '__main__':
|
|
367
|
+
t0 = time.time()
|
|
368
|
+
# raycing._VERBOSITY_ = 100
|
|
369
|
+
|
|
370
|
+
grid_method() # first run this with 3 settings, see prefix
|
|
371
|
+
# plot_results() # ... then this
|
|
372
|
+
print("Done in {0} s".format(time.time()-t0))
|
|
@@ -16,8 +16,13 @@ Shown are i) intensity downstream of the filter and its energy spectrum and
|
|
|
16
16
|
ii) absorbed power in the filter with its energy spectrum and power density
|
|
17
17
|
isolines at 85% and 95% of the maximum.
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
+------------+------------+
|
|
20
|
+
| |filtTI| | |filtTP| |
|
|
21
|
+
+------------+------------+
|
|
22
|
+
|
|
23
|
+
.. |filtTI| animation:: _images/filterThicknessI
|
|
24
|
+
.. |filtTP| animation:: _images/filterThicknessP
|
|
25
|
+
:loc: upper-right-corner
|
|
21
26
|
|
|
22
27
|
White-beam collimating mirror at varying pitch angle
|
|
23
28
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
@@ -51,8 +56,13 @@ Bending of collimating mirror
|
|
|
51
56
|
|
|
52
57
|
Shown are i) image downstream of the DCM and ii) image at the sample.
|
|
53
58
|
|
|
54
|
-
|
|
55
|
-
|
|
59
|
+
+-----------+-----------+
|
|
60
|
+
| |vcmR1| | |vcmR2| |
|
|
61
|
+
+-----------+-----------+
|
|
62
|
+
|
|
63
|
+
.. |vcmR1| animation:: _images/vcmR-DCM
|
|
64
|
+
.. |vcmR2| animation:: _images/vcmR-Sample
|
|
65
|
+
:loc: upper-right-corner
|
|
56
66
|
|
|
57
67
|
Bending of focusing mirror
|
|
58
68
|
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
@@ -68,8 +78,12 @@ Both mirrors (collimating + focusing) at varying pitch angle
|
|
|
68
78
|
The sagittal radius of the focusing toroid mirror is optimal at 2 mrad pitch
|
|
69
79
|
angle.
|
|
70
80
|
|
|
71
|
-
|
|
72
|
-
|
|
81
|
+
+---------------------+---------------------+
|
|
82
|
+
| |pitch-Sample-3D| | |pitch-Sample-2D| |
|
|
83
|
+
+---------------------+---------------------+
|
|
84
|
+
|
|
85
|
+
.. |pitch-Sample-3D| animation:: _images/pitch-Sample-3D
|
|
86
|
+
.. |pitch-Sample-2D| animation:: _images/pitch-Sample
|
|
73
87
|
|
|
74
88
|
.. _dmm:
|
|
75
89
|
|
|
@@ -82,6 +96,7 @@ Scanning of Double Crystal Monochromator
|
|
|
82
96
|
|
|
83
97
|
.. |Si111| animation:: _images/Si111
|
|
84
98
|
.. |Si311| animation:: _images/Si311
|
|
99
|
+
:loc: upper-right-corner
|
|
85
100
|
|
|
86
101
|
Scanning of Double Multilayer Monochromator
|
|
87
102
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
@@ -98,5 +113,6 @@ tungsten layers on top of a silicon substrate.
|
|
|
98
113
|
|
|
99
114
|
.. |MLfp| animation:: _images/multilayer_1stML
|
|
100
115
|
.. |MLexit| animation:: _images/multilayer_afterDMM
|
|
116
|
+
:loc: upper-right-corner
|
|
101
117
|
"""
|
|
102
118
|
pass
|
|
@@ -3,7 +3,7 @@ __author__ = "Konstantin Klementiev, Roman Chernikov"
|
|
|
3
3
|
__date__ = "08 Mar 2016"
|
|
4
4
|
import os, sys; sys.path.append(os.path.join('..', '..', '..')) # analysis:ignore
|
|
5
5
|
import numpy as np
|
|
6
|
-
#import matplotlib as mpl
|
|
6
|
+
# import matplotlib as mpl
|
|
7
7
|
|
|
8
8
|
import xrt.backends.raycing as raycing
|
|
9
9
|
import xrt.backends.raycing.sources as rs
|
|
@@ -16,18 +16,26 @@ import xrt.plotter as xrtp
|
|
|
16
16
|
import xrt.runner as xrtr
|
|
17
17
|
|
|
18
18
|
showIn3D = False
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
#
|
|
19
|
+
useTT = False # elastically distorted crystal reflectivity or ideal crystal
|
|
20
|
+
tOCL = "auto"
|
|
21
|
+
|
|
22
|
+
prefix = '01_BentLaueSCM_{}'.format("withTT" if useTT else "geom")
|
|
23
|
+
|
|
24
|
+
# energies = [9e3, 1.6e4, 2.5e4, 3.6e4]
|
|
25
|
+
energies = [1.6e4, 3.6e4]
|
|
26
|
+
# radii = [1e3, 5e3, 25e3, 125e3, np.inf]
|
|
27
|
+
radii = [1e3, 25e3, np.inf]
|
|
28
|
+
# dEOverE = [8e-2, 1.5e-2, 0.4e-2, 1.2e-3, 4e-4] # @ radii
|
|
29
|
+
dEOverE = [8e-2, 0.4e-2, 4e-4] # @ radii
|
|
30
|
+
# ddEOverE = [1, 1.25, 2.5, 3.] # @ energies
|
|
31
|
+
ddEOverE = [1.25, 3.] # @ energies
|
|
32
|
+
# polarization = ['hor', 'vert', '+45', '-45', 'right', 'left', None]
|
|
27
33
|
polarization = 'hor',
|
|
34
|
+
# asymmetries = [0, np.pi/12, np.pi/6]
|
|
35
|
+
asymmetries = [0, np.pi/12]
|
|
28
36
|
|
|
29
|
-
#crystalDiamond = rm.CrystalDiamond((1,1,1), 2.0592872, elements='C',
|
|
30
|
-
siCrystal = rm.CrystalSi(hkl=(1, 1, 1), geom='Laue', t=0.2)
|
|
37
|
+
# crystalDiamond = rm.CrystalDiamond((1,1,1), 2.0592872, elements='C',
|
|
38
|
+
siCrystal = rm.CrystalSi(hkl=(1, 1, 1), geom='Laue', t=0.2, useTT=useTT)
|
|
31
39
|
pLaueSCM = 1000.
|
|
32
40
|
qLaueSCM = 100.
|
|
33
41
|
limitsFSM = -8, 8
|
|
@@ -36,10 +44,12 @@ limitsFSM = -8, 8
|
|
|
36
44
|
def build_beamline():
|
|
37
45
|
beamLine = raycing.BeamLine(height=0)
|
|
38
46
|
rs.GeometricSource(beamLine, 'GeometricSource', dx=3., dz=3.,
|
|
39
|
-
dxprime=1.6e-4, distzprime=None)
|
|
47
|
+
dxprime=1.6e-4, distzprime=None, nrays=250000)
|
|
40
48
|
beamLine.fsm1 = rsc.Screen(beamLine, 'FSM1', (0, pLaueSCM - 100, 0))
|
|
41
49
|
beamLine.laueSCM = roe.BentLaueCylinder(
|
|
42
|
-
beamLine, 'LaueSCM', (0, pLaueSCM, 0), material=
|
|
50
|
+
beamLine, 'LaueSCM', (0, pLaueSCM, 0), material=siCrystal,
|
|
51
|
+
# Note: with precisionOpenCL='float32' may not converge!
|
|
52
|
+
targetOpenCL=tOCL if useTT else None, precisionOpenCL='float64')
|
|
43
53
|
beamLine.fsm2 = rsc.Screen(beamLine, 'FSM2', [0, pLaueSCM + qLaueSCM, 0])
|
|
44
54
|
return beamLine
|
|
45
55
|
|
|
@@ -86,7 +96,7 @@ def define_plots(beamLine):
|
|
|
86
96
|
ePos=1, title=beamLine.fsm2.name+'_E')
|
|
87
97
|
plot2.caxis.invertAxis = True
|
|
88
98
|
plot2.textPanel = plot2.fig.text(
|
|
89
|
-
0.
|
|
99
|
+
0.8, 0.75, '', transform=plot2.fig.transFigure, size=14, color='r',
|
|
90
100
|
ha='center')
|
|
91
101
|
plots.append(plot2)
|
|
92
102
|
|
|
@@ -99,7 +109,7 @@ def plot_generator(plots, beamLine):
|
|
|
99
109
|
suffix = polar
|
|
100
110
|
if suffix is None:
|
|
101
111
|
suffix = 'none'
|
|
102
|
-
for iradius in range(
|
|
112
|
+
for iradius in range(len(radii)):
|
|
103
113
|
radius = radii[iradius]
|
|
104
114
|
beamLine.laueSCM.R = radius
|
|
105
115
|
if radius == np.inf:
|
|
@@ -121,37 +131,39 @@ def plot_generator(plots, beamLine):
|
|
|
121
131
|
if plots:
|
|
122
132
|
plots[-1].yaxis.limits = fsm2z + limitsFSM[0], \
|
|
123
133
|
fsm2z + limitsFSM[1]
|
|
124
|
-
alpha = 0 # asymmetry angle:
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
plot
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
134
|
+
# alpha = 0 # asymmetry angle:
|
|
135
|
+
for alpha in asymmetries:
|
|
136
|
+
pitch = np.pi/2 + theta0 + alpha
|
|
137
|
+
beamLine.laueSCM.pitch = pitch
|
|
138
|
+
beamLine.laueSCM.alpha = alpha
|
|
139
|
+
for distE in 'flat', : # 'lines':
|
|
140
|
+
if distE == 'flat':
|
|
141
|
+
beamLine.sources[0].energies = eAxisMin, eAxisMax
|
|
142
|
+
sourcename = 'flat'
|
|
143
|
+
elif distE == 'lines':
|
|
144
|
+
beamLine.sources[0].energies = energy,
|
|
145
|
+
sourcename = 'line'
|
|
146
|
+
beamLine.sources[0].distE = distE
|
|
147
|
+
for plot in plots:
|
|
148
|
+
plot.caxis.offset = energy
|
|
149
|
+
plot.caxis.limits = [eAxisMin, eAxisMax]
|
|
150
|
+
fileName = '{0}_{1}_{2}_R={3}_{4:02.0f}keV_a={6:02.0f}deg_{5}'.\
|
|
151
|
+
format(prefix, plot.title, suffix, radiusStr1,
|
|
152
|
+
energy*1e-3, sourcename, np.degrees(alpha))
|
|
153
|
+
plot.saveName = fileName + '.png'
|
|
154
|
+
# plot.persistentName = fileName + '.pickle'
|
|
155
|
+
try:
|
|
156
|
+
plot.textPanel.set_text(
|
|
157
|
+
u'{0}\n$R=${1} α={2:02.0f}°\n'.format(
|
|
158
|
+
'', radiusStr2, np.degrees(alpha)))
|
|
159
|
+
except:
|
|
160
|
+
pass
|
|
161
|
+
if showIn3D:
|
|
162
|
+
beamLine.glowFrameName =\
|
|
163
|
+
'{0}_{1}_R={2}_{3:02.0f}keV_{4}.jpg'.format(
|
|
164
|
+
prefix, suffix, radiusStr1, energy*1e-3,
|
|
165
|
+
sourcename)
|
|
166
|
+
yield
|
|
155
167
|
|
|
156
168
|
|
|
157
169
|
def main():
|
|
@@ -162,8 +174,10 @@ def main():
|
|
|
162
174
|
return
|
|
163
175
|
plots = define_plots(beamLine)
|
|
164
176
|
xrtr.run_ray_tracing(
|
|
165
|
-
plots, repeats=
|
|
166
|
-
beamLine=beamLine,
|
|
177
|
+
plots, repeats=20, generator=plot_generator,
|
|
178
|
+
beamLine=beamLine,
|
|
179
|
+
processes=1 if useTT else 'half'
|
|
180
|
+
)
|
|
167
181
|
|
|
168
182
|
|
|
169
183
|
if __name__ == '__main__':
|
|
@@ -147,8 +147,8 @@ def plot_generator(plots, beamLine):
|
|
|
147
147
|
alpha = 0 # -theta0
|
|
148
148
|
pitch = math.pi/2 + theta0 + alpha
|
|
149
149
|
beamLine.laueDCM1.pitch = pitch
|
|
150
|
-
beamLine.laueDCM1.
|
|
151
|
-
beamLine.laueDCM2.
|
|
150
|
+
beamLine.laueDCM1.alpha = alpha
|
|
151
|
+
beamLine.laueDCM2.alpha = alpha
|
|
152
152
|
beamLine.laueDCM2.center[1] = pLaueDCM + fixedExit *\
|
|
153
153
|
math.cos(theta0 - alpha) / math.tan(2. * theta0)
|
|
154
154
|
for distE in 'flat', : # 'lines':
|