geometry

geometry

Functions

RefList * predict_to_res ()
void update_predictions ()
void calculate_partialities ()
void polarisation_correction ()
double sphere_fraction ()
double gaussian_fraction ()
double r_gradient ()
double x_gradient ()
double y_gradient ()

Types and Values

Description

Functions

predict_to_res ()

RefList *
predict_to_res (Crystal *cryst,
                double max_res);

update_predictions ()

void
update_predictions (Crystal *cryst);

Updates the predicted reflections (positions and excitation errors, but not the actual partialities) of cryst 's reflections according to the current state of the crystal (e.g. its unit cell parameters).

If you need to update the partialities as well, call calculate_partialities() afterwards.

Parameters

cryst

A Crystal

 

calculate_partialities ()

void
calculate_partialities (Crystal *cryst,
                        PartialityModel pmodel);

Calculates the partialities for the reflections in cryst , given the current crystal and image parameters. The crystal's image and reflection lists must be set. The specified PartialityModel will be used.

You must not have changed the crystal or image parameters since you last called predict_to_res() or update_predictions(), because this function relies on the limiting wavelength values calculated by those functions.

Parameters

cryst

A Crystal

 

pmodel

A PartialityModel

 

polarisation_correction ()

void
polarisation_correction (RefList *list,
                         UnitCell *cell,
                         struct image *image);

sphere_fraction ()

double
sphere_fraction (double rlow,
                 double rhigh,
                 double pr);

gaussian_fraction ()

double
gaussian_fraction (double rlow,
                   double rhigh,
                   double pr);

r_gradient ()

double
r_gradient (UnitCell *cell,
            int k,
            Reflection *refl,
            struct image *image);

x_gradient ()

double
x_gradient (int param,
            Reflection *refl,
            UnitCell *cell,
            struct panel *p);

y_gradient ()

double
y_gradient (int param,
            Reflection *refl,
            UnitCell *cell,
            struct panel *p);

Types and Values

enum PartialityModel

A PartialityModel describes a geometrical model which can be used to calculate spot partialities and Lorentz correction factors.

Members

PMODEL_UNITY

Set all all partialities and Lorentz factors to 1.

 

PMODEL_XSPHERE

Flat sphere model with super-Gaussian spectrum

 

PMODEL_RANDOM

Randomly assigned partialities

 

enum gparam

Members

GPARAM_ASX

   

GPARAM_ASY

   

GPARAM_ASZ

   

GPARAM_BSX

   

GPARAM_BSY

   

GPARAM_BSZ

   

GPARAM_CSX

   

GPARAM_CSY

   

GPARAM_CSZ

   

GPARAM_R

   

GPARAM_DIV

   

GPARAM_DETX

   

GPARAM_DETY

   

GPARAM_CLEN

   

GPARAM_OSF

   

GPARAM_BFAC

   

GPARAM_ANG1

   

GPARAM_ANG2

   

GPARAM_WAVELENGTH

   

GPARAM_EOL