Created by Nick Papior on 2017-10-06 and last modified on 2019-07-29
Get this branch:
bzr branch lp:siesta/4.0
Members of Siesta Maintainers can upload to this branch. Log in for directions.

Branch merges

Related bugs

Related blueprints

Branch information

Siesta Maintainers

Recent revisions

596. By Nick Papior on 2019-07-29

Fixed cell transpose for socket communication, fixes lp:1835196

I have tested this using the ASE socket implementation and there
it is also necessary to do the transpose.

595. By Nick Papior on 2019-04-05

Amended documentation for r540 in alloc.F90

594. By Nick Papior on 2019-04-04

Removed OpenMP in delk since it was buggy

I have not tested whether 4.0 works with OpenMP, but
now it at least compiles!

593. By Alberto Garcia on 2019-03-18

Make matel registry pool re-sizeable

In some cases the default (fixed) size of the matel registry of radial
functions could be too small. The pool has now been made dynamic, and
it will be extended automatically if needed.

592. By Nick Papior on 2019-02-20

Fixed vibra utility in precision, fixed lp:1816719

This fixes an inconsistency where the Vibra utility
read double precision numbers, converted them into
a single precision complex array and converted them
back into a double precision array.

Even for the tests this shows up, in particular for the
low eigenmodes.

All tests are also updated using this patched vibra.

591. By Alberto Garcia on 2019-02-11

Increase flexibility in the handling of pseudopotentials

* The maximum l for KB projectors is now automatically set to the
highest l in the pseudopotential file. The program will stop only if
there are not enough l-channels to construct all the PAOs needed with
the appropriate semilocal pseudopotentials.

* The reading of the PS.KB-projectors block has been made more robust,
actually allowing missing reference-energy lines. 'nkbmx' has been
increased to 3 in 'atmparams'.

(+ Fix for remaining problem in assignment of n-quantum number to
polarization orbitals. Removal of dead code.)

(+ Fix for duplicate symbols in Util/Gen-basis)

590. By Alberto Garcia on 2019-01-30

Fix some issues with polarization orbitals. Bessel orbs improvements.

A number of issues (mostly cosmetic, or appearing in rare occasions) with
polarization orbitals have been fixed.

* Fix 'n' quantum number for high-l polarization orbitals

  When a polarization orbital had angular momentum l greater than the
  rest of the the basis, its associated principal quantum number n was
  off (it was set to the polarized shell's n).

  This error affected the metadata in the .ion files, the wavefunction
  files, and the PDOS file, so some analysis operations might have
  failed to take into account those orbitals if they were requested
  explicitly (e.g., a COOP calculation with 'O_3d' symbols might show
  the bug; but not one with 'O_d' or 'O').

* Fix for the case of polarization orbitals having the same l as a
  semicore state.

  An example: For Ti, the electronic structure is 3s2 3p6 3d2 4s2 4p0*

  4p0* is a polarization orbital, and 3p6 can be a semicore orbital.
  The outer orbitals for l=0..3 reported by the 'periodic table'
  routines for Ti are:

      4s2 3p6 3d2 4f0

  When using a pseudopotential with 3p6 in the valence (a "semicore"
  state), if 4p did not appear explicitly in a PAO.Basis block (i.e.,
  with the entry for 4s marked as "polarized"), the program did not
  identify 3p as a "semicore state", and thus it did not generate
  *two* KB operators for l=1.

  This has been fixed, together with the wrong 'n' assignment to the
  polarization orbital.

* Improve output of basis specification

  Change misleading 'n=' prefix by 'i=' (it is simply an enumeration)
  and add a proper symbolic nl identifier at the end of the line.

Some cosmetic and usability improvements have also been made to the
handling of Bessel floating orbitals:

* Extend and clarify the handling of Bessel floating orbitals

  For Bessel floating orbitals different 'zetas' correspond to
  progressively excited states (more nodes) for a given l.

  A user might want to reproduce the basis coverage of a given 'nl'
  shell with a suite of bessel functions with increasing number of
  nodes, using the 'zeta' mechanism. Up to now, it was only possible to
  do this for a single 'n' for each l, and the 'n' quantum number
  specified by the user in the (compulsory for Bessel orbitals)
  PAO.Basis block was ignored.

  This patch enables the specification of multiple 'nl' shells for the
  same l, and keeps the user's choice for the 'n' quantum number in
  the output files of the program (.ion, .PDOS, etc).

* Enable short-hand for entering rc information in PAO.Basis block

  If the number of rc's for a given shell is less than the number of
  'zetas', the program will assign the last rc value to the remaining
  zetas, rather than stopping with an error. This is particularly
  useful for Bessel suites of orbitals.
  The same feature works for the (deprecated) contraction factors.

  A new test (Tests/bessel-rich) exemplifies this, as well as the
  new Bessel extensions.

589. By Alberto Garcia on 2018-12-19

Avoid the use of a non-explicitly deallocated array

In SiestaXC/mesh3d.F90 an allocatable array was not explicitly
deallocated. This is acceptable for F95 and beyond, but it could
lead to problems with some compilers or compiler options.
The array can in fact be removed by a minor change of the code.

(Thanks to Yann Pouillon and Nick Papior)

588. By Alberto Garcia on 2018-12-04

Fix C10 computation in molecularmechanics

Use df10 instead of df6 in C10 section.

587. By Nick Papior on 2018-10-25

Fixed grid-cell sampling and output density, lp:1799991

The output density is not according to the input atomic coordinates.
This was because the neighbouring lists was only updated for the last
displaced atoms.
The fix is however very easy since we simply call the dhscf_init
routine again with the input atomic coordinates after having performed
the grid-cell sampling.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.