xrt 1.6.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- xrt-1.6.2/LICENSE.txt +22 -0
- xrt-1.6.2/MANIFEST.in +39 -0
- xrt-1.6.2/PKG-INFO +203 -0
- xrt-1.6.2/README.txt +15 -0
- xrt-1.6.2/examples/__init__.py +1 -0
- xrt-1.6.2/examples/withDummy/__init__.py +27 -0
- xrt-1.6.2/examples/withDummy/logo-python.png +0 -0
- xrt-1.6.2/examples/withDummy/logo_xrt.py +93 -0
- xrt-1.6.2/examples/withDummy/xrt_demo.py +61 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/__init__.py +177 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_absorption.py +17 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_bm.py +55 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_carbon_contamination.py +30 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_coated_mirror.py +26 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_crystal.py +45 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_crystal_dtheta.py +26 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_crystal_rocking_curve.py +37 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_mirror.py +20 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_multilayer.py +19 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_multilayer_E.py +31 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_multilayer_theta.py +19 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_slab.py +17 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_transmittivity.py +19 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_undulator.py +118 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_undulator_power.py +36 -0
- xrt-1.6.2/examples/withRaycing/00_xRayCalculator/calc_undulator_tune.py +59 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/B-Hamed.xlsx +0 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/MAX-IV-IDs-Flux.py +195 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/U32TaperedScan.py +104 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/__init__.py +1 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/bionano3.dc0 +211 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/edge_radiation.py +351 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/fluxThroughAperture.py +354 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/my_arbitrary_field_test.py +579 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/synchrotronSources.py +749 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/thetaexafssc1an_zn_hgap_00002r2.fio.gz +0 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/undulator-rays-near-wave-filament.py +149 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/undulatorHamed.py +436 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/undulatorHamed_fromField.py +436 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/undulatorTapering.py +135 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/undulatorTapering_zmq.py +136 -0
- xrt-1.6.2/examples/withRaycing/01_SynchrotronSources/undulatorVortex.py +372 -0
- xrt-1.6.2/examples/withRaycing/02_Balder_BL/BalderBL.py +321 -0
- xrt-1.6.2/examples/withRaycing/02_Balder_BL/BalderFlux.py +100 -0
- xrt-1.6.2/examples/withRaycing/02_Balder_BL/__init__.py +118 -0
- xrt-1.6.2/examples/withRaycing/02_Balder_BL/traceBalderBL.py +421 -0
- xrt-1.6.2/examples/withRaycing/02_Balder_BL/traceDCMBalderBL.py +90 -0
- xrt-1.6.2/examples/withRaycing/02_Balder_BL/traceFiltersBalderBL.py +121 -0
- xrt-1.6.2/examples/withRaycing/02_Balder_BL/traceMirrorPitchBalderBL.py +128 -0
- xrt-1.6.2/examples/withRaycing/02_Balder_BL/traceMirrorPitchBothBalderBL.py +77 -0
- xrt-1.6.2/examples/withRaycing/02_Balder_BL/traceMirrorRBalderBL.py +104 -0
- xrt-1.6.2/examples/withRaycing/03_LaueMono/01_bentLaueSCM.py +184 -0
- xrt-1.6.2/examples/withRaycing/03_LaueMono/02_bentLaueDCM_RC.py +229 -0
- xrt-1.6.2/examples/withRaycing/03_LaueMono/03_polychromatic_focus.py +347 -0
- xrt-1.6.2/examples/withRaycing/03_LaueMono/04_sagittal_bending.py +343 -0
- xrt-1.6.2/examples/withRaycing/03_LaueMono/__init__.py +60 -0
- xrt-1.6.2/examples/withRaycing/04_Lenses/__init__.py +1 -0
- xrt-1.6.2/examples/withRaycing/04_Lenses/crl_individual.py +294 -0
- xrt-1.6.2/examples/withRaycing/04_Lenses/crl_individual_3D.py +95 -0
- xrt-1.6.2/examples/withRaycing/04_Lenses/crl_stack.py +333 -0
- xrt-1.6.2/examples/withRaycing/05_QWP/01_collimated_BR.py +219 -0
- xrt-1.6.2/examples/withRaycing/05_QWP/02_collimated_LR.py +221 -0
- xrt-1.6.2/examples/withRaycing/05_QWP/03_collimated_BT.py +247 -0
- xrt-1.6.2/examples/withRaycing/05_QWP/04_collimated_LT.py +243 -0
- xrt-1.6.2/examples/withRaycing/05_QWP/05_convergent_BT.py +317 -0
- xrt-1.6.2/examples/withRaycing/05_QWP/06_convergent_LT.py +294 -0
- xrt-1.6.2/examples/withRaycing/05_QWP/07_convergent_LT_slit.py +305 -0
- xrt-1.6.2/examples/withRaycing/05_QWP/08_convergent_LT_bent.py +328 -0
- xrt-1.6.2/examples/withRaycing/05_QWP/09_convergent_LT_bentSph.py +328 -0
- xrt-1.6.2/examples/withRaycing/05_QWP/__init__.py +97 -0
- xrt-1.6.2/examples/withRaycing/06_AnalyzerBent1D/01B_BentTT.py +299 -0
- xrt-1.6.2/examples/withRaycing/06_AnalyzerBent1D/01B_SourceZCrystalThetaAlpha.py +467 -0
- xrt-1.6.2/examples/withRaycing/06_AnalyzerBent1D/01L_SourceZCrystalThetaAlpha.py +435 -0
- xrt-1.6.2/examples/withRaycing/06_AnalyzerBent1D/02_vonHamos.py +402 -0
- xrt-1.6.2/examples/withRaycing/06_AnalyzerBent1D/02_vonHamosElliptical.py +607 -0
- xrt-1.6.2/examples/withRaycing/06_AnalyzerBent1D/__init__.py +405 -0
- xrt-1.6.2/examples/withRaycing/06_AnalyzerBent1D/flux-dE.py +192 -0
- xrt-1.6.2/examples/withRaycing/06_AnalyzerBent1D/vonHamosPos.py +151 -0
- xrt-1.6.2/examples/withRaycing/07_AnalyzerBent2D/01BD_SourceZCrystalThetaAlpha.py +666 -0
- xrt-1.6.2/examples/withRaycing/07_AnalyzerBent2D/__init__.py +1 -0
- xrt-1.6.2/examples/withRaycing/08_CLAESS_BL/ClaessBL_N.py +426 -0
- xrt-1.6.2/examples/withRaycing/08_CLAESS_BL/__init__.py +58 -0
- xrt-1.6.2/examples/withRaycing/08_CLAESS_BL/traceClaessBL_N.py +265 -0
- xrt-1.6.2/examples/withRaycing/09_Gratings/BraggFresnel.py +216 -0
- xrt-1.6.2/examples/withRaycing/09_Gratings/FZP.py +153 -0
- xrt-1.6.2/examples/withRaycing/09_Gratings/Grating.py +117 -0
- xrt-1.6.2/examples/withRaycing/09_Gratings/GratingFlexPES.py +440 -0
- xrt-1.6.2/examples/withRaycing/09_Gratings/__init__.py +101 -0
- xrt-1.6.2/examples/withRaycing/09_Gratings/efficiency1-LEG.txt +45 -0
- xrt-1.6.2/examples/withRaycing/10_MultipleReflect/BentTaperedPolyCapillary.py +338 -0
- xrt-1.6.2/examples/withRaycing/10_MultipleReflect/Cylinder.py +169 -0
- xrt-1.6.2/examples/withRaycing/10_MultipleReflect/MontelMirror.py +181 -0
- xrt-1.6.2/examples/withRaycing/10_MultipleReflect/__init__.py +122 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/11.6 DiffractionOnApertures.py +212 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/IMP_1st_1p11.dat +163 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/IMP_2nd_1p11.dat +163 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/LEG_1st_1p85.dat +44 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/LEG_2nd_1p85.dat +44 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/LaguerreGaussianBeam_SiemensStar.py +157 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/MEG_1st_1p48.dat +160 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/MEG_2nd_1p48.dat +160 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/__init__.py +1 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/apex175p9.dat +163 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/coherentModePropagation.py +291 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/doubleSlitScan.py +242 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/slitscan.py +267 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/waveFZP.py +311 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/waveGrating.py +732 -0
- xrt-1.6.2/examples/withRaycing/11_Waves/waveMirrors.py +327 -0
- xrt-1.6.2/examples/withRaycing/12_Multilayer/BalderDMM.py +315 -0
- xrt-1.6.2/examples/withRaycing/12_Multilayer/traceDMM.py +89 -0
- xrt-1.6.2/examples/withRaycing/13_Warping/ExampleOfSlopeErrorMapToParametricMirror.py +80 -0
- xrt-1.6.2/examples/withRaycing/13_Warping/__init__.py +1 -0
- xrt-1.6.2/examples/withRaycing/13_Warping/mock_surface.dat +5512 -0
- xrt-1.6.2/examples/withRaycing/13_Warping/warp.py +429 -0
- xrt-1.6.2/examples/withRaycing/14_SoftiMAX/Softi_CXIw1D.py +994 -0
- xrt-1.6.2/examples/withRaycing/14_SoftiMAX/Softi_CXIw2D.py +763 -0
- xrt-1.6.2/examples/withRaycing/14_SoftiMAX/Softi_STXMw1D.py +798 -0
- xrt-1.6.2/examples/withRaycing/14_SoftiMAX/Softi_STXMw2D.py +719 -0
- xrt-1.6.2/examples/withRaycing/14_SoftiMAX/__init__.py +327 -0
- xrt-1.6.2/examples/withRaycing/15_XRD/P02_PD.xml +766 -0
- xrt-1.6.2/examples/withRaycing/15_XRD/_images/rings_on_detector.png +0 -0
- xrt-1.6.2/examples/withRaycing/15_XRD/xrd_mono.py +250 -0
- xrt-1.6.2/examples/withRaycing/16_ParametricOptimization/16.1_autoOptimization_detuning.py +182 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/1crystal.xml +241 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/4crystals.xml +933 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/BioXAS_Main.xml +1050 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/ex03_glow.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/ex03_p01.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/ex03_p02.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/ex03_p03a.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/ex03_p03b.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/ex03_p03c.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/ex03_p03d.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/exp01_glow.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/exp01_p01.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/exp02_glow.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/exp02_p01.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/exp02_p02.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/exp04_glow.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/exp04_p01.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/exp04_p02.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/exp04_p03.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/_images/exp04_p04.png +0 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/lens1.xml +175 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/lens3.xml +275 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/testAlignment.xml +924 -0
- xrt-1.6.2/examples/withRaycing/_QookBeamlines/testGrating.xml +256 -0
- xrt-1.6.2/examples/withRaycing/__init__.py +1 -0
- xrt-1.6.2/examples/withShadow/00_02/00_simple.py +11 -0
- xrt-1.6.2/examples/withShadow/00_02/01_filters.py +63 -0
- xrt-1.6.2/examples/withShadow/00_02/02_VCM_stripes.py +118 -0
- xrt-1.6.2/examples/withShadow/00_02/__init__.py +1 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/CLAESS01-norefl.ws +0 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/CVDdiamond.dat +0 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/Pt_refl.dat +0 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/Rh_refl.dat +0 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/Si111.rc +1411 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/Si311.rc +1411 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/Si_refl.dat +0 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/effic.01 +3 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/end.00 +0 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/end.01 +284 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/optax.01 +9 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/shadow-source.bat +7 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/shadow-source.sh +8 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/shadow-trace.bat +4 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/shadow-trace.sh +5 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/shadowvui.bat +4 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/start.00 +0 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/start.01 +314 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/systemfile.dat +1 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/xsh_bragg_tmp.inp +20 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/xsh_env_file.inp +1 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/xsh_epath_tmp.inp +10 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/xsh_input_source_tmp.inp +21 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/xsh_nphoton_tmp.inp +5 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/xsh_prerefl_tmp.inp +7 -0
- xrt-1.6.2/examples/withShadow/00_02/tmp0/xshwig.par +16 -0
- xrt-1.6.2/examples/withShadow/03/03_DCM_energy.py +109 -0
- xrt-1.6.2/examples/withShadow/03/__init__.py +1 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/CLAESS-noVFM.ws +0 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/CVDdiamond.dat +0 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/Rh_refl.dat +0 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/Si111.rc +1411 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/Si311.rc +1411 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/effic.01 +8 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/effic.02 +8 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/effic.03 +8 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/end.00 +0 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/end.01 +284 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/end.02 +284 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/end.03 +284 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/error_source.log +8 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/optax.01 +9 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/optax.02 +18 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/optax.03 +27 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/output_source.log +14 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/shadow-source.bat +7 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/shadow-source.sh +8 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/shadow-trace.bat +4 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/shadow-trace.sh +5 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/start.00 +0 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/start.01 +314 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/start.02 +314 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/start.03 +314 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/start_old.02 +314 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/systemfile.dat +3 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/xsh_env_file.inp +1 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/xsh_epath_tmp.inp +10 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/xsh_input_source_tmp.inp +21 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/xsh_mirinfo_tmp.inp +4 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/xsh_mirinfo_tmp.out +38 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/xsh_nphoton_tmp.inp +5 -0
- xrt-1.6.2/examples/withShadow/03/tmp0/xshwig.par +16 -0
- xrt-1.6.2/examples/withShadow/04_06/04_dE_VCM_bending.py +142 -0
- xrt-1.6.2/examples/withShadow/04_06/05_VFM_bending.py +88 -0
- xrt-1.6.2/examples/withShadow/04_06/06_mirrors_pitch.py +94 -0
- xrt-1.6.2/examples/withShadow/04_06/__init__.py +1 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/CLAESS.ws +0 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/CVDdiamond.dat +0 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/Rh_refl.dat +0 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/Si111.rc +1411 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/effic.01 +8 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/effic.02 +8 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/effic.03 +8 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/effic.04 +8 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/end.00 +0 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/end.01 +284 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/end.02 +284 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/end.03 +284 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/end.04 +284 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/optax.01 +9 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/optax.02 +18 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/optax.03 +27 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/optax.04 +36 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/shadow-source.bat +7 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/shadow-source.sh +8 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/shadow-trace.bat +4 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/shadow-trace.sh +5 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/start.00 +0 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/start.01 +314 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/start.02 +314 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/start.03 +314 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/start.04 +314 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/start_old.02 +314 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/systemfile.dat +4 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/xsh_env_file.inp +1 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/xsh_epath_tmp.inp +10 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/xsh_input_source_tmp.inp +21 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/xsh_mirinfo_tmp.inp +4 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/xsh_mirinfo_tmp.out +38 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/xsh_nphoton_tmp.inp +5 -0
- xrt-1.6.2/examples/withShadow/04_06/tmp0/xshwig.par +16 -0
- xrt-1.6.2/examples/withShadow/__init__.py +1 -0
- xrt-1.6.2/setup.cfg +4 -0
- xrt-1.6.2/setup.py +214 -0
- xrt-1.6.2/tests/__init__.py +1 -0
- xrt-1.6.2/tests/convexHull.py +38 -0
- xrt-1.6.2/tests/kde.py +38 -0
- xrt-1.6.2/tests/raycing/CXRO-Reflectivities/CSiO2_p_rough1.CXRO.gz +0 -0
- xrt-1.6.2/tests/raycing/CXRO-Reflectivities/CSiO2_s_rough1.CXRO.gz +0 -0
- xrt-1.6.2/tests/raycing/CXRO-Reflectivities/RhSi_p_rough2.CXRO.gz +0 -0
- xrt-1.6.2/tests/raycing/CXRO-Reflectivities/RhSi_s_rough2.CXRO.gz +0 -0
- xrt-1.6.2/tests/raycing/CXRO-Reflectivities/WSi300id0.CXRO.gz +0 -0
- xrt-1.6.2/tests/raycing/CXRO-Reflectivities/WSi300id6.CXRO.gz +0 -0
- xrt-1.6.2/tests/raycing/IR/RefractiveIndexINFO_BK7.csv +125 -0
- xrt-1.6.2/tests/raycing/IR/one_plate_test.py +123 -0
- xrt-1.6.2/tests/raycing/IR/wedge_diamond.xml +233 -0
- xrt-1.6.2/tests/raycing/RemoteOpenCLCalculation/__init__.py +53 -0
- xrt-1.6.2/tests/raycing/RemoteOpenCLCalculation/__pycache__/__init__.cpython-313.pyc +0 -0
- xrt-1.6.2/tests/raycing/RemoteOpenCLCalculation/__pycache__/__init__.cpython-314.pyc +0 -0
- xrt-1.6.2/tests/raycing/RemoteOpenCLCalculation/__pycache__/zmq_server.cpython-313.pyc +0 -0
- xrt-1.6.2/tests/raycing/RemoteOpenCLCalculation/__pycache__/zmq_server.cpython-314.pyc +0 -0
- xrt-1.6.2/tests/raycing/RemoteOpenCLCalculation/queue_device.py +31 -0
- xrt-1.6.2/tests/raycing/RemoteOpenCLCalculation/zmq_server.py +199 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Ag_absCoeff.xcrosssec.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Al_absCoeff.xcrosssec.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Au_absCoeff.xcrosssec.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Be_absCoeff.xcrosssec.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Diamond60mum.xpower.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Ni_absCoeff.xcrosssec.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Pt4mrad_p.xf1f2.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Pt4mrad_s.xf1f2.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Rh2mrad_p.xf1f2.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Rh2mrad_s.xf1f2.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/ScCr_ML_reflection_REFLEC.npy +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/ScCr_ML_transmission_REFLEC.npy +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Si05deg_p.xf1f2.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Si05deg_s.xf1f2.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/SiO205deg_p.xf1f2.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/SiO205deg_s.xf1f2.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/W25A_10kev_p.mlayer.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/W25A_10kev_s.mlayer.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/WSi100_45A40.mlayer.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/WSi45A04.mlayer.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/WSi45_100A40.mlayer.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/Zn_absCoeff.xcrosssec.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-Reflectivities/mLScCr-spph.mlayer.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_007mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_007mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_007mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_007mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_007mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_007mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_007mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_007mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_007mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_007mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_007mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_007mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_100mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_100mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_100mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_100mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_100mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_100mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_100mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_100mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_100mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_100mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_100mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_100mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_thick_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_thick_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_thick_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_thick_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_thick_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_thick_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_thick_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_thick_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_thick_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_thick_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_thick_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi111_thick_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_007mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_007mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_007mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_007mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_007mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_007mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_007mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_007mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_007mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_007mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_007mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_007mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_100mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_100mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_100mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_100mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_100mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_100mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_100mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_100mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_100mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_100mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_100mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_100mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_thick_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_thick_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_thick_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_thick_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_thick_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_thick_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_thick_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_thick_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_thick_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_thick_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_thick_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/bSi333_thick_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_007mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_007mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_007mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_007mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_007mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_007mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_007mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_007mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_007mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_007mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_007mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_007mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_100mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_100mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_100mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_100mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_100mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_100mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_100mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_100mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_100mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_100mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_100mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi111_100mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_007mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_007mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_007mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_007mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_007mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_007mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_007mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_007mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_007mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_007mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_007mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_007mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_100mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_100mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_100mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_100mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_100mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_100mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_100mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_100mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_100mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_100mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_100mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/btSi333_100mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/graphite002_mosaic04_03kev.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/graphite002_mosaic04_08kev.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/graphite002_mosaic04_17kev.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_007mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_007mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_007mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_007mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_007mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_007mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_007mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_007mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_007mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_007mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_007mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_007mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_100mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_100mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_100mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_100mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_100mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_100mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_100mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_100mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_100mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_100mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_100mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi111_100mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_007mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_007mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_007mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_007mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_007mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_007mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_007mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_007mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_007mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_007mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_007mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_007mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_100mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_100mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_100mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_100mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_100mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_100mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_100mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_100mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_100mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_100mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_100mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/lSi333_100mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_007mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_007mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_007mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_007mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_007mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_007mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_007mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_007mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_007mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_007mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_007mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_007mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_100mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_100mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_100mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_100mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_100mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_100mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_100mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_100mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_100mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_100mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_100mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi111_100mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_007mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_007mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_007mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_007mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_007mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_007mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_007mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_007mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_007mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_007mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_007mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_007mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_100mum_-5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_100mum_-5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_100mum_-5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_100mum_-5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_100mum_0_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_100mum_0_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_100mum_0_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_100mum_0_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_100mum_5_p.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_100mum_5_p.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_100mum_5_s.xc.gz +0 -0
- xrt-1.6.2/tests/raycing/XOP-RockingCurves/ltSi333_100mum_5_s.xin.gz +0 -0
- xrt-1.6.2/tests/raycing/__init__.py +1 -0
- xrt-1.6.2/tests/raycing/info_opencl.py +38 -0
- xrt-1.6.2/tests/raycing/laguerre_hermite_gaussian_beam.py +432 -0
- xrt-1.6.2/tests/raycing/misc/bessy.dc0.gz +0 -0
- xrt-1.6.2/tests/raycing/read_NOM_maps.py +172 -0
- xrt-1.6.2/tests/raycing/test_VLSgrating.py +39 -0
- xrt-1.6.2/tests/raycing/test_asymmetric_xtal.py +171 -0
- xrt-1.6.2/tests/raycing/test_backcattering_xtal_Shvydko.py +24 -0
- xrt-1.6.2/tests/raycing/test_coherent_fraction_stack.py +143 -0
- xrt-1.6.2/tests/raycing/test_crystals.py +31 -0
- xrt-1.6.2/tests/raycing/test_ellipse_2.py +169 -0
- xrt-1.6.2/tests/raycing/test_ellipsoid_tube_mirror.py +150 -0
- xrt-1.6.2/tests/raycing/test_hyperboloid_tube_mirror.py +155 -0
- xrt-1.6.2/tests/raycing/test_laue_bent.py +285 -0
- xrt-1.6.2/tests/raycing/test_materials.py +986 -0
- xrt-1.6.2/tests/raycing/test_mosaic_xtal.py +310 -0
- xrt-1.6.2/tests/raycing/test_mosaic_xtal_thin.py +149 -0
- xrt-1.6.2/tests/raycing/test_multilayer_transmission.py +78 -0
- xrt-1.6.2/tests/raycing/test_oes.py +10 -0
- xrt-1.6.2/tests/raycing/test_param_mirror.py +222 -0
- xrt-1.6.2/tests/raycing/test_polygonal_aperture.py +47 -0
- xrt-1.6.2/tests/raycing/test_pytte.py +372 -0
- xrt-1.6.2/tests/raycing/test_sources.py +394 -0
- xrt-1.6.2/tests/raycing/test_undulator_convergence.py +232 -0
- xrt-1.6.2/tests/raycing/test_undulator_on_mesh.py +151 -0
- xrt-1.6.2/tests/raycing/test_undulator_size.py +238 -0
- xrt-1.6.2/tests/speed/1_SourceZCrystalThetaAlpha_speed.py +614 -0
- xrt-1.6.2/tests/speed/2_synchrotronSources_speed.py +215 -0
- xrt-1.6.2/tests/speed/3_Softi_CXIw2D_speed.py +471 -0
- xrt-1.6.2/tests/speed/__init__.py +72 -0
- xrt-1.6.2/xrt/__init__.py +251 -0
- xrt-1.6.2/xrt/backends/__init__.py +1 -0
- xrt-1.6.2/xrt/backends/dummy.py +24 -0
- xrt-1.6.2/xrt/backends/raycing/OE.cl +964 -0
- xrt-1.6.2/xrt/backends/raycing/__init__.py +1363 -0
- xrt-1.6.2/xrt/backends/raycing/apertures.py +1185 -0
- xrt-1.6.2/xrt/backends/raycing/coherence.py +404 -0
- xrt-1.6.2/xrt/backends/raycing/data/AtomicData.dat +93 -0
- xrt-1.6.2/xrt/backends/raycing/data/BrCo.npz +0 -0
- xrt-1.6.2/xrt/backends/raycing/data/Chantler.npz +0 -0
- xrt-1.6.2/xrt/backends/raycing/data/Henke.npz +0 -0
- xrt-1.6.2/xrt/backends/raycing/data/f0_xop.dat +1136 -0
- xrt-1.6.2/xrt/backends/raycing/diffract.cl +280 -0
- xrt-1.6.2/xrt/backends/raycing/materials.cl +2072 -0
- xrt-1.6.2/xrt/backends/raycing/materials.py +2705 -0
- xrt-1.6.2/xrt/backends/raycing/materials_compounds.py +853 -0
- xrt-1.6.2/xrt/backends/raycing/materials_crystals.py +1439 -0
- xrt-1.6.2/xrt/backends/raycing/materials_elemental.py +717 -0
- xrt-1.6.2/xrt/backends/raycing/modes.py +457 -0
- xrt-1.6.2/xrt/backends/raycing/myopencl.py +667 -0
- xrt-1.6.2/xrt/backends/raycing/oes.py +4008 -0
- xrt-1.6.2/xrt/backends/raycing/oes_base.py +2568 -0
- xrt-1.6.2/xrt/backends/raycing/physconsts.py +36 -0
- xrt-1.6.2/xrt/backends/raycing/pyTTE_x/__init__.py +9 -0
- xrt-1.6.2/xrt/backends/raycing/pyTTE_x/crystal_vectors.py +58 -0
- xrt-1.6.2/xrt/backends/raycing/pyTTE_x/deformation.py +300 -0
- xrt-1.6.2/xrt/backends/raycing/pyTTE_x/elastic_tensors.py +384 -0
- xrt-1.6.2/xrt/backends/raycing/pyTTE_x/legacy.py +326 -0
- xrt-1.6.2/xrt/backends/raycing/pyTTE_x/pyTTE.py +906 -0
- xrt-1.6.2/xrt/backends/raycing/pyTTE_x/pyTTE_rkpy.py +1038 -0
- xrt-1.6.2/xrt/backends/raycing/pyTTE_x/pyTTE_rkpy_qt.py +855 -0
- xrt-1.6.2/xrt/backends/raycing/pyTTE_x/quantity.py +344 -0
- xrt-1.6.2/xrt/backends/raycing/pyTTE_x/rotation_matrix.py +105 -0
- xrt-1.6.2/xrt/backends/raycing/pyTTE_x/ttcrystal.py +890 -0
- xrt-1.6.2/xrt/backends/raycing/pyTTE_x/ttscan.py +241 -0
- xrt-1.6.2/xrt/backends/raycing/run.py +7 -0
- xrt-1.6.2/xrt/backends/raycing/screens.py +439 -0
- xrt-1.6.2/xrt/backends/raycing/sources.py +740 -0
- xrt-1.6.2/xrt/backends/raycing/sources_beams.py +423 -0
- xrt-1.6.2/xrt/backends/raycing/sources_geoms.py +997 -0
- xrt-1.6.2/xrt/backends/raycing/sources_legacy.py +968 -0
- xrt-1.6.2/xrt/backends/raycing/sources_sybase.py +1614 -0
- xrt-1.6.2/xrt/backends/raycing/sources_synchr.py +2033 -0
- xrt-1.6.2/xrt/backends/raycing/stages.py +210 -0
- xrt-1.6.2/xrt/backends/raycing/undulator.cl +1072 -0
- xrt-1.6.2/xrt/backends/raycing/waves.py +889 -0
- xrt-1.6.2/xrt/backends/raycing/xrt_complex_double.cl +95 -0
- xrt-1.6.2/xrt/backends/raycing/xrt_complex_float.cl +97 -0
- xrt-1.6.2/xrt/backends/shadow.py +503 -0
- xrt-1.6.2/xrt/gui/__init__.py +1 -0
- xrt-1.6.2/xrt/gui/commons/__init__.py +1 -0
- xrt-1.6.2/xrt/gui/commons/_images/1-LEG_profile-adhoc.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/1-LEG_profile-default.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/ePos=0.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/ePos=1.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/ePos=2.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/ex03_glow.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/ex03_p01.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/ex03_p02.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/ex03_p03a.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/ex03_p03b.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/ex03_p03c.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/ex03_p03d.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/filterFootprint2_I400mum.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/filterFootprint2_I400mum_norm1.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/filterFootprint2_I400mum_norm2.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/invertColorMap=0_negative=0.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/invertColorMap=0_negative=1.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/invertColorMap=1_negative=0.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/invertColorMap=1_negative=1.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/negative=1+fullNegative.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/offset0.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/offset5000.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/outline00.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/outline05.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/outline10.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/qookSplash2.gif +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/qookTutor01.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/qookTutor02.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/qookTutor03.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/qookTutor04.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/qookTutor05.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/qookTutor06.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/qookTutor07.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/qookTutor08.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/qookTutor09.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/qookTutor10.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_images/qookTutor11.png +0 -0
- xrt-1.6.2/xrt/gui/commons/_themes/qook/layout.html +18 -0
- xrt-1.6.2/xrt/gui/commons/_themes/qook/page.html +23 -0
- xrt-1.6.2/xrt/gui/commons/_themes/qook/static/default.css_t +342 -0
- xrt-1.6.2/xrt/gui/commons/_themes/qook/static/jquery.js +2 -0
- xrt-1.6.2/xrt/gui/commons/_themes/qook/static/math_config_win32.js +0 -0
- xrt-1.6.2/xrt/gui/commons/_themes/qook/static/utils.js +34 -0
- xrt-1.6.2/xrt/gui/commons/_themes/qook/theme.conf +31 -0
- xrt-1.6.2/xrt/gui/commons/conf.py +130 -0
- xrt-1.6.2/xrt/gui/commons/ext.py +125 -0
- xrt-1.6.2/xrt/gui/commons/gl.py +45 -0
- xrt-1.6.2/xrt/gui/commons/qt.py +186 -0
- xrt-1.6.2/xrt/gui/xrtBentXtal.py +1383 -0
- xrt-1.6.2/xrt/gui/xrtGlow/__init__.py +4679 -0
- xrt-1.6.2/xrt/gui/xrtGlow/_icons/icon-GLow.ico +0 -0
- xrt-1.6.2/xrt/gui/xrtGlow/notes.py +115 -0
- xrt-1.6.2/xrt/gui/xrtQook/__init__.py +3943 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/3dg_256.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/GPU4.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/add1.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/add2.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/add3.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/add4.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/add5.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/add6.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/dialog-information.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/dialog-question.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/eyeglasses7_128.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/filenew.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/fileopen.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/filesave.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/filesaveas.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/home.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/index.txt +13 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/light_bulb.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/logo-xrtQt.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/pythonscript.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/pythonscriptsave.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/pythonscriptsaveas.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/readme.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/run.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/xbcc.ico +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/xbcc.png +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/_icons/xrQt1.ico +0 -0
- xrt-1.6.2/xrt/gui/xrtQook/tutorial.py +121 -0
- xrt-1.6.2/xrt/gui/xrtQookStart.py +53 -0
- xrt-1.6.2/xrt/gui/xrtQookStart.pyw +52 -0
- xrt-1.6.2/xrt/kde.py +298 -0
- xrt-1.6.2/xrt/multipro.py +379 -0
- xrt-1.6.2/xrt/plotter.py +2024 -0
- xrt-1.6.2/xrt/runner.py +651 -0
- xrt-1.6.2/xrt/version.py +4 -0
- xrt-1.6.2/xrt/xrt_logo.ico +0 -0
- xrt-1.6.2/xrt.egg-info/PKG-INFO +203 -0
- xrt-1.6.2/xrt.egg-info/SOURCES.txt +716 -0
- xrt-1.6.2/xrt.egg-info/dependency_links.txt +1 -0
- xrt-1.6.2/xrt.egg-info/not-zip-safe +1 -0
- xrt-1.6.2/xrt.egg-info/requires.txt +15 -0
- xrt-1.6.2/xrt.egg-info/top_level.txt +1 -0
xrt-1.6.2/LICENSE.txt
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
The MIT License
|
|
2
|
+
---------------
|
|
3
|
+
|
|
4
|
+
Copyright (c) 2014 Konstantin Klementiev, Roman Chernikov
|
|
5
|
+
|
|
6
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
7
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
8
|
+
in the Software without restriction, including without limitation the rights
|
|
9
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
10
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
11
|
+
furnished to do so, subject to the following conditions:
|
|
12
|
+
|
|
13
|
+
The above copyright notice and this permission notice shall be included in
|
|
14
|
+
all copies or substantial portions of the Software.
|
|
15
|
+
|
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
17
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
18
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
19
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
20
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
21
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
22
|
+
THE SOFTWARE.
|
xrt-1.6.2/MANIFEST.in
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
include README.txt
|
|
2
|
+
include LICENSE.txt
|
|
3
|
+
include xrt\xrt_logo.ico
|
|
4
|
+
include examples\__init__.py
|
|
5
|
+
include examples\withDummy\logo-python.png
|
|
6
|
+
recursive-include examples\withDummy *.py
|
|
7
|
+
include examples\withRaycing\__init__.py
|
|
8
|
+
recursive-include examples\withRaycing\_QookBeamlines *
|
|
9
|
+
recursive-include examples\withRaycing\00_xRayCalculator *.py
|
|
10
|
+
recursive-include examples\withRaycing\01_SynchrotronSources *.py B*.xlsx b*.dc0 *.gz
|
|
11
|
+
recursive-include examples\withRaycing\02_Balder_BL *.py
|
|
12
|
+
recursive-include examples\withRaycing\03_LaueMono *.py
|
|
13
|
+
recursive-include examples\withRaycing\04_Lenses *.py
|
|
14
|
+
recursive-include examples\withRaycing\05_QWP *.py
|
|
15
|
+
recursive-include examples\withRaycing\06_AnalyzerBent1D *.py
|
|
16
|
+
recursive-include examples\withRaycing\07_AnalyzerBent2D *.py
|
|
17
|
+
recursive-include examples\withRaycing\08_CLAESS_BL *.py
|
|
18
|
+
recursive-include examples\withRaycing\09_Gratings *.py *.txt
|
|
19
|
+
recursive-include examples\withRaycing\10_MultipleReflect *.py
|
|
20
|
+
recursive-include examples\withRaycing\11_Waves *.py *.dat
|
|
21
|
+
recursive-include examples\withRaycing\12_Multilayer *.py
|
|
22
|
+
recursive-include examples\withRaycing\13_Warping *.py *.dat
|
|
23
|
+
recursive-include examples\withRaycing\14_SoftiMAX *.py
|
|
24
|
+
recursive-include examples\withRaycing\15_XRD *
|
|
25
|
+
recursive-include examples\withRaycing\16_ParametricOptimization *.py
|
|
26
|
+
include examples\withShadow\__init__.py
|
|
27
|
+
recursive-include examples\withShadow\00_02 *.py
|
|
28
|
+
recursive-include examples\withShadow\00_02\tmp0 *
|
|
29
|
+
recursive-include examples\withShadow\03 *.py
|
|
30
|
+
recursive-include examples\withShadow\03\tmp0 *
|
|
31
|
+
recursive-include examples\withShadow\04_06 *.py
|
|
32
|
+
recursive-include examples\withShadow\04_06\tmp0 *
|
|
33
|
+
recursive-include tests *.py
|
|
34
|
+
recursive-include tests\raycing\CXRO-Reflectivities *
|
|
35
|
+
recursive-include tests\raycing\IR *
|
|
36
|
+
recursive-include tests\raycing\misc *
|
|
37
|
+
recursive-include tests\raycing\RemoteOpenCLCalculation *
|
|
38
|
+
recursive-include tests\raycing\XOP-Reflectivities *
|
|
39
|
+
recursive-include tests\raycing\XOP-RockingCurves *
|
xrt-1.6.2/PKG-INFO
ADDED
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: xrt
|
|
3
|
+
Version: 1.6.2
|
|
4
|
+
Summary: Ray tracing and wave propagation in x-ray regime, primarily meant for modeling synchrotron sources, beamlines and beamline elements. Includes a GUI for creating a beamline and viewing it in 3D.
|
|
5
|
+
Home-page: http://xrt.readthedocs.io
|
|
6
|
+
Author: Konstantin Klementiev, Roman Chernikov
|
|
7
|
+
Author-email: konstantin.klementiev@gmail.com, rchernikov@gmail.com
|
|
8
|
+
License: MIT License
|
|
9
|
+
Platform: OS Independent
|
|
10
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
11
|
+
Classifier: Intended Audience :: Science/Research
|
|
12
|
+
Classifier: Natural Language :: English
|
|
13
|
+
Classifier: Operating System :: OS Independent
|
|
14
|
+
Classifier: Programming Language :: Python :: 2
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
17
|
+
Classifier: Topic :: Scientific/Engineering :: Physics
|
|
18
|
+
Classifier: Topic :: Scientific/Engineering :: Visualization
|
|
19
|
+
Description-Content-Type: text/x-rst
|
|
20
|
+
License-File: LICENSE.txt
|
|
21
|
+
Requires-Dist: numpy>=1.8.0
|
|
22
|
+
Requires-Dist: scipy>=0.17.0
|
|
23
|
+
Requires-Dist: matplotlib>=2.0.0
|
|
24
|
+
Requires-Dist: sphinx>=1.6.2
|
|
25
|
+
Requires-Dist: sphinxcontrib-jquery
|
|
26
|
+
Requires-Dist: distro
|
|
27
|
+
Requires-Dist: sphinx-tabs>=3.4.7
|
|
28
|
+
Requires-Dist: colorama
|
|
29
|
+
Requires-Dist: pyopencl
|
|
30
|
+
Requires-Dist: pyopengl
|
|
31
|
+
Requires-Dist: siphash24
|
|
32
|
+
Provides-Extra: pyqt5
|
|
33
|
+
Requires-Dist: pyqt5; extra == "pyqt5"
|
|
34
|
+
Requires-Dist: PyQtWebEngine; extra == "pyqt5"
|
|
35
|
+
Dynamic: author
|
|
36
|
+
Dynamic: author-email
|
|
37
|
+
Dynamic: classifier
|
|
38
|
+
Dynamic: description
|
|
39
|
+
Dynamic: description-content-type
|
|
40
|
+
Dynamic: home-page
|
|
41
|
+
Dynamic: keywords
|
|
42
|
+
Dynamic: license
|
|
43
|
+
Dynamic: license-file
|
|
44
|
+
Dynamic: platform
|
|
45
|
+
Dynamic: provides-extra
|
|
46
|
+
Dynamic: requires-dist
|
|
47
|
+
Dynamic: summary
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
Package xrt is a python software library for ray tracing and wave propagation
|
|
51
|
+
in x-ray regime. It is primarily meant for modeling synchrotron sources,
|
|
52
|
+
beamlines and beamline elements. Includes a GUI for creating a beamline and
|
|
53
|
+
interactively viewing it in 3D.
|
|
54
|
+
|
|
55
|
+
Features of xrt
|
|
56
|
+
---------------
|
|
57
|
+
|
|
58
|
+
* *Rays and waves*. Classical ray tracing and wave propagation via Kirchhoff
|
|
59
|
+
integrals, also freely intermixed. No further approximations, such as thin
|
|
60
|
+
lens or paraxial. The optical surfaces may have figure errors, analytical or
|
|
61
|
+
measured. In wave propagation, partially coherent radiation is treated by
|
|
62
|
+
incoherent addition of coherently diffracted fields generated per electron.
|
|
63
|
+
Propagation of _individual_ coherent source modes is possible as waves,
|
|
64
|
+
hybrid waves (i.e. partially as rays and then as waves) and only rays.
|
|
65
|
+
|
|
66
|
+
* *Publication quality graphics*. 1D and 2D position histograms are
|
|
67
|
+
*simultaneously* coded by hue and brightness. Typically, colors represent
|
|
68
|
+
energy and brightness represents beam intensity. The user may select other
|
|
69
|
+
quantities to be encoded by colors: angular and positional distributions,
|
|
70
|
+
various polarization properties, beam categories, number of reflections,
|
|
71
|
+
incidence angle etc. Brightness can also encode partial flux for a selected
|
|
72
|
+
polarization and incident or absorbed power. Publication quality plots are
|
|
73
|
+
provided by matplotlib with image formats PNG, PostScript, PDF and SVG.
|
|
74
|
+
|
|
75
|
+
* *Unlimited number of rays*. The colored histograms are *cumulative*. The
|
|
76
|
+
accumulation can be stopped and resumed.
|
|
77
|
+
|
|
78
|
+
* *Parallel execution*. xrt can be run in parallel in several threads or
|
|
79
|
+
processes (can be opted), which accelerates the execution on multi-core
|
|
80
|
+
computers. Alternatively, xrt can use the power of GPUs via OpenCL for
|
|
81
|
+
running special tasks such as the calculation of an undulator source or
|
|
82
|
+
performing wave propagation.
|
|
83
|
+
|
|
84
|
+
* *Scripting in Python*. xrt can be run within Python scripts to generate a
|
|
85
|
+
series of images under changing geometrical or physical parameters. The image
|
|
86
|
+
brightness and 1D histograms can be normalized to the global maximum
|
|
87
|
+
throughout the series.
|
|
88
|
+
|
|
89
|
+
* *Synchrotron sources*. Bending magnet, wiggler, undulator and elliptic
|
|
90
|
+
undulator are calculated internally within xrt. Please look the section
|
|
91
|
+
"Comparison of synchrotron source codes" for the comparison other popular
|
|
92
|
+
codes. If the photon source is one of the synchrotron sources, the total flux
|
|
93
|
+
in the beam is reported not just in number of rays but in physical units of
|
|
94
|
+
ph/s. The total power or absorbed power can be opted instead of flux and is
|
|
95
|
+
reported in W. The power density can be visualized by isolines. The magnetic
|
|
96
|
+
gap of undulators can be tapered. Undulators can be calculated in near field.
|
|
97
|
+
Custom magnetic field is also possible. Undulators can be calculated on GPU,
|
|
98
|
+
with a high gain in computation speed, which is important for tapering and
|
|
99
|
+
near field calculations.
|
|
100
|
+
|
|
101
|
+
* *Shapes*. There are several predefined shapes of optical elements implemented
|
|
102
|
+
as python classes. The python inheritance mechanism simplifies creation of
|
|
103
|
+
other shapes: the user specifies methods for surface height and surface
|
|
104
|
+
normal. The surface and the normal are defined either in local Cartesian
|
|
105
|
+
coordinates or in user-defined parametric coordinates. Parametric
|
|
106
|
+
representation enables closed shapes such as capillaries or wave guides. It
|
|
107
|
+
also enables exact solutions for complex shapes (e.g. a logarithmic spiral or
|
|
108
|
+
an ellipsoid) without any expansion. The methods of finding the intersections
|
|
109
|
+
of rays with the surface are very robust and can cope with pathological cases
|
|
110
|
+
such as sharp surface kinks. Notice that the search for intersection points
|
|
111
|
+
does not involve any approximation and has only numerical inaccuracy which is
|
|
112
|
+
set by default as 1 fm. Any surface can be combined with a (differently and
|
|
113
|
+
variably oriented) crystal structure and/or (variable) grating vector.
|
|
114
|
+
Surfaces can be faceted.
|
|
115
|
+
|
|
116
|
+
* *Energy dispersive elements*. Implemented are crystals in dynamical
|
|
117
|
+
diffraction, gratings (also with efficiency calculations), Fresnel zone
|
|
118
|
+
plates, Bragg-Fresnel optics and multilayers in dynamical diffraction.
|
|
119
|
+
Crystals can work in Bragg or Laue cases, in reflection or in transmission.
|
|
120
|
+
The two-field polarization phenomena are fully preserved, also within the
|
|
121
|
+
Darwin diffraction plateau, thus enabling the ray tracing of crystal-based
|
|
122
|
+
phase retarders.
|
|
123
|
+
|
|
124
|
+
* *Materials*. The material properties are incorporated using three different
|
|
125
|
+
tabulations of the scattering factors, with differently wide and differently
|
|
126
|
+
dense energy meshes. Refractive index and absorption coefficient are
|
|
127
|
+
calculated from the scattering factors. Two-surface bodies, such as plates or
|
|
128
|
+
refractive lenses, are treated with both refraction and absorption.
|
|
129
|
+
|
|
130
|
+
* *Multiple reflections*. xrt can trace multiple reflections in a single
|
|
131
|
+
optical element. This is useful, for example in 'whispering gallery' optics
|
|
132
|
+
or in Montel or Wolter mirrors.
|
|
133
|
+
|
|
134
|
+
* *Non-sequential optics*. xrt can trace non-sequential optics where different
|
|
135
|
+
parts of the incoming beam meet different surfaces. Examples of such optics
|
|
136
|
+
are poly-capillaries and Wolter mirrors.
|
|
137
|
+
|
|
138
|
+
* *Singular optics*. xrt correctly propagates vortex beams, which can be used
|
|
139
|
+
for studying the creation of vortex beams by transmissive or reflective
|
|
140
|
+
optics.
|
|
141
|
+
|
|
142
|
+
* *Global coordinate system*. The optical elements are positioned in a global
|
|
143
|
+
coordinate system. This is convenient for modeling a real synchrotron
|
|
144
|
+
beamline. The coordinates in this system can be directly taken from a CAD
|
|
145
|
+
library. The optical surfaces are defined in their local systems for the
|
|
146
|
+
user's convenience.
|
|
147
|
+
|
|
148
|
+
* *Beam categories*. xrt discriminates rays by several categories: `good`,
|
|
149
|
+
`out`, `over` and `dead`. This distinction simplifies the adjustment of
|
|
150
|
+
entrance and exit slits. An alarm is triggered if the fraction of dead rays
|
|
151
|
+
exceeds a specified level.
|
|
152
|
+
|
|
153
|
+
* *Portability*. xrt runs on Windows and Unix-like platforms, wherever you can
|
|
154
|
+
run python.
|
|
155
|
+
|
|
156
|
+
* *Examples*. xrt comes with many examples; see the galleries, the links are at
|
|
157
|
+
the top bar.
|
|
158
|
+
|
|
159
|
+
xrtQook -- a GUI for creating scripts
|
|
160
|
+
-------------------------------------
|
|
161
|
+
|
|
162
|
+
The main interface to xrt is through a python script. Many examples of such
|
|
163
|
+
scripts can be found in the supplied folders 'examples' and 'tests'. The script
|
|
164
|
+
imports the modules of xrt, instantiates beamline parts, such as synchrotron or
|
|
165
|
+
geometric sources, various optical elements, apertures and screens, specifies
|
|
166
|
+
required materials for reflection, refraction or diffraction, defines plots and
|
|
167
|
+
sets job parameters.
|
|
168
|
+
|
|
169
|
+
The Qt tool xrtQook takes these ingredients as GUI elements and prepares a
|
|
170
|
+
ready to use script that can be run within the tool itself or in an external
|
|
171
|
+
Python context. xrtQook has a parallelly updated help panel that provides a
|
|
172
|
+
complete list of parameters for the used objects. xrtQook writes/reads the
|
|
173
|
+
recipes of beamlines into/from xml files.
|
|
174
|
+
|
|
175
|
+
xrtGlow -- an interactive 3D beamline viewer
|
|
176
|
+
--------------------------------------------
|
|
177
|
+
|
|
178
|
+
The beamline created in xrtQook can be interactively viewed in an OpenGL based
|
|
179
|
+
widget xrtGlow. It visualizes beams, footprints, surfaces, apertures and
|
|
180
|
+
screens. The brightness represents intensity and the color represents an
|
|
181
|
+
auxiliary user-selected distribution, typically energy. A virtual screen can be
|
|
182
|
+
put at any position and dragged by mouse with simultaneous observation of the
|
|
183
|
+
beam distribution on it.
|
|
184
|
+
|
|
185
|
+
The primary purpose of xrtGlow is to demonstrate the alignment correctness
|
|
186
|
+
given the fact that xrtQook can automatically calculate several positional and
|
|
187
|
+
angular parameters.
|
|
188
|
+
|
|
189
|
+
Installation
|
|
190
|
+
------------
|
|
191
|
+
|
|
192
|
+
Install it by pip or conda or get xrt from `GitHub` and use it with or without
|
|
193
|
+
installation.
|
|
194
|
+
|
|
195
|
+
The distribution archive also includes tests and examples. The complete
|
|
196
|
+
documentation is available online on `Read the Docs` and offline as zip file on
|
|
197
|
+
GitHub`.
|
|
198
|
+
|
|
199
|
+
Get help
|
|
200
|
+
--------
|
|
201
|
+
|
|
202
|
+
For getting help and/or reporting a bug please use `GitHub xrt Issues`.
|
|
203
|
+
|
xrt-1.6.2/README.txt
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
Installation
|
|
2
|
+
------------
|
|
3
|
+
|
|
4
|
+
Unzip the .zip file into a suitable directory and use
|
|
5
|
+
sys.path.append(path-to-xrt)
|
|
6
|
+
in your script. You can also install xrt to the standard location by running
|
|
7
|
+
python setup.py install from the directory where you have unzipped the archive,
|
|
8
|
+
which is less convenient if you try different versions of xrt and/or different
|
|
9
|
+
versions of python.
|
|
10
|
+
|
|
11
|
+
To run xrtQook, simply start xrtQookStart.pyw from xrt/gui or, if you have
|
|
12
|
+
installed xrt by running setup.py, type `xrtQookStart.pyw` from any location.
|
|
13
|
+
|
|
14
|
+
Note that python-64-bit is by ~20% faster than the 32-bit version (tested with
|
|
15
|
+
WinPython).
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
pass
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
r"""
|
|
2
|
+
Logo
|
|
3
|
+
----
|
|
4
|
+
|
|
5
|
+
Uses :mod:`dummy` backend.
|
|
6
|
+
File: `\\examples\\withDummy\\logo_xrt.py`
|
|
7
|
+
|
|
8
|
+
:mod:`xrt` logo (on the right, in two versions) created from a "flat" python
|
|
9
|
+
logo (on the left).
|
|
10
|
+
|
|
11
|
+
+------------------+------------------+------------------+
|
|
12
|
+
| |ini_image| | |logo_image| | |logo_image_inv| |
|
|
13
|
+
+------------------+------------------+------------------+
|
|
14
|
+
|
|
15
|
+
.. |ini_image| imagezoom:: _images/logo-python.*
|
|
16
|
+
:alt:  "flat" python logo
|
|
17
|
+
:scale: 50 %
|
|
18
|
+
.. |logo_image| imagezoom:: _images/logo-xrt.*
|
|
19
|
+
:alt:  xrt logo with white background
|
|
20
|
+
:scale: 50 %
|
|
21
|
+
.. |logo_image_inv| imagezoom:: _images/logo-xrt-inv.*
|
|
22
|
+
:alt:  xrt logo with black background
|
|
23
|
+
:scale: 50 %
|
|
24
|
+
:loc: upper-right-corner
|
|
25
|
+
|
|
26
|
+
"""
|
|
27
|
+
pass
|
|
Binary file
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
__author__ = "Konstantin Klementiev"
|
|
2
|
+
__date__ = "1 Mar 2012"
|
|
3
|
+
|
|
4
|
+
import sys
|
|
5
|
+
sys.path.append(r"c:\Ray-tracing")
|
|
6
|
+
#sys.path.append(r"/media/sf_Ray-tracing")
|
|
7
|
+
import numpy as np
|
|
8
|
+
#import matplotlib as mpl
|
|
9
|
+
#mpl.use('agg')
|
|
10
|
+
import matplotlib.pyplot as plt
|
|
11
|
+
|
|
12
|
+
import xrt.plotter as xrtp
|
|
13
|
+
import xrt.runner as xrtr
|
|
14
|
+
import xrt.backends.dummy as dummy
|
|
15
|
+
import copy
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def main():
|
|
19
|
+
logo = plt.imread('logo-python.png') # load 2D template
|
|
20
|
+
# logo = plt.imread('logo_test0.png') # load 2D template
|
|
21
|
+
logo_mono = logo[:, :, 0] + logo[:, :, 1] + logo[:, :, 2]*2
|
|
22
|
+
logo_blue = copy.deepcopy(logo_mono)
|
|
23
|
+
logo_blue[logo[:, :, 2] < 0.4] = 0
|
|
24
|
+
logo_yellow = copy.deepcopy(logo_mono)
|
|
25
|
+
logo_yellow[logo[:, :, 0] < 0.4] = 0
|
|
26
|
+
xrtp.height1d = 64
|
|
27
|
+
xrtp.heightE1d = 64
|
|
28
|
+
xrtp.xspace1dtoE1d = 4
|
|
29
|
+
xrtp.xOrigin2d = 4
|
|
30
|
+
xrtp.yOrigin2d = 4
|
|
31
|
+
xrtp.xSpaceExtra = 6
|
|
32
|
+
xrtp.ySpaceExtra = 4
|
|
33
|
+
|
|
34
|
+
# make "ray-tracing" arrays: x, y, intensity and cData
|
|
35
|
+
locNrays = logo.shape[0] * logo.shape[1]
|
|
36
|
+
xy = np.mgrid[0:logo.shape[1], 0:logo.shape[0]]
|
|
37
|
+
x = xy[0, ...].flatten()
|
|
38
|
+
y = logo.shape[0] - xy[1, ...].flatten()
|
|
39
|
+
print(logo.shape)
|
|
40
|
+
intensity = logo_mono.T.flatten()
|
|
41
|
+
cData = y * np.log(abs(x)+1.5)
|
|
42
|
+
cDatamax = np.max(cData)
|
|
43
|
+
|
|
44
|
+
def local_output():
|
|
45
|
+
return x, y, intensity, cData, locNrays
|
|
46
|
+
dummy.run_process = local_output # invoked by pyXRayTrcaer to get the rays
|
|
47
|
+
|
|
48
|
+
blue_area = logo_blue.T.flatten() > 0.1
|
|
49
|
+
cData[blue_area] = cDatamax*0.5 + (y[blue_area] - logo.shape[0]*0.5)*1.2
|
|
50
|
+
yellow_area = logo_yellow.T.flatten() > 0.1
|
|
51
|
+
cData[yellow_area] = cDatamax*0.15 - \
|
|
52
|
+
(y[yellow_area] - logo.shape[0]*0.5)*1.2
|
|
53
|
+
intensity[~blue_area & ~yellow_area] = 0.
|
|
54
|
+
|
|
55
|
+
plot1 = xrtp.XYCPlot(
|
|
56
|
+
'dummy',
|
|
57
|
+
saveName=['logo-xrt.png', 'logo_xrt.pdf'],
|
|
58
|
+
# saveName=['logo-xrt-inv.png', 'logo_xrt-inv.pdf'],
|
|
59
|
+
xaxis=xrtp.XYCAxis('', '', fwhmFormatStr=None, bins=logo.shape[1],
|
|
60
|
+
ppb=1, limits=[0.5, logo.shape[1]+0.5]),
|
|
61
|
+
yaxis=xrtp.XYCAxis('', '', fwhmFormatStr=None, bins=logo.shape[0],
|
|
62
|
+
ppb=1, limits=[0.5, logo.shape[0]+0.5]),
|
|
63
|
+
caxis=xrtp.XYCAxis(
|
|
64
|
+
'', '', fwhmFormatStr=None, bins=logo.shape[0]/2, ppb=2,
|
|
65
|
+
limits=[10, cDatamax*0.8]),
|
|
66
|
+
negative=True, invertColorMap=True,
|
|
67
|
+
aspect='auto')
|
|
68
|
+
plot1.textPanel = plot1.fig.text(
|
|
69
|
+
0.75, 0.74, 'xrt', transform=plot1.fig.transFigure, size=70, color='r',
|
|
70
|
+
ha='center', fontname='times new roman', weight=660)
|
|
71
|
+
# with no labels:
|
|
72
|
+
plot1.textNrays = None
|
|
73
|
+
plot1.textGoodrays = None
|
|
74
|
+
plot1.textI = None
|
|
75
|
+
# ... and no tick labels:
|
|
76
|
+
plt.setp(
|
|
77
|
+
plot1.ax1dHistEbar.get_yticklabels() +
|
|
78
|
+
plot1.ax2dHist.get_xticklabels() + plot1.ax2dHist.get_yticklabels(),
|
|
79
|
+
visible=False)
|
|
80
|
+
# ... and no ticks:
|
|
81
|
+
allAxes = [plot1.ax1dHistX, plot1.ax1dHistY, plot1.ax2dHist,
|
|
82
|
+
plot1.ax1dHistE, plot1.ax1dHistEbar]
|
|
83
|
+
for ax in allAxes:
|
|
84
|
+
for axXY in (ax.xaxis, ax.yaxis):
|
|
85
|
+
plt.setp(axXY.get_ticklines(), visible=False)
|
|
86
|
+
# end of no ticks:
|
|
87
|
+
|
|
88
|
+
xrtr.run_ray_tracing(plot1, repeats=2, backend='dummy')
|
|
89
|
+
|
|
90
|
+
#this is necessary to use multiprocessing in Windows, otherwise the new Python
|
|
91
|
+
#contexts cannot be initialized:
|
|
92
|
+
if __name__ == '__main__':
|
|
93
|
+
main()
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
"""
|
|
3
|
+
Module :mod:`demo` represents the simplest example of xrt. Its main objective
|
|
4
|
+
is to demonstrate the output graphics, where the user can play with several
|
|
5
|
+
options given by the parameters of :class:`XYCPlot` constructors. The default
|
|
6
|
+
ray distributions provided by the 'dummy' backend have no physical meaning but
|
|
7
|
+
can be changed in module :mod:`dummy`.
|
|
8
|
+
"""
|
|
9
|
+
#import matplotlib as mpl
|
|
10
|
+
#mpl.use('wx')
|
|
11
|
+
import sys
|
|
12
|
+
sys.path.append(r"c:\Ray-tracing")
|
|
13
|
+
|
|
14
|
+
import xrt.plotter as plotter
|
|
15
|
+
import xrt.runner as runner
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def demo():
|
|
19
|
+
"""The main body of demo."""
|
|
20
|
+
plots = []
|
|
21
|
+
|
|
22
|
+
#create a plot...
|
|
23
|
+
plot = plotter.XYCPlot(title='normal energy distribution')
|
|
24
|
+
#notice the energy offset and how it is displayed
|
|
25
|
+
plot.caxis.offset = 5000
|
|
26
|
+
# plot1.persistentName='01.pickle' #for saving and restoring
|
|
27
|
+
plot.xaxis.limits = [-2.5, 2.5]
|
|
28
|
+
plot.yaxis.limits = [-2.5, 2.5]
|
|
29
|
+
filename = 'offset5000'
|
|
30
|
+
plot.saveName = [filename + '.pdf', filename + '.png']
|
|
31
|
+
#an example of creating a label:
|
|
32
|
+
#the first 2 values are x and y in figure coordinates
|
|
33
|
+
plot.textPanel = plot.fig.text(
|
|
34
|
+
0.76, 0.8, '', transform=plot.fig.transFigure, size=12, color='r')
|
|
35
|
+
plot.caxis.fwhmFormatStr = '%.1f'
|
|
36
|
+
plots.append(plot)
|
|
37
|
+
|
|
38
|
+
#... and another plot. The 2nd plot is negative and of inverted colors (i.e.
|
|
39
|
+
#the energy color map is inverted back to that of plot1 after making the graph
|
|
40
|
+
#negative)
|
|
41
|
+
plot = plotter.XYCPlot(
|
|
42
|
+
invertColorMap=True, negative=True, title='normal energy distribution,\
|
|
43
|
+
negative+{inverted colors}')
|
|
44
|
+
plot.xaxis.limits = [-1, 1]
|
|
45
|
+
plot.yaxis.limits = [-1, 1]
|
|
46
|
+
#an example of creating a label:
|
|
47
|
+
plot.textPanel = plot.fig.text(
|
|
48
|
+
0.76, 0.8, '', transform=plot.fig.transFigure, size=12, color='b')
|
|
49
|
+
plot.xaxis.fwhmFormatStr = '%.1f'
|
|
50
|
+
plots.append(plot)
|
|
51
|
+
|
|
52
|
+
#a dummy text:
|
|
53
|
+
for plot in plots:
|
|
54
|
+
plot.textPanel.set_text(
|
|
55
|
+
'test label1 = {0}\ntest label2 = {1}'.format(0.1, r'$e^{i\pi}$'))
|
|
56
|
+
|
|
57
|
+
runner.run_ray_tracing(
|
|
58
|
+
plots, repeats=40, updateEvery=2, backend='dummy', processes='all')
|
|
59
|
+
|
|
60
|
+
if __name__ == '__main__':
|
|
61
|
+
demo()
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
r"""
|
|
3
|
+
.. _calc:
|
|
4
|
+
|
|
5
|
+
Using xrt as x-ray calculator
|
|
6
|
+
-----------------------------
|
|
7
|
+
|
|
8
|
+
xrt can be used as a library for calculations of synchrotron sources and
|
|
9
|
+
material properties related to x-ray scattering, diffraction and propagation:
|
|
10
|
+
reflectivity, transmittivity, refractive index, absorption coefficient etc.
|
|
11
|
+
|
|
12
|
+
See the scripts in ``\examples\withRaycing\00_xRayCalculator\``.
|
|
13
|
+
Each script consists of:
|
|
14
|
+
|
|
15
|
+
1) imports, with possibly defining a path to xrt if it is installed in a
|
|
16
|
+
non-standard location,
|
|
17
|
+
2) a definition of a source or a material object,
|
|
18
|
+
3) invocation of a corresponding method of interest for a specified range of
|
|
19
|
+
energy, angles etc. and
|
|
20
|
+
4) plotting.
|
|
21
|
+
|
|
22
|
+
Example 1a: Undulator
|
|
23
|
+
~~~~~~~~~~~~~~~~~~~~~
|
|
24
|
+
|
|
25
|
+
.. imagezoomhover:: _images/calc_undulator.png
|
|
26
|
+
:align: right
|
|
27
|
+
|
|
28
|
+
.. code-block:: python
|
|
29
|
+
:emphasize-lines: 6,7,12
|
|
30
|
+
|
|
31
|
+
import numpy as np
|
|
32
|
+
import matplotlib.pyplot as plt
|
|
33
|
+
import sys; sys.path.append(r"c:\Ray-tracing")
|
|
34
|
+
import xrt.backends.raycing.sources as rs
|
|
35
|
+
|
|
36
|
+
source = rs.Undulator(eE=3.0, eI=0.5, eEpsilonX=0.263, eEpsilonZ=0.008,
|
|
37
|
+
betaX=9.539, betaZ=1.982, period=18.5, n=108, K=0.52, distE='BW')
|
|
38
|
+
|
|
39
|
+
energy = np.linspace(3850, 4150, 601)
|
|
40
|
+
theta = np.linspace(-1, 1, 51) * 30e-6
|
|
41
|
+
psi = np.linspace(-1, 1, 51) * 30e-6
|
|
42
|
+
I0, l1, l2, l3 = source.intensities_on_mesh(energy, theta, psi)
|
|
43
|
+
dtheta, dpsi = theta[1] - theta[0], psi[1] - psi[0]
|
|
44
|
+
flux = I0.sum(axis=(1, 2)) * dtheta * dpsi
|
|
45
|
+
|
|
46
|
+
plt.plot(energy, flux)
|
|
47
|
+
plt.show()
|
|
48
|
+
|
|
49
|
+
Example 1b: Undulator, tuning curves
|
|
50
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
51
|
+
|
|
52
|
+
.. imagezoomhover:: _images/calc_undulator_tune.png
|
|
53
|
+
:align: right
|
|
54
|
+
|
|
55
|
+
.. code-block:: python
|
|
56
|
+
|
|
57
|
+
tunesE, tunesF = source.tuning_curves(energy, theta, psi, harmonics, Ks)
|
|
58
|
+
|
|
59
|
+
See the script
|
|
60
|
+
``\examples\withRaycing\00_xRayCalculator\calc_undulator_tune.py``.
|
|
61
|
+
|
|
62
|
+
.. raw:: html
|
|
63
|
+
|
|
64
|
+
<div class="clearer"> </div>
|
|
65
|
+
|
|
66
|
+
Example 2a: Crystal reflectivity
|
|
67
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
68
|
+
|
|
69
|
+
.. imagezoomhover:: _images/calc_crystal.png
|
|
70
|
+
:align: right
|
|
71
|
+
|
|
72
|
+
.. code-block:: python
|
|
73
|
+
:emphasize-lines: 6,11
|
|
74
|
+
|
|
75
|
+
import numpy as np
|
|
76
|
+
import matplotlib.pyplot as plt
|
|
77
|
+
import sys; sys.path.append(r"c:\Ray-tracing")
|
|
78
|
+
import xrt.backends.raycing.materials as rm
|
|
79
|
+
|
|
80
|
+
crystal = rm.CrystalSi(hkl=(1, 1, 1))
|
|
81
|
+
|
|
82
|
+
E = 9000
|
|
83
|
+
dtheta = np.linspace(-20, 80, 501)
|
|
84
|
+
theta = crystal.get_Bragg_angle(E) + dtheta*1e-6
|
|
85
|
+
curS, curP = crystal.get_amplitude(E, np.sin(theta))
|
|
86
|
+
|
|
87
|
+
plt.plot(dtheta, abs(curS)**2, 'r', dtheta, abs(curP)**2, 'b')
|
|
88
|
+
plt.show()
|
|
89
|
+
|
|
90
|
+
.. raw:: html
|
|
91
|
+
|
|
92
|
+
<div class="clearer"> </div>
|
|
93
|
+
|
|
94
|
+
Example 2b: Crystal reflectivity: Single and double crystal
|
|
95
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
96
|
+
|
|
97
|
+
.. imagezoomhover:: _images/calc_crystal_rocking_curve.png
|
|
98
|
+
|
|
99
|
+
See the script
|
|
100
|
+
``\examples\withRaycing\00_xRayCalculator\calc_crystal_rocking_curve.py``.
|
|
101
|
+
|
|
102
|
+
.. raw:: html
|
|
103
|
+
|
|
104
|
+
<div class="clearer"> </div>
|
|
105
|
+
|
|
106
|
+
Example 3: Multilayer reflectivity
|
|
107
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
108
|
+
|
|
109
|
+
.. imagezoomhover:: _images/calc_multilayer.png
|
|
110
|
+
:align: right
|
|
111
|
+
|
|
112
|
+
.. code-block:: python
|
|
113
|
+
:emphasize-lines: 1,2,3,7
|
|
114
|
+
|
|
115
|
+
mSi = rm.Material('Si', rho=2.33)
|
|
116
|
+
mW = rm.Material('W', rho=19.3)
|
|
117
|
+
mL = rm.Multilayer(mSi, 27, mW, 18, 40, mSi)
|
|
118
|
+
|
|
119
|
+
E = 10000
|
|
120
|
+
theta = np.linspace(0, 2.0, 1001) # degrees
|
|
121
|
+
rs, rp = mL.get_amplitude(E, np.sin(np.deg2rad(theta)))[0:2]
|
|
122
|
+
|
|
123
|
+
plt.plot(theta, abs(rs)**2, 'r', theta, abs(rp)**2, 'b')
|
|
124
|
+
plt.show()
|
|
125
|
+
|
|
126
|
+
.. raw:: html
|
|
127
|
+
|
|
128
|
+
<div class="clearer"> </div>
|
|
129
|
+
|
|
130
|
+
Example 4: Mirror reflectivity
|
|
131
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
132
|
+
|
|
133
|
+
.. imagezoomhover:: _images/calc_mirror.png
|
|
134
|
+
:align: right
|
|
135
|
+
|
|
136
|
+
.. code-block:: python
|
|
137
|
+
:emphasize-lines: 1,5
|
|
138
|
+
|
|
139
|
+
stripe = rm.Material(('Si', 'O'), quantities=(1, 2), rho=2.2)
|
|
140
|
+
|
|
141
|
+
E = np.logspace(1 + np.log10(3), 4 + np.log10(5), 501)
|
|
142
|
+
theta = 7e-3
|
|
143
|
+
rs, rp = stripe.get_amplitude(E, np.sin(theta))[0:2]
|
|
144
|
+
|
|
145
|
+
plt.semilogx(E, abs(rs)**2, 'r', E, abs(rp)**2, 'b')
|
|
146
|
+
plt.gca().set_xlim(E[0], E[-1])
|
|
147
|
+
plt.show()
|
|
148
|
+
|
|
149
|
+
.. raw:: html
|
|
150
|
+
|
|
151
|
+
<div class="clearer"> </div>
|
|
152
|
+
|
|
153
|
+
Example 5: Material absorption
|
|
154
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
155
|
+
|
|
156
|
+
.. imagezoomhover:: _images/calc_absorption.png
|
|
157
|
+
:align: right
|
|
158
|
+
:loc: lower-right-corner
|
|
159
|
+
|
|
160
|
+
.. code-block:: python
|
|
161
|
+
:emphasize-lines: 1,4
|
|
162
|
+
|
|
163
|
+
mat = rm.Material('Be', rho=1.848)
|
|
164
|
+
|
|
165
|
+
E = np.logspace(1, 4 + np.log10(3), 501)
|
|
166
|
+
mu = mat.get_absorption_coefficient(E)
|
|
167
|
+
|
|
168
|
+
plt.loglog(E, mu)
|
|
169
|
+
plt.gca().set_xlim(E[0], E[-1])
|
|
170
|
+
plt.show()
|
|
171
|
+
|
|
172
|
+
.. raw:: html
|
|
173
|
+
|
|
174
|
+
<div class="clearer"> </div>
|
|
175
|
+
|
|
176
|
+
"""
|
|
177
|
+
pass
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
__author__ = "Konstantin Klementiev, Roman Chernikov"
|
|
3
|
+
__date__ = "5 Jun 2018"
|
|
4
|
+
import numpy as np
|
|
5
|
+
import matplotlib.pyplot as plt
|
|
6
|
+
# path to xrt:
|
|
7
|
+
import os, sys; sys.path.append(os.path.join(*['..']*3)) # analysis:ignore
|
|
8
|
+
import xrt.backends.raycing.materials as rm
|
|
9
|
+
|
|
10
|
+
E = np.logspace(1, 4 + np.log10(5), 501)
|
|
11
|
+
for table in ['Chantler', 'Chantler total']:
|
|
12
|
+
mat = rm.Material('Be', rho=1.848, table=table)
|
|
13
|
+
mu = mat.get_absorption_coefficient(E)
|
|
14
|
+
plt.loglog(E, mu)
|
|
15
|
+
|
|
16
|
+
plt.gca().set_xlim(E[0], E[-1])
|
|
17
|
+
plt.show()
|