|
PreconditionerWithUpdate.hpp
Go to the documentation of this file.
43class DummyUpdatePreconditioner : public PreconditionerWithUpdate<typename OriginalPreconditioner::domain_type,
93 return std::make_shared<DummyUpdatePreconditioner<OriginalPreconditioner>>(std::forward<Args>(args)...);
101 Preconditioner<typename OriginalPreconditioner::domain_type, typename OriginalPreconditioner::range_type>>
112 using GenericPreconditioner = Preconditioner<typename OriginalPreconditioner::domain_type, typename OriginalPreconditioner::range_type>;
122 // return std::unique_ptr<GenericPreconditioner> {new auto(std::make_from_tuple<OriginalPreconditioner>(args_))};
135class RebuildOnUpdatePreconditioner : public PreconditionerWithUpdate<typename OriginalPreconditioner::domain_type,
141 : preconditioner_maker_(std::make_unique<PreconditionerMaker<OriginalPreconditioner, Args...>>(args...))
182 using GenericPreconditioner = Preconditioner<typename OriginalPreconditioner::domain_type, typename OriginalPreconditioner::range_type>;
Definition: PreconditionerWithUpdate.hpp:45 virtual void post(X &x) override Definition: PreconditionerWithUpdate.hpp:66 DummyUpdatePreconditioner(Args &&... args) Definition: PreconditionerWithUpdate.hpp:48 typename OriginalPreconditioner::range_type Y Definition: PreconditionerWithUpdate.hpp:54 virtual void pre(X &x, Y &b) override Definition: PreconditionerWithUpdate.hpp:56 virtual void apply(X &v, const Y &d) override Definition: PreconditionerWithUpdate.hpp:61 virtual void update() override Definition: PreconditionerWithUpdate.hpp:77 virtual bool hasPerfectUpdate() const override Definition: PreconditionerWithUpdate.hpp:81 virtual SolverCategory::Category category() const override Definition: PreconditionerWithUpdate.hpp:71 typename OriginalPreconditioner::domain_type X Definition: PreconditionerWithUpdate.hpp:53 Interface class adding the update() method to the preconditioner interface. Definition: PreconditionerWithUpdate.hpp:34 virtual void update()=0 virtual bool hasPerfectUpdate() const =0 Wrapper class of preconditioners that should be reconstructed on update. Definition: PreconditionerWithUpdate.hpp:137 SolverCategory::Category category() const override Definition: PreconditionerWithUpdate.hpp:164 typename OriginalPreconditioner::range_type Y Definition: PreconditionerWithUpdate.hpp:147 void apply(X &v, const Y &d) override Definition: PreconditionerWithUpdate.hpp:154 void update() override Definition: PreconditionerWithUpdate.hpp:170 void pre(X &x, Y &b) override Definition: PreconditionerWithUpdate.hpp:149 RebuildOnUpdatePreconditioner(Args... args) Definition: PreconditionerWithUpdate.hpp:140 void post(X &x) override Definition: PreconditionerWithUpdate.hpp:159 typename OriginalPreconditioner::domain_type X Definition: PreconditionerWithUpdate.hpp:146 bool hasPerfectUpdate() const override Definition: PreconditionerWithUpdate.hpp:175 Definition: fvbaseprimaryvariables.hh:161 auto getRebuildOnUpdateWrapper(Args... args) Wrapper function creating and return a shared pointer to a preconditioner which is reconstructed on u... Definition: PreconditionerWithUpdate.hpp:195 std::shared_ptr< DummyUpdatePreconditioner< OriginalPreconditioner > > getDummyUpdateWrapper(Args &&... args) Definition: PreconditionerWithUpdate.hpp:91 Interface class ensuring make function is overriden. Definition: PreconditionerWithUpdate.hpp:99 virtual ~GeneralPreconditionerMaker()=default virtual std::unique_ptr< Preconditioner< typename OriginalPreconditioner::domain_type, typename OriginalPreconditioner::range_type > > make()=0 Struct implementing a make function which creates a preconditioner Can create arbitrary preconditione... Definition: PreconditionerWithUpdate.hpp:111 Preconditioner< typename OriginalPreconditioner::domain_type, typename OriginalPreconditioner::range_type > GenericPreconditioner Definition: PreconditionerWithUpdate.hpp:112 std::tuple< Args... > args_ Definition: PreconditionerWithUpdate.hpp:129 PreconditionerMaker(Args... args) Definition: PreconditionerWithUpdate.hpp:114 std::unique_ptr< GenericPreconditioner > make() override Definition: PreconditionerWithUpdate.hpp:120 |