Re: Rocking curves in SHADOW
Thanks for using XOP and for your nice words...
Unfortunately this is not possible. SHADOW only works using the built-in calculation that is for the undistorted crystal. The implementation of it is in my "to do" list, but honestly I do not know when I'll do it. I am working in the extension of the crystal model in SHADOW to accept ant crystal structure. We are interested in quartz, and may be you too. In this upgrade, I'll like to be able to input an external profile, as you need.
In the mean time, you can do that by creating an ad-hoc postprocessing. It requires a bit of programming. The idea should be:
1) run SHADOW for your crystal configuration, but not using crystal but mirror. Use the option to write down the incident angles in file angle.01
2) write a program that loads star.01, angle.01 and your profile
3) make a loop over all rays doing:
take angle from angle.01 and energy from star.01 and calculate the Bragg angle
calculate difference D=(theta-theta_bragg)
obtain reflectivity value R from your profile at D
redefine the intensity (in fact electric vectors) in start.01 by applying R
4) use the new
On 01/17/2012 06:11 PM, Harding, Eric wrote:
Thank you for creating and maintaining XOP. It has been extremely useful for my research. I have been using SHADOW and XOP to help calibrate an x-ray imaging spectrometer that uses spherically bent crystals (R=150mm).
I have one question regarding the rocking curves that SHADOW uses to carry out the ray tracing.
I would like SHADOW to use the rocking curves generated by xcrystal_bent and not the BRAGG preprocessor. Is there a way to do this?
Sandia National Laboratories
PO Box 5800, MS1193
Albuquerque, NM 87185
Note that in the newest distribusions of ShadowVUI you can load an example workspace for implementing external rocking curves. It is called macro_crystal_with_external_diffraction_profile.ws