Welcome | spec | C-PLOT | Support | Users | Contact
 
Contents -> FOUR-CIRCLE REFERENCE -> Zone Macros
spec Manual


4.12. - Zone Macros



Zone mode is controlled with the cz (calculate zone), sz (set zone) and mz (move zone) macros. Given two Bragg reflections, cz will calculate and display the values of and necessary to put both of these reflections in the scattering plane. To find the angles needed to put (0,0,2) and (0,2,2) in the scattering plane, type
    1.FOURC> cz 0 0 2 0 2 2
    Chi = 45 Phi = 90 2.FOURC>


Once appropriate values of and have been calculated, the scattering plane can be set using the pl (plane) macro, which moves the 2 and motors together,
    1.FOURC> pl 45 90
    2.FOURC>

Alternatively, you can use the mz macro, which calculates the necessary and , moves there, sets zone mode, if not already in it, and saves the values of the zone vectors in the G[] geometry parameter array.
    1.FOURC> mz 0 0 2 0 2 2
    2.FOURC> p A[chi], A[phi]
    45 90 3.FOURC>



The sz macro calculates and displays the and values, sets zone mode, if not already in it, saves the values of the zone vectors, sets the frozen values of zone -mode and , but does not move the diffractometer.

The cz, sz and mz macros make use of the Z[] array variables to pass the zone vectors to the geometry code.
    1.FOURC> prdef cz
    def cz ' if ($# != 6) { print "Usage: cz h0 k0 l0 h1 k1 l1" exit } Z[0]=$1; Z[1]=$2; Z[2]=$3; Z[3]=$4; Z[4]=$5; Z[5]=$6 calcZ printf("Chi = %g Phi = %g\n", A[chi], A[phi]) waitmove; get_angles; calcHKL ' 2.FOURC>




  Top
  Prev | Next