Trace:

# Differences

This shows you the differences between two versions of the page.

— |
debye-scherrer_specimen_displacement [2012/01/03 00:10] (current) rowlesmr created |
||
---|---|---|---|

Line 1: | Line 1: | ||

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

+ | |||

+ | |||

+ | <code topas> | ||

+ | /* | ||

+ | 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); | ||

+ | }</code> | ||