1. 23 Aug, 2016 2 commits
  2. 19 Aug, 2016 1 commit
    • Nick R. Papior's avatar
      Updated transiesta-tbtrans tests with the new settings · cc4d7315
      Nick R. Papior authored
      - Everything seems in order. In fact some of the
        convergence properties are now better due to the
        constraint on the Hamiltonian.
      
      - Fixed the print-out of error on the energy density
        matrix to print in eV.
      
      - Fixed scripts for TS tests to only compile tbtrans
        if it isn't already compiled.
      
      - Removed mentions of old flags in the TS test.
        Also corrected those which have farther than principal
        cell connections.
        In these situations I have added a remark for the flag
        so it should be clear its use is highly discouraged.
      cc4d7315
  3. 18 Aug, 2016 4 commits
    • Nick R. Papior's avatar
      Enabled EDM convergence criteria, controls the forces · 8092b66f
      Nick R. Papior authored
      - The convergence criteria now enables converging the
        energy density matrix.
      
        This is a simple addition which does not introduce
        any complexity to the code.
        I expect it may be used to control the fineness of
        the force calculations.
        It does, however, not seem too much different than
        the Hamiltonian convergence.
      8092b66f
    • Nick R. Papior's avatar
      Re-runned all tests and updated the reference tests · 0e98f1ad
      Nick R. Papior authored
      - I have re-runned all tests with the new defaults (mix hamiltonian
        and H converge as well.)
      
        A couple of the tests showed changes (see r554) which could
        be explained by a not fully converged system in the mix DM case.
      
        As such it seems these new defaults exhibit superior convergence
        and, hopefully, more consistent results as both the Hamiltonian and
        DM are converged.
      
        It would perhaps be interesting to also converge EDM?
      
      - A couple of the tests was not added in the previous reference frame
        and they are now there.
        I haven't compared these against the old version.
        These tests are:
          anneal-cont.out
          carbon_nanoscroll.out
          dipole_correction.out
          fe_cohp.out
          fe_noncol_kp.out
          fen.out
          force_constants.out
          ge111.out
          h2o-rhog-mixing.out
          h2o_2.out
          pb_bulk.out
          si001.out
          sinw.out
          sinw_2.out
          
      0e98f1ad
    • Nick R. Papior's avatar
      Updated documentation, PAO and AtomicCoordinates in new format · 130e1a6d
      Nick R. Papior authored
      - Updated all PAO and AtomicCoordinates entries to the new format.
      130e1a6d
    • Nick R. Papior's avatar
      Run all tests, solved merge problems and updated convergence criteria · a6e34ad7
      Nick R. Papior authored
      - Re-run all tests.
      
        This showed a couple of interesting things.
      
        1. There was a mistake in the compute_dm code after
        the PEXSI merge when spin-orbit coupling was introduced
        2. I have removed Hprev as it essentially is the same as
        Hold. Either way it shouldn't produce a huge difference
        in the tracking of the dEbs, etc. (after all they are
        not physically used other than for convergence criteria)
        3. The change to SCF.Mix Hamiltonian resulted in a huge
        number of changes in the output. This is because the first
        step prints out the energies at INIT. However, the Hamiltonian
        is different because it is initialized after the compute_dm step.
      
      - Changed the logic in convergence criteria.
        Now the convergence criterias are additive and may be fully controlled.
        However, at least one convergence criteria must be used.
      
        Now the default convergence criteria is both the Hamiltonian and the density
        matrix.
      
        This is updated in the manual and the compatibility note.
      
      - Initially I thought the above differences in the energies was
        due to inconsistencies after r538. Hence I have created some
        simple routines in the m_energies.f90 code which updates a selected
        few of the energies.
        I think this should be adopted in the future to ensure that all
        calls to update energies are consistent.
        This will make changes to energy calculations less error-prone.
      
      - Implemented the spin-type in the following routines:
         compute_dm
         final_H_f_stress
         state_init
      
      - Changed the m_compute_max_diff to an interface code with appropriate
        size calculations. There was no reason for explicitly using the
        sparse pattern.
      
      - Fixed a bug in the molecularmechanics code (introduced by Nick r542)
      
      - Added a cyclediffs.sh script which loops on OUT.diffs files and
        it lets one easily cycle the diffs, simply do:
      
        cd Tests
        make check
        ./cyclediffs.sh
      
        and answer all the questions. Basically it makes deletes OUT.diffs
        which you have agreed isn't really a change.
      
      - The tests may now be runned via:
      
         make MPI="mpirun -np 4"
         
        which then uses the default SIESTA location.
      
        Currently the script checks whether mpirun/mpiexec
        is in SIESTA variable, and if so, does not use MPI variable.
        This makes it easier to decide on the number of cores without
        writing the full path.
      a6e34ad7
  4. 16 Aug, 2016 1 commit
    • Nick R. Papior's avatar
      Updated SCF print-outs · f52b7a15
      Nick R. Papior authored
      - Now dDmax and dHmax are both printed (always)
      
      - Added more digits to the output so that non-collinear
        and spin-orbit etc. have the same format.
      
      - After the final step the fermi energy is now also printed
        in the list of Final energies
      f52b7a15
  5. 13 Aug, 2016 2 commits
    • Nick R. Papior's avatar
      Fixed none orbital pivoting ('none' should be equivalent to orb+none) · bf0d0b34
      Nick R. Papior authored
      - If a transiesta users requests Pivot 'none' there
        was a bug related to defaulting the atomic pivoting
        table.
        This has been fixed now.
        
      bf0d0b34
    • Nick R. Papior's avatar
      Enabled BLAS and LAPACK sources shipped with siesta fixes lp:1593706 · a1c0f310
      Nick R. Papior authored
      - Updated blas.f and lapack.f to encompass all required
        routines to succesfully compile siesta without having the
        blas and lapack libraries.
      
        We still do not recommend this as performance libraries
        (especially BLAS) will drastically improve performance.
      
        The current sources (without comments) are taken from
        the lapack svn repository at revision 1776 (v3.6.1)
      
      - To make it easier to update the scripts in future
        commits a create.sh script and linalg2file.py script
        are added which enables to retrieve the correct sources
        from the basic lapack/blas sources.
      
      - Updated documentation which describes libsiestaBLAS/LAPACK.a
      
      - Enabled libsiestaBLAS/LAPACK.a in tbtrans
      
        
      a1c0f310
  6. 12 Aug, 2016 2 commits
  7. 11 Aug, 2016 2 commits
    • Nick R. Papior's avatar
      Fixed command line options for siesta · abad420f
      Nick R. Papior authored
      - The PEXSI branch introduced command line-options.
        However, that was also introduced in transiesta branch
        Now they are merged in a standard form.
      
      - Updated manual to reflect these changes.
      
      - Also fixed bug for piping AND using command line options
      abad420f
    • Nick R. Papior's avatar
      Updated compatibility notes, MixH -> default · 16647190
      Nick R. Papior authored
      - Updated compatibility notes for specifics regarding the 4.1
        release
      
      - Made MixHamiltonian the default mixing option.
      
      - Updated documentation for siesta by moving a couple of the
        basic entries to the new format.
      16647190
  8. 10 Aug, 2016 4 commits
  9. 08 Aug, 2016 2 commits
    • Nick R. Papior's avatar
      Merged documentation, see Docs/branch-changes/NOTES.documentation · 63df7ad5
      Nick R. Papior authored
      This merge introduces a new documentation scheme for LaTeX.
      It intrinsically introduces clickable fdf-flags and creates 3
      relevant indices, 1) regular index, 2) fdf-flag (only!) index
      and a files index.
      
      Test-suite ran. No problems (some of them, however, needs to be 
      updated such that problems shouldn't occur)
      63df7ad5
    • Nick R. Papior's avatar
      Updated documentation of the diag part. · c23d7c51
      Nick R. Papior authored
      More flags are converted into the new fdfentry method.
      
      Fixed references for the transiesta electrode setup
      and the mixing variables.
      One should use the fdfindex* variant for sub-options in
      blocks.
      c23d7c51
  10. 06 Aug, 2016 1 commit
    • Nick R. Papior's avatar
      Fixed a few remaining things of the documentation · eee1540f
      Nick R. Papior authored
      Added documentation at the top of the siesta.tex
      file. There a short explanation of the simple
      mechanisms for writing new documentation is created.
      
      Added nag package which will complain about certain
      use of ancient commands.
      eee1540f
  11. 05 Aug, 2016 6 commits
  12. 04 Aug, 2016 7 commits
    • Nick R. Papior's avatar
      Added Docs/release.sh script for easy creation of tar.gz · 40648c90
      Nick R. Papior authored
      This script enables easier release tar.gz files with a consistent
      format.
      The main functionality is that it will create a folder:
         siesta-releases
      in the main folder where it will create a branch at the specified
      tag. It will subsequently build the documentation and create
      any necessary changes to the code that is necessary before
      making the code available publicly.
      
      This script is provided by Nick R. Papior
      40648c90
    • Nick R. Papior's avatar
      Moved many of the CHANGES files to the branch-changes · 5d094062
      Nick R. Papior authored
      Their use will probably be discouraged to be used.
      
      The one main use for future CHANGES would provide a complete (single)
      detailed description of the branch changes.
      5d094062
    • Nick R. Papior's avatar
      Updated documentation for change of list in fdf · 66a3de1f
      Nick R. Papior authored
      Added documentation of PEXSI
      
      Added documentation of Accuracy control and principal
      cell connections.
      66a3de1f
    • Nick R. Papior's avatar
      Merged transiesta · 6d014704
      Nick R. Papior authored
      Added die routine for non-complete principal connections
      and precision control of the SE convergence.
      
      Changed the { to [ for list construction in FDF.
      
      Added fdf_bphysical to read 'VN' (value name)
      6d014704
    • Nick R. Papior's avatar
      Added fdf_bphysical and change { to [ in list creations · 477be823
      Nick R. Papior authored
      The sample.f90 has been checked and works correctly and
      thus all lists may now be used as [. This is to accommodate
      future { for dictionaries etc.
      
      Added a fdf_bphysical routine for reading physical quantities
      in blocks.
      
      Added a copy statement to the dictionary.
      477be823
    • Alberto Garcia's avatar
      Merged PEXSI-solver interface code · fd38db27
      Alberto Garcia authored
      Please see the manual for the new options related to the PEXSI
      solver. Keep in mind that this solver is competitive only for very
      large calculations.
      
      Alberto Garcia thanks Lin Lin, Chao Yang, Georg Huhs, and Nick Papior
      for their help with the design and coding of the interface.
      
      Developer note: Please see the "Notes for PEXSI operation" in
      Src/siesta.F for a brief overview of the basic coding changes
      that need to be kept into account for further development work.
      
      
      fd38db27
    • Alberto Garcia's avatar
      Use SIESTA__PEXSI as symbol, and .LDOS. instead of .localdos. · da222183
      Alberto Garcia authored
      Updated "ifdefs" to use SIESTA__PEXSI as flag. 
      
      PEXSI local DOS routines now use  .LDOS. fdf flags. Updated test files.
      
      (+ make previous 2D-array MPI "gather" interface changes in .lit files)
      
      
      
      da222183
  13. 03 Aug, 2016 1 commit
    • Alberto Garcia's avatar
      Cleaner fix for init_spin behavior · 9e8f530c
      Alberto Garcia authored
      The nspin, spinor_dim, et al integer pointers in 'm_init' have now
      been initialized to 'null()', and the 'init_spin' routine is now
      called by all processes in 'siesta_init'.  This is the cleanest way to
      fix the problem described in the previous commit.
      
      Note that the PEXSI routines still use the 'nspin' variable internally
      to refer to both 'spinor_dim' and 'h_spin_dim'. This will be changed when
      mixed-spin solving is implemented.
      
      modified:
        Src/m_spin.F90
        Src/siesta_init.F
      
      
      
      9e8f530c
  14. 01 Aug, 2016 1 commit
  15. 31 Jul, 2016 2 commits
    • Nick R. Papior's avatar
      Added accuracy control to transiesta on a per-electrode case · 7170066d
      Nick R. Papior authored
      Through fdf-flags one may control the accuracy required for the
      convergence of the self-energies. This enables finer control of
      the self-energy calculations and in some cases it may be useful.
      7170066d
    • Alberto Garcia's avatar
      Fix bug related to init_spin behavior · 11a4dbbe
      Alberto Garcia authored
      The PEXSI-only processes do not call 'init_spin', and rely on a
      broadcast from the Siesta_worker nodes to get certain information. As
      nspin, spinor_dim, et al were integer pointers in 'm_init', they were
      undefined on entry to the PEXSI interface routines, causing segfaults.
      They have been converted to plain integers for now, pending a review
      of other possible ways to fix the problem. 
      
      Some pointers in sparse_matrices have been initialized to null().
      
      A test to catch non-collinear or spin-orbit cases has been added
      before the call to the PEXSI solver.
      
      Note that the PEXSI routines still use the 'nspin' variable internally
      to refer to both 'spinor_dim' and 'h_spin_dim'. This will be changed when
      mixed-spin solving is implemented.
      
      Added Tests/sih-pexsi-spin.
      
      modified:
        Src/compute_dm.F
        Src/m_spin.F90
        Src/siesta_analysis.F
        Src/sparse_matrices.F
      added:
        Tests/sih-pexsi-spin
      
      
      
      11a4dbbe
  16. 30 Jul, 2016 2 commits
    • Alberto Garcia's avatar
      Put back the MPI interfaces · 3632a252
      Alberto Garcia authored
      The custom MPI interfaces in Src/MPI are now compiled
      by default, except if the preprocessor option
      
       -DNO_MPI_INTERFACES
      
      is specified.
      
      + 2D arrays have to be passed as a(1,1) in the
        mpi_(all)gather calls in the pexsi modules...
      
      + Update pexsi arch.makes in Src/Sys
      
      
      
      3632a252
    • Alberto Garcia's avatar
      Wrap PEXSI code within preprocessor blocks · af3efe33
      Alberto Garcia authored
      The mechanism is similar to that used for TranSiesta.
      
      (Also wrapped ELPA code within MPI preprocessor blocks)
      
      
      af3efe33