1. 01 Jun, 2017 1 commit
    • Lorenz Huedepohl's avatar
      A bit of cleanup of the test programs · 958032ef
      Lorenz Huedepohl authored
      - Remove all use of ELPA internal modules, the test programs now
        only use the public ELPA API. This is now enforced, by hiding the
        private modules
      
      - Prefix all test internal modules with "test_" to make it really
        clear that these modules are not to be used by users.
      958032ef
  2. 30 May, 2017 1 commit
    • Andreas Marek's avatar
      Rename of "solve" method to "eigenvectors" · 0bbb7437
      Andreas Marek authored
      The public "solve" method has been renamed "eigenvectors" since it
      computes the eigenvalues and (at least parts of) the eigenvectors
      
      Another routine "eigenvalues" will just compute the eigenvalues
      0bbb7437
  3. 22 May, 2017 2 commits
  4. 16 May, 2017 3 commits
  5. 28 Apr, 2017 1 commit
  6. 20 Apr, 2017 1 commit
  7. 19 Apr, 2017 1 commit
    • Andreas Marek's avatar
      Fix errors in tests for new interface · a953004b
      Andreas Marek authored
      Actually, the complex cases have not been checked so far.
      Furthermore, there has been an inconsistency between setting
      
      set("gpu",1)
      
      and *NOT* setting a GPU kernel via the set mechanism. Then, the
      default kernel (which is *NOT* GPU) has been used
      a953004b
  8. 10 Apr, 2017 1 commit
  9. 08 Apr, 2017 1 commit
  10. 07 Apr, 2017 2 commits
  11. 04 Apr, 2017 1 commit
  12. 03 Apr, 2017 2 commits
    • Lorenz Huedepohl's avatar
      Initial version of new ELPA API · f91c0b4b
      Lorenz Huedepohl authored
      This attempt at a new, more flexible API for ELPA should hopefully
      result in less ABI/API breaking changes in the future.
      
      The new API features a generic key/value system for options that can be
      extended without changing any exported symbols or function signatures,
      so that new, optional features do not influence existing usage of ELPA.
      
      We hope this makes life easier for users of ELPA - at least in the long
      run when they migrated to this newest of ABI changes :)
      
      Example usage (explicit documentation to be done in a future commit):
      
         if (elpa_init(20170403) /= ELPA_OK) then
           error stop "ELPA API version not supported"
         endif
      
         e = elpa_create(na, nev, na_rows, na_cols, nblk, mpi_comm_world, my_prow, my_pcol, success)
      
         call e%set("solver", ELPA_SOLVER_2STAGE)
         call e%set("real_kernel", ELPA_2STAGE_REAL_GENERIC)
      
         call e%solve(a, ev, z, success)
      
         call e%destroy()
      
         call elpa_uninit()
      f91c0b4b
    • Lorenz Huedepohl's avatar
      Improve crazy assert macro · 4de50074
      Lorenz Huedepohl authored
      4de50074
  13. 16 Feb, 2017 1 commit
  14. 31 Jan, 2017 1 commit
  15. 16 Jan, 2017 1 commit
  16. 11 Nov, 2016 1 commit
  17. 01 Nov, 2016 1 commit
  18. 18 Oct, 2016 1 commit
  19. 11 Oct, 2016 1 commit
  20. 09 Aug, 2016 1 commit
  21. 02 Jul, 2016 3 commits
  22. 13 May, 2016 1 commit
  23. 25 Apr, 2016 1 commit
  24. 18 Mar, 2016 1 commit
    • Andreas Marek's avatar
      Allow ELPA to be build with single and double precision symbols in one · 647aa5a8
      Andreas Marek authored
      library
      
      It the configure option "--enable-single-precision" is specified,
      ELPA will also be build for single precision usage. The double precision
      and single precision will be available at the same time with names
      "solve_evp_real_1stage_double" or "solve_evp_real_1stage_single" and
      so on...
      
      This change immplied some major refactoring of the ELPA code:
      1.) functions/procedures had to be renamed with suffix "_double"
      
      2.) If necessary the same functions have to be available with suffix
      "_single"
      
      3.) Variable kind definitions have to be consistent with the
      intented use
      
      To avoid uneccessary code duplication this is done (most of the time)
      with preprocessor string substitution.
      
      The documentation has been updated.
      
      NOT SUPPORTED are at the moment:
      
      - single precision usage of ELPA2 with kernels, others than "generic"
        and "generic_simple"
      
      - single precision usage of GPU
      647aa5a8
  25. 04 Mar, 2016 1 commit
  26. 26 Feb, 2016 2 commits
  27. 24 Feb, 2016 3 commits
    • Andreas Marek's avatar
      Add migration notice · 31a03aa2
      Andreas Marek authored
      31a03aa2
    • Andreas Marek's avatar
      Template for print messages of test programs · 296e4f48
      Andreas Marek authored
      The test programs include the same template now, the
      printed messages are thus unified
      296e4f48
    • Andreas Marek's avatar
      Optional build of ELPA without MPI · 49f119aa
      Andreas Marek authored
      The configure flag "--enable-shared-memory-only" triggers a build
      of ELPA without MPI support:
      
      - all MPI calls are skipped (or overloaded)
      - all calls to scalapack functions are replaced by the corresponding
        lapack calls
      - all calls to blacs are skipped
      
      Using ELPA without MPI gives the same results as using ELPA with 1 MPI
      task!
      
      This version is not yet optimized for performance, here and there some
      unecessary copies are done.
      
      Ths version is intended for users, who do not have MPI in their
      application but still would like to use ELPA on one compute node
      49f119aa
  28. 17 Feb, 2016 1 commit
    • Andreas Marek's avatar
      Single precision support for ELPA2 · 940b8f26
      Andreas Marek authored
      ELPA2 can now be build (as ELPA1) for single precision calculations.
      The ELPA2 kernles which are implemented in assembler, C, or C++ have NOT
      yet been ported.
      
      Thus at the moment only the GENERIC and GENERIC_SIMPLE kernels support
      single precision calculations
      940b8f26
  29. 12 Feb, 2016 1 commit
    • Andreas Marek's avatar
      Single precision support for ELPA2 · 56043bdc
      Andreas Marek authored
      ELPA2 can now be build (as ELPA1) for single precision calculations.
      The ELPA2 kernles which are implemented in assembler, C, or C++ have NOT
      yet been ported.
      
      Thus at the moment only the GENERIC and GENERIC_SIMPLE kernels support
      single precision calculations
      56043bdc
  30. 04 Jan, 2016 1 commit
    • Andreas Marek's avatar
      Started to remove depecrated Fortran variable declerations · 0a05f7d3
      Andreas Marek authored
      The Fortran variable declerations "variable type*[4,8,16]" is non
      Fortran standard. It might cause problem in the future.
      Furthermore, the usage of Fortran and C togehther is more clean
      if variables are defined according to C variable types.
      
      This is done, now for all the test programs
      0a05f7d3