CHANGES OF VERSION 5.1.10

1.  Ports to new machines or machine specific changes

2.  BUGS

3. INPUT RELATED CHANGES

4. OUTPUT related changes

5. ALGORITHMS: additions or changes  to existing functional ability

 

1. PORTS to new machines, re-ports, or machine specific changes

   ·    added new sysvars.sp3npaci submitted by Filipe Ribeiro

 

     ·     added updates of fft_macros.m4h and fft_workspace.f90p for the new SGI

            math library used on Hodgkin (sgi o2000) at cambridge.

2. BUGS

     ·    fixed bug in read_band routine.  Changed declaration of mmin to be a 2-dim array.

 

    ·    fixed bug that arose when relaxing at a fixed pressure. It was introduced in 5.1.8.

 

   ·    fixed a bug in relax_method 2 (the limted memory BFGS option)

         the problem arised with multiple types of atoms with differing numbers of

         atoms of said type.

 

   ·    fixed bug in flevel to change the value of ifmax that was causing

         problems in the nmr code. - thanks to mickael Profeta

 

3. INPUT related changes

  ·   added keywords iter_diag_add and iter_diag_add_metal. The values

       associated with these keywords add the number of extra CG iterations

       above max_iter_diag for the Grassmann and Grassmann_metal methods

       respectively. These additional iterations are done until the norm of

       the gradient decreases by 70% or max_iter_diag + iter_diag_add is reached

 

4. OUTPUT related changes

  ·   fixed output for data explorer (dxplot files) pursuant to changes

        proposed by Filipe Ribeiro. This was a known problem as the code

       defines the structure factor backwards.

 

  ·    added output flags to choose specific wavefunctions in output

        for GW code. added num_gwout for fixed # of bands and gwout_mid_energy

        to specify energy level num_gwout WF are output on either side of this

         value. Also can input   gwout_low_energy and gwout_high_energy can also

        be used if an energy window is preferred over the fixed # of bands method

 

 ·    added updates to perlibs out.pm and pw_log.pm

 

 ·    fixed output of wavefunctions to handle spin in naming of output files

         thanks to Je-Luen Li for suggestion.

 

5. ALGORITHMS: additions or changes  to existing functional ability

  ·    altered the thom_fer routine to check if the total energy is minimized.

        If not the charge density is reset and the CG routine is also reset.

 

  ·    altered pulay mixing to use the last 20 SCF iterations instead

        of restarting at a set number. More stable and better.

 

  ·   altered the algorithm for deciding the number of additional CG steps

       to do for Grassmann_metal. No absolute minimum and only 3 additional.

 

  ·   altered the Grassmann_metal algorithm to change the number of bands

       for each k-point so that each k-point has at most an additional 15 bands

       on top of any bands with an occupation above 1d-12.

       Before it was a fixed number which was in efficient as different bands

       may have widely varying occupations

 

  ·   fixed a bug in grassmann_metal. The occupations had been made to be

       reused when MD was put in. We do not want to reuse them when the unit

       cell changes during relaxation. A check for wavefunction reuse ( and thus

       equivalently also for unit cell celaxation) was put in to remedy the

       situation.

 

  ·   for Grassmann_metal option, the 1st SCF cycle is done with Grassmann as

       no occupation values are available. This is set to be done even when

       MD is done. May want to change this in future.

 

  ·    added iter_diag_add to maxit in check for return when too many resets are

        done in Grassmann and Grassmann_metal