Skip to content
Snippets Groups Projects
Forked from Core Modules / dune-istl
Source project has a limited visibility.
  • Christian Engwer's avatar
    b022944a
    [dynamic polymorphism] add dynamic interface for category check · b022944a
    Christian Engwer authored
    We introduce a new method category to check for the same SolverCategory of different
    components at run time.
    
    This is a drawback compared to compile time checks, but it adds a lot of flexibility as we will
    be able to  write factory classes for solvers and compose/exchange solvers at runtime.
    
    Besides this we added the following changes:
    - an additional intermediate class IterativeSolver encapsulates the data of almost all solvers
    - the solvers now inherit from IterativeSolver and can usually reuse its constructor
    - the solvers now only have to implement _one_ apply method, the other is implemented
      generically
    
    State:
    - currently the example compiles
    - none of the AMG headers has been updated yet
    b022944a
    History
    [dynamic polymorphism] add dynamic interface for category check
    Christian Engwer authored
    We introduce a new method category to check for the same SolverCategory of different
    components at run time.
    
    This is a drawback compared to compile time checks, but it adds a lot of flexibility as we will
    be able to  write factory classes for solvers and compose/exchange solvers at runtime.
    
    Besides this we added the following changes:
    - an additional intermediate class IterativeSolver encapsulates the data of almost all solvers
    - the solvers now inherit from IterativeSolver and can usually reuse its constructor
    - the solvers now only have to implement _one_ apply method, the other is implemented
      generically
    
    State:
    - currently the example compiles
    - none of the AMG headers has been updated yet