DUNE-ACFEM (2.5.1)
Abstract FEM algorithms and schemes. More...
Functions | |
static std::pair< double, double > | Dune::ACFem::adaptiveAlgorithm (AdaptiveFemScheme &scheme, const std::string &prefix_="") |
Stationary adaptive algorithm like adapt_method_stat() from poor old ALBERTA. More... | |
template<class TimeProvider > | |
static double | Dune::ACFem::adaptiveAlgorithm (TransientAdaptiveFemScheme &scheme, TimeProvider &timeProvider, double endTime, const std::string &prefix_="") |
Space-time adaptive algorithm like adapt_method_instat() from poor old ALBERTA. More... | |
Detailed Description
Abstract FEM algorithms and schemes.
Function Documentation
◆ adaptiveAlgorithm() [1/2]
|
inlinestatic |
Stationary adaptive algorithm like adapt_method_stat() from poor old ALBERTA.
This could be moved into a pre-compiled library.
- Parameters
-
[in,out] scheme The transient fem-scheme used for the solve-estimate-mark cycles. [in] prefix_ A prefix like "poisson" to tag the varous parameters fetched from the parameter file. In particalar the tolerance is fetched from the Fem::Parameter class with "prefix_.adaptation.tolerance" key. Of course the "." is not added if prefix_ is empty.
- Returns
- A std::pair with pair.first being the final estimator value and pair.second intentionally being the real error for convergence tests. If no exact solution is known (general case) then the distance to some initial guess of the solution. See EllipticFemScheme.
- Todo:
- Document the relevant parameters fetched from the parameter file.
References Dune::ACFem::AdaptiveFemScheme::adapt(), Dune::ACFem::BasicFemScheme::error(), Dune::ACFem::AdaptiveFemScheme::estimate(), Dune::ACFem::BasicFemScheme::initialize(), Dune::ACFem::log(), Dune::ACFem::AdaptiveFemScheme::mark(), Dune::ACFem::BasicFemScheme::output(), Dune::ACFem::BasicFemScheme::size(), and Dune::ACFem::BasicFemScheme::solve().
◆ adaptiveAlgorithm() [2/2]
|
inlinestatic |
Space-time adaptive algorithm like adapt_method_instat() from poor old ALBERTA.
This could be moved into a pre-compiled library but for the fact that the TimeProvider is tagged by the GridType.
Note that the implementation of the TransientAdaptiveFemScheme has to take care of always using the time-step-size of the Dune::Fem::TimeProvider implementation, because that may be changed by the adaptive algorithm.
- Parameters
-
[in,out] scheme The transient fem-scheme used for the solve-estimate-mark cycles. [in,out] timeProvider The Dune::Fem::TimeProvider instance, also defines the start-time.The TimeProvider must be already initialized. [in] endTime End-of-simulation point in time. [in] prefix_ A prefix like "heat" to tag the varous parameters fetched from the parameter file.
- Returns
- The maximum estimator value from all time-steps.
- Todo:
- Document the parameter fetched from the parameter file.
References Dune::ACFem::max().