1. 22 Feb, 2022 1 commit
  2. 11 Feb, 2022 1 commit
  3. 10 Jul, 2020 1 commit
  4. 08 Apr, 2020 1 commit
  5. 07 Apr, 2020 1 commit
    • Nick R. Papior's avatar
      bug: fixed fdf_* input (len=MAX_LENGTH) · 9e13576d
      Nick R. Papior authored
      Some routines had an interface with
      
         character(len=MAX_LENGTH)
      
      which was problematic if the string from
      outside did not have this length. In which
      case fully optimized code would yield an overflow
      and reading the next bytes.
      
      This fixes this case (will also be pushed to 4.0
      and pushed upstream).
      9e13576d
  6. 13 Mar, 2020 1 commit
  7. 12 Mar, 2020 1 commit
  8. 24 Dec, 2019 1 commit
  9. 21 Nov, 2019 1 commit
  10. 04 Jun, 2019 4 commits
  11. 14 Mar, 2019 3 commits
  12. 11 Mar, 2019 2 commits
  13. 09 Mar, 2019 1 commit
  14. 08 Mar, 2019 1 commit
  15. 08 Sep, 2018 1 commit
    • Nick R. Papior's avatar
      fdf-updates, allow fixing block-log output, added block-line-count and is-block · 10ffa507
      Nick R. Papior authored
      
      
      The fdf-infrastructure is default to create log-output files. However, these
      log-files are not directly usable as input for subsequent siesta runs.
      The reason was that blocks *only* wrote out %endblock to the log if
      fdf_bline was called until it failed, i.e. to the end of the block.
      And currently many places in siesta was reading based on another integer
      input. Secondly, the fdf_defined opened a block which isn't necessary.
      
      The solution is divided into a few things, parenthesis is the interface:
      
      fdf_isblock: (label)
      Added this routine to check whether a label is defined as a block.
      Currently there may be inconsistencies if the label is used both as
      block and label, however one can then programatically decide.
      This routine is now used in fdf_defined because it removes the call
      to fdf_block (which opens the block).
      
      Writes
      
        #:block? <label> T/F
      
      to log.
      
      fdf_bclose: (block_fdf)
      Added routine to loop the remaining lines in the block. This is never necessary
      unless one wants the log-file to be complete in terms of re-use.
      I.e. if one reads all lines in the block via:
         do while ( fdf_bline(bfdf, pline) )
           ...
         end do
      there is no need for fdf_bclose. However, with
      
         n = fdf_get('LabelSize', 0)
         if ( n > 0 .and. fdf_block('Label', bfdf) ) then
           do i = 1, n
              if ( fdf_bline(bfdf, pline) ) then
      	  ...
      	end if
           end do
         end if
         call fdf_bclose(bfdf)
      
      it is required to use fdf_bclose to close the block in the log.
      
      fdf_block_linecount: (label, morph?)
      Added routine to count the number of lines in a block.
      If morph is not specified, any line counts as a valid line.
      If morph is present a match will be done for each line, and if
      accepted it counts as a line.
      For instance in AtomicCoordinatesAndAtomicSpecies one would do:
      
        na = fdf_block_linecount('AtomicCoordinatesAndAtomicSpecies', 'vvvi')
      
      Note that this routine will suppress writing to the log file. The only thing
      that is written to the log-file is:
      
        #:block-line-count? <label> (morph?) N
      
      Secondly, all log-output that does not result in a valid input line is
      prefixed with '#:'
      This was the case for fdf_bbackspace which simply wrote out "(Backspace to..."
      Now it writes: "#:(Backspace to..."
      Also fixed in fdf_defined.
      Signed-off-by: Nick R. Papior's avatarNick Papior <nickpapior@gmail.com>
      10ffa507
  16. 11 Feb, 2018 3 commits
  17. 04 Feb, 2018 1 commit
  18. 30 Jan, 2018 2 commits
  19. 04 Dec, 2017 1 commit
  20. 02 Nov, 2017 2 commits
  21. 16 Oct, 2017 1 commit
  22. 10 Oct, 2017 1 commit
  23. 09 Oct, 2017 7 commits
  24. 18 Nov, 2016 1 commit