kklmn / xrt

Package xrt (XRayTracer) is a python software library for ray tracing and wave propagation in x-ray regime. It is primarily meant for modeling synchrotron sources, beamlines and beamline elements.
MIT License
84 stars 30 forks source link

Bent Laue Crystal Reflectivity #129

Open glebdovzhenko opened 2 years ago

glebdovzhenko commented 2 years ago

Hello,

I am trying to model a Laue DCM with either meridional or sagittal bending.

1) Do I understand it correctly that the examples 01_bentLaueSCM.py, 02_bentLaueDCM_RC.py only model the OE shape and not the reflectivity curve change coming from the bend? And to include the reflectivity computation I need to expilcitly say it in the constructor rm.CrystalSi(..., useTT=True)?

2) Is there any reflectivity curve computation already implemented other than TT? Like Penning-Polder, multilamellar, etc.

3) Does the Crystal.get_amplitude_TT method assume meridional bending? And the sagittal bending is not implemented?

Thank you.

kklmn commented 2 years ago

Hi,

  1. Yes. Yes.
  2. No.
  3. Yes. No, it is not.
kklmn commented 1 year ago

Hi,

The branch bent_crystals (not merged yet with the master branch) has the reflectivity calculations of elastically deformed crystals following PyTTE. Start the GUI by running xrt/gui/bentXtal/bentXCalculator.py to compare with the original PyTTE backend or to compare various curves side by side.

The same TT calculations can also be enabled in ray tracing.