Feature/dynamicpolymorphism
- Apr 10, 2017
-
-
Christian Engwer authored
-
Christian Engwer authored
-
Christian Engwer authored
-
Christian Engwer authored
-
Christian Engwer authored
-
Christian Engwer authored
-
Christian Engwer authored
-
Linus Seelinger authored
-
Christian Engwer authored
the two methods weren't needed up to now. After switching to dynamic construction of the scalar product, they have to be defined, but still they should not be called (currently). Thus we implement them with an assert(false).
-
Christian Engwer authored
getSolverCategory() is used by the AMG communication layer. For convinience we add this new specialization of category(...)
-
Christian Engwer authored
the enum on the Communication object was never used, thus we drop it immediately.
-
Christian Engwer authored
-
Christian Engwer authored
-
Christian Engwer authored
-
Christian Engwer authored
-
Christian Engwer authored
-
Christian Engwer authored
-
Linus Seelinger authored
-
Christian Engwer authored
-
Linus Seelinger authored
-
Christian Engwer authored
-
Christian Engwer authored
depending on a preprocessor define we switch the base classes to be pure virtual, or implement a dummy category(). If the classes are pure virtual the old interface with an enum is not possible anymore. To enable/disable the backwards compatibility check we provide a cmake flag DUNE_ISTL_SUPPORT_OLD_CATEGORY_INTERFACE, which defaults to 1 (e.g. backwards compatibility enabled).
-
Christian Engwer authored
- we add helper code to extract the solver category from the enum or the virtual function - we update the base classes to actually use this code to perform consistency checks
-
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
-
Christian Engwer authored
[test] We removed the deprecated constructors of RestartedGMResSolver. Don't test the old constructor.
-