|
Finite Volume Solver
prototype
A framework to build finite volume solvers for the AG Klein at the Freie Universität Berlin.
|
This class is a polymoprhic value type which stores components to initialize a gridding algorithm during its initialization procedure. More...
#include <AnyInitialData.hpp>
Public Types | |
| using | PatchLevel = typename GridTraits< GriddingAlgorithm >::PatchLevel |
Public Member Functions | |
Constructors | |
| AnyInitialData ()=default | |
| Constructs an empty object that does no initialization. More... | |
| template<typename T , typename = std::enable_if_t< !decays_to<T, AnyInitialData<GriddingAlgorithm>>()>> | |
| AnyInitialData (T &&initial_data) | |
Stores and wraps the initial_data object. More... | |
| AnyInitialData (const AnyInitialData &other) | |
Copies the other implementation and invokes a memory allocation. More... | |
| AnyInitialData & | operator= (const AnyInitialData &other) |
Copies the other implementation and invokes a memory allocation. More... | |
| AnyInitialData (AnyInitialData &&) noexcept=default | |
Moves the other implementation without allocation and leaves an empty object. More... | |
| AnyInitialData & | operator= (AnyInitialData &&) noexcept=default |
Moves the other implementation without allocation and leaves an empty object. More... | |
Actions | |
| void | InitializeData (PatchLevel &patch_level, const GriddingAlgorithm &grid, int level, Duration time) |
| Initializes a patch level within a gridding algorithm. More... | |
Private Attributes | |
| std::unique_ptr< detail::InitialDataStrategy< GriddingAlgorithm > > | initial_data_ |
This class is a polymoprhic value type which stores components to initialize a gridding algorithm during its initialization procedure.
| using fub::AnyInitialData< GriddingAlgorithm >::PatchLevel = typename GridTraits<GriddingAlgorithm>::PatchLevel |
|
default |
Constructs an empty object that does no initialization.
| fub::AnyInitialData< GriddingAlgorithm >::AnyInitialData | ( | T && | initial_data | ) |
Stores and wraps the initial_data object.
| fub::AnyInitialData< GriddingAlgorithm >::AnyInitialData | ( | const AnyInitialData< GriddingAlgorithm > & | other | ) |
Copies the other implementation and invokes a memory allocation.
|
defaultnoexcept |
Moves the other implementation without allocation and leaves an empty object.
| void fub::AnyInitialData< GriddingAlgorithm >::InitializeData | ( | PatchLevel & | patch_level, |
| const GriddingAlgorithm & | grid, | ||
| int | level, | ||
| Duration | time | ||
| ) |
Initializes a patch level within a gridding algorithm.
|
defaultnoexcept |
Moves the other implementation without allocation and leaves an empty object.
| AnyInitialData< GriddingAlgorithm > & fub::AnyInitialData< GriddingAlgorithm >::operator= | ( | const AnyInitialData< GriddingAlgorithm > & | other | ) |
Copies the other implementation and invokes a memory allocation.
|
private |