LIST OF ALL COMPILE (##) KEYWORDS IN CHARMM
     By employing appropriate preprocessor keys, one can generate a
variant of CHARMM.  This document list the preprocessor keywords used
in the CHARMM source code.  This list is still under construction and
requires developers to update upon modifying and indroducing codes.
     In the listing, note the following description keys.
       - member:       keyword grouping
       - required:     list of keywords required for this keyword to
                       be used properly. 
       - conflicting:  list of keywords/groups that cannot be used
                       with this keyword. 
       - availability: If/How this keyword is generated by install.com
       - note:         Any additional information about usage
* Menu:
* Include::     Include File Directory
* Platform::    Machine Type
* OS::          Operating System
* Size::        Size Directive
* Archi::       Machine Architecture
* Parallel::    Parallel CHARMM descriptors
* Feature::     Feature Directives
* Graphics::    Graphics Directives
* Unnorm::      Keywords not for normal use
* NOINC::       Major Blocks that can be Removed
* Control::     Control Directives
* Unknown::     Undocumented keywords (must done soon)
[1] Include File Directory
    FCMDIR=directory_name   ! point to a particular directory
    FCMDIR=CURRENT          ! use what is specified in the include line.
    FCMDIR=LOCAL            ! use the local directory.
[2] Machine Type (choose exactly one)
    ALLIANT     = Alliant
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: none
    ALPHA       = DEC alpha workstation
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: ALPHA, ALPHAMP
    ALTIX       = SGI Altix
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: altix, ALTIX
    APOLLO      = HP-Apollo, both AEGIS and UNIX
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: none
    ARDENT      = Stardent, Titan series
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: STARDENT
    CONVEX      = Convex Computer
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: CONVEX
    CRAY        = Cray Research Inc.
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: CRAY
    DEC         = DEC ULTRIX
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: DEC
    HAL         = Sun computer port - special
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: HAL
    GNU         = intel-type machines using pg, g77, absoft, intel compilers
                         or any machine using gnu compiler
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: GNU
    GWS         = Sun Global Works System
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: GWS
    HPUX        = Hewlett-Packard series 700.
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: CSPP, HPUX
    HPITANIUM   = HP Itanium
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: hpitanium
    IBM         = IBM-3090 running AIX
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: none
    IBMRS       = IBM-RS
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: none, was IBMSP3, IBMRS
    IBMAIX      = All current IBM platforms running current AIX
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: IBMAIX,ibmaix
    IRIS        = Silicon Graphics
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: sgi, SGI64
    MACINTOSH   = Apple Macintosh computers (system 7)
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: none
    OSX         = Apple Macintosh computers OSX
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: OSX, osx
    SUN         = Sun Microsystems
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: SUN, SUNMPI, SUN64
                  availability: GWS
    ULTRA       = For modern Sun compilers circa 2000.
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: none
    VAX         = Digital Equipment Corp. VAX VMS.
                  member: machine-types, machines
                  required: ????
                  conflicting: machines
                  availability: none
  Other machine descriptors
    IBMMVS      = IBM's MVS platform
                  member: machine-descriptors, machines
                  required: ????
                  conflicting: machines
                  availability: none
    IBMVM       = IBM's VM platform
                  member: machine-descriptors, machines
                  required: ????
                  conflicting: machines
                  availability: none
    CMEM        = A convex option?
                  member: machine-descriptors, machines
                  required: ????
                  conflicting: machines
                  availability: none
    GRAPE       = Use MD-GRAPE-II board to speedup nonbond calculations
                  member: machine-descriptors, machines
                  required: ????
                  conflicting: machines
                  availability: none
    LOBOS       = LoBoS cluster specific code
                  member: machine-descriptors, machines
                  required: ????
                  conflicting: machines
                  availability: none
  Parallel machine types
    ALPHAMP     = DEC Alpha Multi Processor machines
                  member: parallel-machines, machines
                  required: ????
                  conflicting: machines
                  availability: ALPHAMP
    CM5         = Machine type            = TMC's CM-5 machine
                  member: parallel-machines, machines
                  required: ????
                  conflicting: machines
                  availability: CM5
    CSPP        = Convex PA-RISC parallel system (HP chip)
                  member: parallel-machines, machines
                  required: HPUX
                  conflicting: machines
                  availability: CSPP
    CSPPMPI     = Convec SPP using proprietary MPI library
                  member: parallel-machines, machines
                  required: ????
                  conflicting: machines
                  availability: CSPP
    DELTA       = machine type            = Intel delta (Caltech) machine
                  member: parallel-machines, machines
                  required: ????
                  conflicting: machines
                  availability: none
    IBMSP       = machine type            = IBM's SPn cluster machines
                  member: parallel-machines, machines
                  required: ????
                  conflicting: machines
                  availability: none, use IBMAIXMP
    IBMSP1      = machine type            = IBM's SP1 cluster machines
                  member: parallel-machines, machines
                  required: ????
                  conflicting: machines
                  availability: none, use IBMAIXMP
    INTEL       = machine type            = Intel iPSC Hypercube
                  member: parallel-machines, machines
                  required: ????
                  conflicting: machines
                  availability: none
    PARAGON     = machine type            = Intel Paragon machine
                  member: parallel-machines, machines
                  required: ????
                  conflicting: machines
                  availability: none
    SGIMP       = machine type            = SGI Power Challenge
                  member: parallel-machines, machines
                  required: ????
                  conflicting: machines
                  availability: none
    T3D         = Cray massively parallel (DEC Alpha chip)
                  member: parallel-machines, machines
                  required: ????
                  conflicting: machines
                  availability: none
    T3E         = Cray massively parallel (DEC Alpha chip)
                  member: parallel-machines, machines
                  required: ????
                  conflicting: machines
                  availability: T3E
    TERRA       = multiprocessor DEC Alpha chip system
                  member: parallel-machines, machines
                  required: ????
                  conflicting: machines
                  availability: none
[3] Operating system (choose at most one)
    AIX370      = IBM UNIX
                  member: operating-system
                  required: IBM*  ???
                  conflicting: ???
                  availability: none
    UNIX        = UNIX
                  member: operating-system
                  required: ???
                  conflicting: ???
                  availability: ALPHA, ALPHAMP, ALTIX
                  availability: CONVEX, CSPP, DEC, GNU, HPUX, IBMAIX
                  availability: IBMAIXMP,
                  availability: SGI64, SUN, SUNMPI
                  availability: SUN64, HAL, GWS, T3E
    UNICOS      = Cray UNIX
                  member: operating-system
                  required: ???
                  conflicting: ???
                  availability: none
    OS2         = IBM pre-emptive multitasking
                  member: operating-system
                  required: IBM* ???
                  conflicting: ???
                  availability: none
[4] Size is no longer an argument to install.com. Size is automatically set to approximately
    XXLARGE     =360720 atom limit
                  member: size-directives
                  required: none
                  conflicting: size-directives
                  availability: XXLARGE
[5] Machine Architecture (may choose several)
    SCALAR      = machine characteristics = default for scalar machines
                  member: machine-character
                  required: none
                  conflicting: none
                  availability: MPISET, ALPHA, ALPHAMP, CM5
                  availability: DEC, GNU, CSPP, HPUX, IBMAIX
                  availability: IBMAIXMP, IBMRS, IBMSP, IBMSP3, INTEL
                  availability: INTEL, SGI64, SUN, SUNMPI, SUN64, HAL
                  availability: GWS, T3D, T3E, TERRA
                  availability: NIH
    VECTOR      = feature directive *     = Vectorized routines
                  member: machine-character
                  required: none
                  conflicting: none
                  availability: CONVEX, CRAY, STARDENT
                  availability: NIH
    PARVECT     = Parallel vector code (multi processor vector machines)
                  member: machine-character
                  required: none
                  conflicting: none
                  availability: CONVEX
                  availability: NIH
    CRAYVEC     = Fast vector code (standard vector code)
                  member: machine-character
                  required: none
                  conflicting: none
                  availability: CRAY
                  availability: NIH
    SINGLE      = specifies single precision version (primarily used for CRAY)
                  member: machine-character
                  required: none
                  conflicting: ???
                  availability: CRAY
    SGIF90      = Used to compile CHARMM using F90 compiler on SGI machines
                  member: machine-character
                  required: ???
                  conflicting: ???
                  availability: none
    64          = use 64 bit pointers 
                  member: machine-character
                  required: ????
                  conflicting: ???
                  availability: 64 with {sgi,sgi64, ibmaix, ibmaixmp}
    I8          = use 64 bit integers or uses only 64 bit integers
                  member: machine-character
                  required: ????
                  conflicting: ???
                  availability: i8, I8
    T3ETRAJ     = Used to read t3e trajectories on IEEE machines w/ 32 bit integers
                  member: machine-character
                  required: T3E ???
                  conflicting: ???
                  availability: none
    TESTENDIAN  = Check endian-ness of trajectories when reading 
                  non-native trajectories
                  member: machine-character
                  required: 
                  conflicting: ???
                  availability: only by manual addition to pref.dat
 
    NOCONVERT  =  Turn off FORTRAN code to autmatically detect endian-ness when
                  reading trajectories. Also turn off CONVert option to CHARMM OPEN command.
                  TESTENDIAN has the same effect in in this regard
                  member: machine-character
                  required:
                  conficting: None
                  availability: by manual addition to pref.dat  
[6] Parallel CHARMM descriptors  (see parallel.doc)
    (all require the PARALLEL keyword)
    COMMEASURE  = enable parallel communications timing code
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    GENCOMM     = Use general communications scheme
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: PVMSET, SOCKET, MPISET
    MANYNODES   = use options that are more efficient with many nodes
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    MPI         = Using MPI communication primitives
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: MPISET
    PARAFULL    = Full communication parallel scheme.
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: PVMSET, SOCKET, MPISET, SUNMPI, GWS
                  availability: CSPP, TERRA, CM5, IBMSP, IBMSP3, IBMAIX
                  availability: T3D, T3E, ALPHAMP
    PARALLEL    = Multi-machine (Intel, workstation clusters,...)
                  member: parallel-option
                  required: none
                  conflicting: (see doc/parallel.doc )
                  availability: PVMSET, SOCKET, MPISET, SUNMPI, GWS
                  availability: CSPP, TERRA, CM5, IBMSP, IBMSP3, IBMAIX
                  availability: T3D, T3E, ALPHAMP
    PARASCAL    = Scalable method (coordinates and forces not global)
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    PVM         = use PVM parallel communcations library
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: PVMSET
    PVMC        = use PVM parallel communcations library; alt. method
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: PVMSET
    SHMEM       = Shared memory put & get
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    SOCKET      = Use socket calls for communication
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: SOCKET
    BUFFERED    = Buffered communication (may speed up TCP/IP transfer)
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    CMPI        = CHARMM implementation of the MPI standard (still needed)
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: PVMSET, SOCKET, MPISET, CM5
    CMPIx       = Easy way to temporarily exclude some code. Should be cleaned
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    CONCURR     = Enables documented parallel concurent
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    ETHER       = Parallel platform which was never used
                  (should go away at some point)
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    RING        = Parallel platform which was never used
                  (should go away at some point)
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    SCHED       = Used on clusters to change the scheduling mechanism in kernel
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    TIMESTAMP   = Precise timing of the communication
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    PRLLOUT     = Specify to direct output from processors to separate files
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    CRAY_1DFFT  = Used for parallel PME on Cray T3E
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    MPIFFT      = Faster FFT transpose using asynchronous MPI send/recv
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    MPIFFT      = Faster FFT transpose using asynchronous MPI send/recv
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
    IBMAIX_MPI64 = Correct calls to mpi routines for 64 bit compiles
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: IBMAIXMP with 64
    MPIFFT      = Faster FFT transpose using asynchronous MPI send/recv
                  member: parallel-option
                  required: PARALLEL, ???
                  conflicting: ???
                  availability: none
[7] Feature directives
    ACE         = Generalzied Born model from M Schaefer.
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    AMBER       = Use to get different CCELEC compatable with Amber
                  member: features
                  required: none
                  conflicting: none
                  availability: none
    ASPENER     = Atomic Solvation Parameter energy term
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    BLOCK       = Energy partition and free energy code
                  member: features
                  required: none
                  conflicting: none
                  availability: FULL
    CGENFF      = make top and par arrays larger for General Force Field
                  member: features
                  required: none
                  conflicting: possibly but unlikely: MMFF, CFF, YAMMP
                  availability: FULL
    CMAP        = ???
                  member: features
                  required: ???
                  conflicting: ???
                  availability: IBMSP, IBMSP3, IBMAIX, T3D, T3E
                  availability: FULL
    DIMB        = Iterative diagonalization, reduced basis (normal modes)
                  member: features
                  required: ???
                  availability: FULL
    DMCONS      = Contact map umbrella potential routine
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    DOCK        = modification of block to include assymetric matrix
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    EDS         = Enhanced distribution sampling free energy method
                  member: features
                  required: MSCALE, to get any practical use.
                  conflicting: ???
                  availability: none
    EISPACK     = Use the EISPACK code for diagonalization
                  member: features
                  required: ???
                  conflicting: ???
                  availability: none
    FACTS       = Generalized Born model 
                  (Fully Analytical Continuum Treatment of Solvation)
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    FASTENBFS8  = Reordered loops for faster non-PME nonbond energy.
                  member: features
                  required: None
                  conflicting: None, but see note
                  availability: ALTIX, SGI, SGI64
                  note: This is purely a performance optimization.
                        It was designed for software pipelining architectures.
    FASTEW      = Reordered loops for faster direct sum in PME
                  member: features
                  required: None
                  conflicting: None, but see note
                  availability: ALTIX, SGI, SGI64
                  note: This is purely a performance optimization.
                        It was designed for software pipelining architectures.
                        Some keywords, like DRUDE, ruin the performance on
                        some platforms.
    FILEINPUT   = Use to take standard in from charmm.inp
                  member: features
                  required: ???
                  conflicting: ???
                  availability: none
    FILEOUTPUT  = Use to send standard out to charmm.out
                  member: features
                  required: ???
                  conflicting: ???
                  availability: none
    FMA         = Fast Multipole method
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    FOURD       = minimization and dynamics in 4 dimensions
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    FSSHK       = Use to get optimized SHAKE for non CRAYVEC machines
                  member: features
                  required: ???
                  conflicting: ???
                  availability: IBMSP3, IBMAIX
                  availability: FULL
    GAMESS      = Include the GAMESS QM package
                  member: features, quantum-method
                  required: ???
                  conflicting: quantum-method, ???
                  availability: GAMESS
    GENETIC     = Use to include Genetc algorithm and internal
                    coordinate MC sampling
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    GRID        = Set-up and use grid based potentials for docking
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    BANBA       = Generalized Born module and lambda dynamics
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    GBFIXAT     = Generalized Born module
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    GBINLINE    = Generalized Born module
                  member: features
                  required: ???
                  conflicting: ???
                  availability: IBMSP3, IBMAIX, TSRI
                  availability: FULL
    HMCM        = HArmonic restraints to center of mass
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    IMCUBES     = Include to use image cubes list algorithm
                  member: features
                  required: ???
                  conflicting: NOIMAGES
                  availability: IBMSP3, IBMAIX, TSRI
                  availability: FULL
    LDM         = Lambda-dynamics module
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    LDLAN       = Lambda-dynamics module
                  member: features
                  required: LDM ???
                  conflicting: ???
                  availability: FULL
    LDMGEN      = Lambda-dynamics module
                  member: features
                  required: LDM ???
                  conflicting: ???
                  availability: FULL
    MSCALE      = Multi-scale simulation code.
                  member: features
                  required: PARALLEL GENCOMM
                  conflicting: ???
                  availabilioty: none
    NOLDMUP     = Lambda-dynamics module
                  member: features
                  required: LDM ???
                  conflicting: ???
                  availability: none
    LMC         = Lambda-dynamics module
                  member: features
                  required: LDM ???
                  conflicting: ???
                  availability: FULL
    LRST        = Lambda-dynamics module
                  member: features
                  required: LDM ???
                  conflicting: ???
                  availability: FULL
    LRVDW       = Long-range vdw correction to energy and pressure
                  member: features
                  required: ???
                  conflicting: ???
                  availability: none
    MCSS        = Multiple Copy Simultaneous Search
                  member: features
                  required: ???
                  conflicting: ???
                  availability: none
    MMFF        = Merck's Molecular Force Field
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    MMPT        = Molecular Mechanics with Proton Transfer
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    MOLVIB      = MOLVIB vibrational analysis code
                  member: features
                  required: ???
                  availability: FULL
    MULTCAN     = AN implementation of multi-canonical sampling
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    MTS         = Multiple time step code
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL???
    NIH         = NIH default specs code
                  member: features
                  required: ???
                  conflicting: ???
                  availability: CSPP, MPISET, GWS
                  availability: NIH
    NOPARASWAP  = inhibit ASP parameter swap method (requires ASPENER)
                  member: features
                  required: ???
                  conflicting: ???
                  availability: none
    OLDDYN      = Old dynamics integrator
                  member: features
                  required: none
                  conflicting: none
                  availability: FULL??, LITE
    OPENMM      = use OpenMM library to run on GPU
                  member: features
                  required: none
                  conflicting: none
                  availability: OPENMM
    PBEQ        = Poisson Boltzmann equation solver
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    PBOUND      = Simple periodic boundary method
                  member: features
                  required: ???
                  conflicting: NOIMAGES
                  availability: FULL??, LITE
    PBOUNDC     = Additional keyword for pbound in cray vector code
                  member: features
                  required: ???
                  conflicting: ???
                  availability: none
    PERT        = NIH free energy code
                  member: features
                  required: none
                  conflicting: none
                  availability: FULL
    PM1         = PM1 polarization water model
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    PMEPLSMA    = Used in PME for charged system correction with plasma
                  Replaces the accurate calculation of net charge correction.
                  member: features
                  required: ???
                  conflicting: ???
                  availability: IBMSP3, IBMAIX, TSRI
                  availability: FULL
                  note: This code gives wrong answers - BRB
    POLAR       = Feynman path integral simulations and PM6 or PM1
                  member: features
                  required: ???
                  conflicting: ???
                  availability: none
    PRIMSH      = Shell option in MMFP?
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    PREFMSI     = Includes pref.dat keys in accessible CHARMM data structure
                  member: features
                  required: ???
                  conflicting: ???
                  availability: IBMSP3
    QUANTA      = Quanta interface code
                  member: features
                  required: ???
                  conflicting: ???
                  availability: none
    QUANTUM     = AM1 QM/MM method using MopacXX (not with GAMESS or CADPAC)
                  member: features, quantum-method
                  required: ???
                  conflicting: quantum-method, ???
                  availability: FULL unless other quantum-method
    REPLICA     = Replica code  (requirs BLOCK)
                  member: features
                  required: BLOCK
                  conflicting: none
                  availability: FULL
    RGYCONS     = Umbrella potential in radius of gyration
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    RISM        = RISM solvation code
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    RXNCOR      = RXNCOR code
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    SHAPES      = NIH shape descriptor code (under development)
                  member: features
                  required: none
                  conflicting: none
                  availability: FULL
    SOFTVDW     = Use to permit soft vdw and electrostatic short range
                    potentials 
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    TNPACK      = truncated Newton minimization
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    TRAVEL      = PATH and TRAVEL code
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    TSM         = TSM and ICPERT code
                  member: features
                  required: none
                  conflicting: none
                  availability: FULL
    VALBOND     = VALBOND-trans force field
                  member: features
                  required: ???
                  conflicting: ???
                  availability: FULL
    YAMMP       = Key for compatability in use with YAMMP from Steve Harvey
                  member: features
                  required: ???
                  conflicting: ???
                  availability: none
[8] Graphics keywords;
    NOGRAPHICS  = graphics code not compiled
                  member: graphics-option, major-feature-remove
                  required: none
                  conflicting: none
                  availability: .not.(XREQ|NODSP)
    GLDISPLAY   = use the GL display code for the graphics window (*)
                  The GL code is relatively untested, and may have problems
                  member: graphics-option
                  required: none
                  conflicting: NOGRAPHICS NODISPLAY APOLLO XDISPLAY
                  availability: none
    NODISPLAY   = no graphics window; PostScript, other files produced
                  member: graphics-option
                  required: none
                  conflicting: NOGRAPHICS NODISPLAY XDISPLAY
                  availability: NODSP
    XDISPLAY    = use the X11 display code for the graphics window
                  member: graphics-option
                  required: none
                  conflicting: NOGRAPHICS NODISPLAY APOLLO GLDISPLAY
                  availability: XREQ
[9] Keywords Not for Normal Use
    JUNK        = Code with problems or unused (but not ready for discard)
                  member: unused-code
                  required: ???
                  conflicting: ???
                  availability: none
    DEBUG       = Extra print statements.
                  member: unused-code
                  required: ???
                  conflicting: ???
                  availability: none
    IPRESS      = Pressure code in suspended development (for PBOUND)
                  member: unused-code
                  required: none
                  conflicting: none
                  availability: none
    REPDEB      = debug replica code.
                  member: unused-code
                  required: REPLICA BLOCK
                  conflicting: ???
                  availability: none
    UNUSED      = isolate code apparently not used
                  member: unused-code
                  required: ???
                  conflicting: ???
                  availability: none
    CKSHKTOL    = debugging for fast shake
                  member: unused-code
                  required: ???
                  conflicting: ???
                  availability: none
[10] Major Blocks that can be Removed, but normally are not
    NOGRAPHICS  = removes all graphics code (see above in graphics)
    NOIMAGES    = removes image and crystal fascility
                  member: major-feature-remove
                  required: none
                  conflicting: none
    NOST2       = removes ST2 water model routines
                  member: major-feature-remove
                  required: none
                  conflicting: none
                  availability: TERRA, CM5, T3D, T3E, ALPHAMP
    NOMISC      = removes miscellaneous stuff:
                    BARR, DRAWSP, HBUILD, PATH, QUICKA, SBOUND, SURFAC,
                    XRAY, TESTCH, RXNCOR
                  member: major-feature-remove
                  required: none
                  conflicting: none
    NO_BYCC     = removes BYCC list option for memory savings
                  member: major-feature-remove
                  required: none
                  conflicting: none
                  availability: IBMSP3, IBMAIX, T3E
    NO_BYCU     = removes BYCU list option for memory savings
                  member: major-feature-remove
                  required: none
                  conflicting: none
                  availability: IBMSP3, IBMAIX, T3E
[11] Other Control Directives
    EXPAND      = Do semi-automatic code expansion
                  member: compile-directive
                  required: none
                  conflicting: none
                  availability: NIH
    LONGLINE    = Allows a longer line output format (>80 characters).
                  member: compile-directive
                  required: none
                  conflicting: none
                  availability: NIH
    SAVEFCM     = Include all SAVE statements in .fcm files
                  member: compile-directive
                  required: none
                  conflicting: none
                  availability: NIH
    SINGLE      = Conversion to single precision (SINGLE is a keyword)
                  member: compile-directive
                  required: none
                  conflicting: ???
                  availability: CRAY
    PUTFCM      = Include files are to be copied into fortran files
                  member: compile-directive
                  required: none
                  conflicting: none
                  availability: FULL, LITE, always
    VMS         = Use VMS directory names (from DEC's DCL)
                  member: compile-directive
                  required: VAX???
                  conflicting: none
    REMIMPNON   = Remove any "IMPLICIT NONE" lines found in the source
                  member: compile-directive
                  required: none
                  conflicting: none
    UPPERCASE   = Convert all non-text code to uppercase Fortran
                  member: compile-directive
                  required: none
                  conflicting: none
[12] Undocumented keywords (coming soon)
    ADUMB       =
                  availability: FULL
    CADPAC      =
                  member: features, quantum-method
                  required: ???
                  conflicting: quantum-method, ???
                  availability: CADPAC
    CFF         =
                  availability: FULL
    CHARMMRATE  =
                  availability: POLYRATE
    CHEMPERT    =
                  availability: none
    CHEQ        =
                  availability: none
    DISCOVER    =
                  availability: none
    EMAP        =
                  availability: FULL
    ESTATS      =
                  availability: FULL
    FLUCQ       =
                  availability: none
    GAMESSUK    =
                  member: features, quantum-method
                  required: ???
                  conflicting: quantum-method, ???
                  availability: GAMESSUK
    GAUSSIAN    =
                  availability: none
    GCMC        =
                  availability: none
    GNUALPHA    =
                  availability: none
    GRAPE1      =
                  availability: none
    GSBP        =
                  availability: FULL
    IBMAIX      =
                  member: machine-types, machines
                  required: UNIX, SCALAR
                  conflicting: machines
                  availability: IBMAIX
    IBMAIXMP    =
                  member: machine-types, machines
                  required: UNIX, SCALAR
                  conflicting: machines
                  availability: IBMAIXMP
    INSIGHT     =
                  availability: none
    LIBGRAPE    =
                  availability: none
    LONEPAIR    =
                  availability: FULL
    MBOND       =
                  availability: none
    MC          =
                  availability: FULL
    MEHMC       =
                  availability: none
    NEWRNG      =
                  availability: none
    NOSKULL     = Do not print the Skull and crossbones when CHARMM dies.
                  availability: none
    NOTDEF      =
                  availability: none
    OLDGRAPE    =
                  availability: none
    OLD_IMCUBES =
                  availability: none
    OVERLAP     =
                  availability: none
    PARALLELSHK =
                  availability: none
    PARALLELx   =
                  availability: none
    PARASCC     =
                  availability: none
    PATHINT     =
                  availability: FULL
    PBC         =
                  availability: none
    PNOE        =
                  availability: FULL
    POINTER_KEY =
                  availability: none
    POSIX       =
                  availability: CRAY&'TS'
    QCHEM       =
                  member: features, quantum-method
                  required: ???
                  conflicting: quantum-method, ???
                  availability: none
    QDYN        =
                  availability: none
    RDFSOL      =
                  availability: none
    SASAE       =
                  availability: FULL
    SCCDFTB     =
                  member: features, quantum-method
                  required: ???
                  conflicting: quantum-method, ???
    SHELL       =
                  availability: none
    SPAS        =
                  availability: none
    SSH         =
                  availability: none
    SUN64       =
                  member: machine-types, machines
                  required: UNIX, SCALAR
                  conflicting: machines
                  availability: SUN64
    TMD         =
                  availability: none
    TPS         =
                  availability: none
    TSALLIS     =
                  availability: FULL
CHARMM Documentation / Rick_Venable@nih.gov