## hkl-pseudoaxis-common-private

hkl-pseudoaxis-common-private

## Functions

struct HklHklRead | hkl_hkl_read ()
struct HklHklWrite | hkl_hkl_write ()
struct HklDoubleDiffractionWrite | hkl_double_diffraction_write ()
struct HklPsiWrite | hkl_psi_write ()
struct HklEmergenceFixedWrite | hkl_emergence_fixed_write ()

## Types and Values

struct | HklHklRead
struct | HklHklWrite
struct | HklDoubleDiffractionWrite
struct | HklPsiWrite
struct | HklEmergenceFixedWrite

## Description

## Functions

### hkl_hkl_read ()

    struct HklHklRead
    hkl_hkl_read (const HklGeometry *geometry,
                  const HklDetector *detector,
                  const HklSample *sample);

### hkl_hkl_write ()

    struct HklHklWrite
    hkl_hkl_write (const HklGeometry *geometry,
                   const HklDetector *detector,
                   const HklSample *sample,
                   const HklVector *hkl);

### hkl_double_diffraction_write ()

    struct HklDoubleDiffractionWrite
    hkl_double_diffraction_write (const HklGeometry *geometry,
                                  const HklDetector *detector,
                                  const HklSample *sample,
                                  const HklVector *hkl1,
                                  const HklVector *hkl2);

### hkl_psi_write ()

    struct HklPsiWrite
    hkl_psi_write (const HklGeometry *geometry,
                   const HklDetector *detector,
                   const HklSample *sample,
                   const HklVector *hkl,
                   const HklVector *hkl2);

### hkl_emergence_fixed_write ()

    struct HklEmergenceFixedWrite
    hkl_emergence_fixed_write (const HklGeometry *geometry,
                               const HklDetector *detector,
                               const HklSample *sample,
                               const HklVector *hkl,
                               const HklVector *n);

## Types and Values

### struct HklHklRead

    struct HklHklRead {
    	HklVector ki;
    	HklVector kf;
    	HklVector Q;
    	HklVector hkl;
    };

### struct HklHklWrite

    struct HklHklWrite {
    	HklVector ki;
    	HklVector kf;
    	HklVector Q;
    	HklVector hkl;
    	HklVector dQ;
    };

### struct HklDoubleDiffractionWrite

    struct HklDoubleDiffractionWrite {
    	struct HklHklWrite hkl1W;
    	struct HklHklWrite hkl2W;
    	HklVector kf2;
    };

### struct HklPsiWrite

    struct HklPsiWrite {
    	struct HklHklWrite hklW;
    	struct HklHklWrite hkl2W;
    	HklVector Qn; /* Q normalized */
    	HklVector hkl2; /* projection of hkl2 on plan Q */
    	HklVector n; /* compute n the intersection of the plan P(kf, ki) and PQn (normal Qn) */
    	double psi; /* computed psi */
    	int status;
    };

### struct HklEmergenceFixedWrite

    struct HklEmergenceFixedWrite {
    	struct HklHklWrite hklW;
    	HklVector n; /* the surface orientation */
    	double emergence; /* the computed emergence */
    };