- NTHREADS
 - Thread count as used in parallel, should be equal or less
    the number of CPU's in your PC. INDEX scales up perfectly on multicore
    CPUs, the parallel efficiency is all but 100%. You may put an assignment
    to NTHREADS into the index.cfg file and it will be valid for all INDEX
    runs.
 - OUTPUT[1],OUTPUT[2],...
 *.par files, output of EFLECH, must contain covariance
    matrices
- Minlattice,Maxlattice
 - Each one of Cubic, Hexagonal, Tetragonal, Orthorhombic, Monoclinic,
    Triclinic. Defaults are Minlattice=Cubic, Maxlattice=Triclinic.
 - Testlattice
 - For development purposes: If you know the solution, you can check it
    to be the true minimum solution. Give the needed values of
    ALPHA, BETA, GAMMA, A, B, C, BASIS. In the cases of Hexagonal,
    Tetragonal and Monoclinic lattice, uniqueAxis=c is assumed.
 - Vmin,Vmax
 - Limits for the volume of the primiteve unit cell.
    Chosing good values depending from the atomic/molecular content
    of the unit cell will speed up index significantly.
    Values may depend from lattice alike
    
    Vmin[Cubic]=...
    Vmax[Cubic]=...
    Vmin[Hexagonal]=...
    Vmax[Hexagonal]=...
    ...
    
 - PHASE
 - If not set (which is the default), only peaks of the 
    
*.par-files
    without PHASE=... identificator are used for indexing. If PHASE=...
    is set in the *.sav file, then only the peaks identified by 
    this PHASE=... are used for indexing.
 - PARAM[1]=EPS1...
 - Equivalent to BGMN, INDEX searches for best possible adjustment
    parameters EPSi together with unit cell parameters. Due to the restricted
    angular range, only EPS1 is recommended for bad adjusted measurements.
 - ignore
 - Enables exclusion of pollution peaks. For example by
    
    ignore=5/10%
    
    index will ignore up to 5 peaks of maximum 10% pollution content.
    If not set in the control file, INDEX choses some default values
    itself. Computation will stay around double the time compared
    to ignore=0 (no ignore feature), and you must set ignore=0
    in the control file in case you want to disable this new feature.
    You may specify values different from the defaults, too. INDEX 
    reports about the default/used values. 
 - LAMBDA
 - specifies a wavelength file as used by EFLECH, for example 
    LAMBDA=CU selects the file cu.lam for the wavelength distribution 
    (profile of the K alpha doublet) and cu.ano for the corresponding
    anomalous dispersion.
 - SYNCHROTRON
 - same as LAMBDA, but switches on some specialities for synchrotron
    radiation (for example EFLECH searches for narrow lines). Knows an 
    extended form as
    
    SYNCHROTRON=0.079776
    
    for specifying an ideal narrow (delta-peak) wavelength distribution
    at the given wavelength in Nanometers. Then, no anomalous dispersion
    may be specified.
 - NEUTRONS
 - same as LAMBDA, but switches on specalities for neutron CW data.
 
/* Constants as to be published */
/* Additional random angular error, degree in 2 Theta */
#define ADDFEINBREIT 0.01
/* Maximum lattice constant in nm */
/* fein.peakarray[0] holds the first reflection (sorted by 1/d) */
/* therefore fein.peakarray[0].s holds the minimum measured 1/d value */
#define MAXG max(5.0,2.0/fein.peakarray[0].s)
/* If possible by the measured angular range, */
/* the pre-scan angular range must reach this 1/d value. */
/* Lattice constants (in nm) may go down to the inverse of this value */
#define MINSCANSMAX  minscansmax(lattice)
static double minscansmax(LATTICE lattice){
  switch(lattice){
  case KUBISCH:
  case HEXAGONAL:
  case TETRAGONAL:
  case ORTHORHOMBISCH:return 6.0;
  case MONOKLIN:return 4.2;
  case TRIKLIN:return 3.7;
  }
}