Purpose: Read a natpot file and convert to a
         canonical polyadic decomposition (CPD)
         which is subsequently optimized using ALS.

  Usage:  natpot2cpd [-h|-?]  [-ver -o -l -c -C -CC
                                 -r -R -s -n -g -w -spd -ev -d -v -D -DD]
   vers:  Program version (e.g. 84 for version 8.4)
    d/D:  Indicates a debug version

 optn: -h           : Print this help-text.
       -?           : Print this help-text.
       -ver         : Version information.

       -mnd         : Make Name Directory.Creates the name directory, if not existent.
       -w           : Allow overwrite.
       -c           : Continue obtimizing an existing CPD file.
       -C           : Same as -c but reset iteration counter.
       -CC     : Same as -C but reads the initial CPD-file from directory .
       -r      : CPD rank, default: sum of SPP of natpot
                      or rank of read-in CPD.
       -R           : Initial guess of CPD are random numbers,
                      default: pick largest coeff and SPP
                      from natpot or use read-in CPD.
       -a     : Regularization, default:  sqrt(machine_precision).
       -s [,S]: Stop if |natpot-cpd| is less than .
                      Default: not set.  may bear a
                      unit S [au, eV, meV, cm-1]. default a.u.
       -o           : Write overlap matrix of the cpd on exit.
                      Default: not set.
       -l           : Write coefficients of the cpd on exit.
                      Default: not set.
       -spd   : Solve ALS using Cholesky decomposition with
                      uniform regularization on the diagonal.
                      If neither -spd nor -ev is set, then -spd with
                      regularization=sqrt(machine_precision) is assumed.
       -ev    : Solve ALS using eigen-decomposition with
                      regularization of smallest eigenvalues.
       -d [,S]: Use  as error-estimate when de-contracting
                      the natpot D-tensor.  may bear a
                      unit S [au, eV, meV, cm-1]. default a.u.
       -n      : Maximum number of iterations of ALS optimizer, default 1000.
       -g : Do not start with full rank but with rank  
                      and increase every  iterations by the same amount.
                      If -g is set, -r must be set too, to set a maximal rank.
       -v           : If a vpot file is present, calculate the 
                      error of the cpd against the vpot in the end.

       -I      : Read natpot and dvr from . Default: current directory
       -D     : Write output to . Default: current directory.
       -DD    : Similar to -D, but additionally drops
                      the prefix np2cpd from created files.

        The program supports OpenMP (compile with -P option)