Warning: Trying to access array offset on value of type null in /home/site/wwwroot/lib/plugins/move/action/rename.php on line 42

Warning: Cannot modify header information - headers already sent by (output started at /home/site/wwwroot/lib/plugins/move/action/rename.php:42) in /home/site/wwwroot/inc/Action/Export.php on line 106

Warning: Cannot modify header information - headers already sent by (output started at /home/site/wwwroot/lib/plugins/move/action/rename.php:42) in /home/site/wwwroot/inc/Action/Export.php on line 106
debye-scherrer_specimen_displacement

This is a macro to correct for capillary specimen displacement in Debye-Scherrer geometry

/*
Debye-Scherrer correction for a non-concentric capillary placement.
 
This follows the maths of K&A and describes the offset in polar coordinates.
The normal "vertical" (or "perpendicular") displacement is when sigma == 90
The normal "horizontal" (or "parallel") displacement is when sigma == 0
*/
macro Debye-Scherrer_Specimen_Displacement { DSSD }
macro DSSD(u, u_v) { DSSD(u, u_v,,90) } ''standard displacement perpendicular to the beam
macro DSSD(u, u_v, s, s_v)
{
   #m_argu u ''offset of the sample from the centre of the gonio
   #m_argu s ''angle subtended from the "sample" position to the actual centre of the gonio (in deg)
 
   If_Prm_Eqn_Rpt(u, u_v, min =-Rs/10; max =Rs/10;) ''max offset of a tenth of a radius
   If_Prm_Eqn_Rpt(s, s_v, min =0; max =180;) ''full rotation is provided by a negative u length.
 
   '' You need "Rad" at the beginning, as th2_offset takes a value in degrees, and this formula is in radians
   ''This is the small angle implementation, the full one should have Arcsin() around everything after the Rad
   th2_offset = Rad (CeV(u, u_v) / Rs) Sin(2 Th - CeV(s, s_v) Deg); 
}