Contents Prev Manual

LOGICAL FUNCTION ONCARD(C,WORD,A)

Finds a card which starts with the given letter and word, and
reads one number from it.

Arguments:

On entry C is the first letter of card sought,
WORD is the A4 word to be found anywhere on any card starting
with the given letter C

On exit A is a real number, set (if the word was found) to the number
following WORD.

Description:

ONCARD is set .TRUE. if the word is found, otherwise .FALSE.

Calls:

CARDIN INPUTI LETTER RDREAL RDWORD

Called by:

BIGGAM CDFIN GEOMCO ICDFMT IICD1 IICD3 MAGDIR SETGEN SPACE SYMFRI SYMOP WGHTLS ADDFC AVEXAR BONDS MPLSQ PALSQ

Common blocks used:

/CARDRC/ to use NYZ
/IINFO/ to use all members
/IINFOW/ to use all members

*** ONCARD corrected by JCM 6 Mar 89 ***

Classification:

CCSL Input/Output Routines . . . . . . . Utility

SUBROUTINE OPMSYM

Prints out the magnetic symmetry operations.

Prerequisite calls:

DOMAG1 and DOMAG2

Description:

The sequence numbers of the operators printed are the same as those given by OPSYM

Output:

The relevant operator list is written to unit LPT.

Calls:

MESS NUMDEN

Called by:

MAGSYM

Common blocks used:

/IOUNIT/ to use LPT
/NSYM/ to use NOPC CENTRC
/SATELL/ to use KSTAB
/SYMMAG/ to use MSTAB OTRSYM

*** OPMSYM modified by PJB for MSTAB C141 March 2006***

Classification:

Basic Crystallography . . . . . . . Crystallographic

SUBROUTINE OPNFIL(L,M)

Opens file L according to requirements given in M; L may be
preset.

Arguments:

If on input L=-9999, behaves as L=NOPFIL(M)
If L >= 0, behaves similarly, but uses unit number L
Sets L=unit number used
For meanings of M, see NOPFIL

Output:

Opens unit (either L or chosen from table in IOTAB in /LOONEY)
Fills in tables in /LOONEY and /FINAME

Calls:

ERRIN2 NOPFIL

Called by:

FORIER INITIL INOBGR MAJUST NEWCD NWINSF PREFIN

Common blocks used:

/FINAME/ to use all members
/IOUNIT/ to use LPT ITI ITO
/LOONEY/ to use all members

*** OPNFIL updated by JCM 1 Aug 88 ***

Classification:

CCSL Input/Output Routines . . . . . . . Utility

SUBROUTINE OPSYM(ISYM)

Prints out the symmetry operators in either real or reciprocal
space.

Arguments:

If ISYM=1 Prints out the NLAT non-primitive lattice translations and
the NOPC coordinates of general equivalent positions held in
ALAT and SYM in COMMON /SYMDA/

If ISYM=2 The printing is required in reciprocal space, and equivalent
reflection indices and their relative phases are printed.

Description:

The sequence numbers of the operators are printed. These are useful for referring to specific operators.

Output:

The relevant operator list is written to unit LPT.

Calls:

FRACT GMEQ MESS NUMDEN TRANSQ

Called by:

PFSET SETFC SETFCM ARRINC ARRNGE BONDS CALQSF FORFIG FOURPL MMPLSQ MPLSQ SFTLSQ

Common blocks used:

/CHARS/ to use LETLOW ISPCE IDIGIT
/FRIED/ to use FRIEDL
/IOUNIT/ to use LPT
/NSYM/ to use NOPC NLAT CENTRC
/SCRAT/ to use all members
/SYMDA/ to use SYM TRANS ALAT
/SYMTAB/ to use INVERS

*** OPSYM by JCM 11 Apr 83 ***

Classification:

Basic Crystallography . . . . . . . Crystallographic

SUBROUTINE ORTFUN(I,KMAX,VAL,MODE)

Finds the best set of orthonormal functions compatible with
symmetry based on the users input, and hence defines the multipoles to refine.

Arguments:

On entry KMAX = 2l+1, VAL the initial amplitude of function I
MODE = 1 First function - set up
> 1 Try function I = 0 No more functions - tidy up

Calls:

ERRCHK ERRMES GMEQ GMINV GMPRD MESS NAMPOL

Called by:

PFSET

Common blocks used:

/IOUNIT/ to use LPT IOUT
/MPODA/ to use NMPOL NCLUMP KCLUMP POLAMP NCMAT CONMAT
/MPODAC/ to use all members
/SCRAT2/ to use all members

*** ORTFUN corrected by PJB 2-Jan-96 ***

Classification:

Multipole Form Factors . . . . . . . Setting Up

SUBROUTINE ORTHG(IOP)

Calculates matrices for the transformation of vectors in real or
reciprocal space, between crystallographic and orthogonal axes.

Arguments:

On entry IOP=1 means do not print result; =2 means print

Description:

The orthogonal set are defined as follows:
X is parallel to a*
Z is parallel to c
Y makes up a right handed set.

Thus H(orth) = h(cryst) times matrix ORTH.
H is is real space for matrix ORTH(,,1), and reciprocal for (,,2)

Called by:

RECELL

Common blocks used:

/CELPAR/ to use CELL ORTH
/IOUNIT/ to use LPT

*** ORTHG updated by JCM 11 Aug 88 ***

Classification:

Basic Crystallography . . . . . . . Setting Up

SUBROUTINE ORTHO(H,OH,IR)

Carries out conversions between crystallographic and orthogonal
axes.

Arguments:

H(3) is the input vector
OH(3) is the transformed vector
IR indicates which conversion is required:

Prerequisite calls:

RECIP should have read the cell dimensions.

Description:

If IR=1 H is a real space vector on crystallographic axes and OH a vector
on the standard orthogonal axes

IR=2 H is a reciprocal vector on crystallographic axes and OH is on
the orthogonal axes

IR=-1 H is on orthogonal axes and OH on real crystallographic axes
IR=-2 H is on orthogonal axes and OH on reciprocal crystallographic axes

Notes:

The standard orthogonal axes are defined with x parallel to (100) z parallel to [001] and y making up a righ-handed orthogonal set.
The matrices used in the conversions are those printed out by RECIP

Calls:

GMPRD

Called by:

ALRPOL BNDLST CALCMG FCHALC GETDC MAGDIR MAGDOM RESOL SETDC SPACE SPGNAM USYM CALQSF LCHALC ANGLD3 MAG3D PERSPC MG3DGL MVENTR PALSQ

Common blocks used:

/CELPAR/ to use ORTH

*** ORTHO corrected by PJB 25 Jun 86 ***

Classification:

Basic Crystallography . . . . . . . Crystallographic

SUBROUTINE OTPUTI

Outputs a new
I card after a LSQ refinement, updating the cycle number.

Output:

Writes the new card to unit NEWIN.

Calls:

ERRMES INTCHR INTDIG LENGT RDREAL RDWORD

Called by:

NWINDS NWINFW NWINSF NWINT2

Common blocks used:

/IINFOW/ to use all members
/NEWOLD/ to use NEWIN
/REFINE/ to use LASTCY

*** OTPUTI updated by JCM 14 Jul 86 ***

Classification:

General Least Squares Refinement . . . . . . . Crystallographic


Contents Manual

P. Jane Brown e-mail: brown@ill.fr
Institut Laue Langevin,
Grenoble, FRANCE