[Flexiblesusy-commits] [FlexibleSUSY/FlexibleSUSY] 5aeb03: adding non-strict DR-bar convergence tester

GitHub noreply at github.com
Wed May 20 14:45:51 BST 2015


  Branch: refs/heads/feature-non-strict-convergence
  Home:   https://github.com/FlexibleSUSY/FlexibleSUSY
  Commit: 5aeb034026d7438a5e2f7a47f6961e3f362fa093
      https://github.com/FlexibleSUSY/FlexibleSUSY/commit/5aeb034026d7438a5e2f7a47f6961e3f362fa093
  Author: Alexander Voigt <alexander.voigt at desy.de>
  Date:   2015-05-20 (Wed, 20 May 2015)

  Changed paths:
    A src/convergence_tester_drbar_nonstrict.hpp
    M src/module.mk
    A src/two_scale_convergence_tester_drbar_nonstrict.hpp

  Log Message:
  -----------
  adding non-strict DR-bar convergence tester

This convergence tester is non-strict in the sense, that it returns
true if the precision goal or the maximum number of iterations has
been reached.  If this convergence tester is used, no exception of
type NoConvergenceError() is thrown and the non-convergence is
therefore not treated as an error case.

However, non-convergent points are of course a problem!  Therefore, a
warning will be added to catch such problematic cases.


  Commit: 67ad297154a1d8cd53b2fc4c080a77ef0265f64b
      https://github.com/FlexibleSUSY/FlexibleSUSY/commit/67ad297154a1d8cd53b2fc4c080a77ef0265f64b
  Author: Alexander Voigt <alexander.voigt at desy.de>
  Date:   2015-05-20 (Wed, 20 May 2015)

  Changed paths:
    M src/two_scale_convergence_tester.cpp
    M src/two_scale_convergence_tester.hpp
    M src/two_scale_convergence_tester_drbar.hpp

  Log Message:
  -----------
  Merge branch 'development' into feature-non-strict-convergence


  Commit: 9cc97a331aad914463c8a89b7e71c2f97da0c378
      https://github.com/FlexibleSUSY/FlexibleSUSY/commit/9cc97a331aad914463c8a89b7e71c2f97da0c378
  Author: Alexander Voigt <alexander.voigt at desy.de>
  Date:   2015-05-20 (Wed, 20 May 2015)

  Changed paths:
    M src/two_scale_convergence_tester_drbar.hpp

  Log Message:
  -----------
  adding non-const model getter


  Commit: cdd2512227d9047ae03fb0f0694df0564892937c
      https://github.com/FlexibleSUSY/FlexibleSUSY/commit/cdd2512227d9047ae03fb0f0694df0564892937c
  Author: Alexander Voigt <alexander.voigt at desy.de>
  Date:   2015-05-20 (Wed, 20 May 2015)

  Changed paths:
    M src/two_scale_convergence_tester_drbar_nonstrict.hpp

  Log Message:
  -----------
  flag model non-convergence in non-strict convergence tester


  Commit: df0b6b07cb092f4d8951278a659c696d0eb90862
      https://github.com/FlexibleSUSY/FlexibleSUSY/commit/df0b6b07cb092f4d8951278a659c696d0eb90862
  Author: Alexander Voigt <alexander.voigt at desy.de>
  Date:   2015-05-20 (Wed, 20 May 2015)

  Changed paths:
    M templates/two_scale_convergence_tester.cpp.in
    M templates/two_scale_convergence_tester.hpp.in

  Log Message:
  -----------
  use non-strict convergence tester by default

Note: This commit should be reverted if we decide to not make use of
the non-strict convergence tester


  Commit: 77cc4267221429309552eb3292a776c9ae60159b
      https://github.com/FlexibleSUSY/FlexibleSUSY/commit/77cc4267221429309552eb3292a776c9ae60159b
  Author: Alexander Voigt <alexander.voigt at desy.de>
  Date:   2015-05-20 (Wed, 20 May 2015)

  Changed paths:
    M templates/scan.cpp.in

  Log Message:
  -----------
  print errors and warnings


  Commit: d076c8eb3f115c667393055727d23b9fa1817d04
      https://github.com/FlexibleSUSY/FlexibleSUSY/commit/d076c8eb3f115c667393055727d23b9fa1817d04
  Author: Alexander Voigt <alexander.voigt at desy.de>
  Date:   2015-05-20 (Wed, 20 May 2015)

  Changed paths:
    M src/problems.hpp
    M src/two_scale_convergence_tester_drbar_nonstrict.hpp
    M templates/low_scale_spectrum_generator.hpp.in
    M templates/spectrum_generator.hpp.in

  Log Message:
  -----------
  implement non-convergence warning

Now we have two kinds of non-convergence issues: errors and warnings.
This distinction allows for a non-strict convergence criterion.

flag_no_convergence_error() is called if the two-scale solver throws
an exception of type NoConvergenceError .  In this case we interpret
the non-convergence issue as a real problem, where the spectrum cannot
be trusted.  Whether the two-scale solver throws an exception or not
depends on the convergence tester.

flag_no_convergence_warning() is called in the non-strict convergence
tester, if the maximum number of iterations has been reached, but the
precision goal has not been reached yet.  The non-strict convergence
tester therefore allows to be less strict about the interpretation of
the non-convergence issue: A non-convergence warning means, please be
careful with the spectrum!


Compare: https://github.com/FlexibleSUSY/FlexibleSUSY/compare/5aeb034026d7^...d076c8eb3f11


More information about the Flexiblesusy-commits mailing list