Loading [MathJax]/extensions/tex2jax.js
Finite Volume Solver  prototype
A framework to build finite volume solvers for the AG Klein at the Freie Universität Berlin.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | Private Attributes | List of all members
fub::samrai::PatchHierarchy Class Reference

#include <PatchHierarchy.hpp>

Public Member Functions

template<typename Equation >
 PatchHierarchy (const Equation &eq, std::shared_ptr< SAMRAI::geom::CartesianGridGeometry > geom, PatchHierarchyOptions hier_opts)
 Constructs a PatchHierarchy object which is capable of holding data described by the secified data description on given geometry extents. More...
 
 PatchHierarchy (DataDescription dd, std::shared_ptr< SAMRAI::geom::CartesianGridGeometry > geom, PatchHierarchyOptions hier_opts)
 
 PatchHierarchy (PatchHierarchy &&ph)=default
 
PatchHierarchyoperator= (PatchHierarchy &&ph)=default
 
 PatchHierarchy (const PatchHierarchy &ph)
 
PatchHierarchyoperator= (const PatchHierarchy &ph)
 
const PatchHierarchyOptionsGetOptions () const noexcept
 Return some additional patch hierarchy options. More...
 
int GetMaxNumberOfLevels () const noexcept
 
int GetNumberOfLevels () const noexcept
 
const DataDescriptionGetDataDescription () const noexcept
 
const std::shared_ptr< SAMRAI::hier::PatchHierarchy > & GetNative () const noexcept
 
const SAMRAI::geom::CartesianGridGeometry & GetGeometry (int level) const noexcept
 
span< const int > GetDataIds () const noexcept
 
std::shared_ptr< SAMRAI::hier::PatchLevel > GetPatchLevel (int level) const
 
const std::shared_ptr< CounterRegistry > & GetCounterRegistry () const noexcept
 
std::ptrdiff_t GetCycles (int level=0) const
 
Duration GetTimePoint (int level=0) const
 
void SetCycles (std::ptrdiff_t cycles, int level)
 
void SetTimePoint (Duration time_point, int level)
 

Private Attributes

std::shared_ptr< SAMRAI::hier::PatchHierarchy > hierarchy_
 
DataDescription data_desc_
 
PatchHierarchyOptions options_
 
std::vector< std::ptrdiff_t > cycles_
 
std::vector< Durationtime_points_
 
std::shared_ptr< CounterRegistry > counter_registry_
 

Constructor & Destructor Documentation

◆ PatchHierarchy() [1/4]

template<typename Equation >
fub::samrai::PatchHierarchy::PatchHierarchy ( const Equation &  eq,
std::shared_ptr< SAMRAI::geom::CartesianGridGeometry >  geom,
PatchHierarchyOptions  hier_opts 
)

Constructs a PatchHierarchy object which is capable of holding data described by the secified data description on given geometry extents.

◆ PatchHierarchy() [2/4]

fub::samrai::PatchHierarchy::PatchHierarchy ( DataDescription  dd,
std::shared_ptr< SAMRAI::geom::CartesianGridGeometry >  geom,
PatchHierarchyOptions  hier_opts 
)

◆ PatchHierarchy() [3/4]

fub::samrai::PatchHierarchy::PatchHierarchy ( PatchHierarchy &&  ph)
default

◆ PatchHierarchy() [4/4]

fub::samrai::PatchHierarchy::PatchHierarchy ( const PatchHierarchy ph)

Member Function Documentation

◆ GetCounterRegistry()

const std::shared_ptr<CounterRegistry>& fub::samrai::PatchHierarchy::GetCounterRegistry ( ) const
noexcept

◆ GetCycles()

std::ptrdiff_t fub::samrai::PatchHierarchy::GetCycles ( int  level = 0) const

◆ GetDataDescription()

const DataDescription& fub::samrai::PatchHierarchy::GetDataDescription ( ) const
noexcept

◆ GetDataIds()

span<const int> fub::samrai::PatchHierarchy::GetDataIds ( ) const
noexcept

◆ GetGeometry()

const SAMRAI::geom::CartesianGridGeometry& fub::samrai::PatchHierarchy::GetGeometry ( int  level) const
noexcept

◆ GetMaxNumberOfLevels()

int fub::samrai::PatchHierarchy::GetMaxNumberOfLevels ( ) const
noexcept

◆ GetNative()

const std::shared_ptr<SAMRAI::hier::PatchHierarchy>& fub::samrai::PatchHierarchy::GetNative ( ) const
noexcept

◆ GetNumberOfLevels()

int fub::samrai::PatchHierarchy::GetNumberOfLevels ( ) const
noexcept

◆ GetOptions()

const PatchHierarchyOptions& fub::samrai::PatchHierarchy::GetOptions ( ) const
noexcept

Return some additional patch hierarchy options.

◆ GetPatchLevel()

std::shared_ptr<SAMRAI::hier::PatchLevel> fub::samrai::PatchHierarchy::GetPatchLevel ( int  level) const

◆ GetTimePoint()

Duration fub::samrai::PatchHierarchy::GetTimePoint ( int  level = 0) const

◆ operator=() [1/2]

PatchHierarchy& fub::samrai::PatchHierarchy::operator= ( const PatchHierarchy ph)
inline

◆ operator=() [2/2]

PatchHierarchy& fub::samrai::PatchHierarchy::operator= ( PatchHierarchy &&  ph)
default

◆ SetCycles()

void fub::samrai::PatchHierarchy::SetCycles ( std::ptrdiff_t  cycles,
int  level 
)

◆ SetTimePoint()

void fub::samrai::PatchHierarchy::SetTimePoint ( Duration  time_point,
int  level 
)

Member Data Documentation

◆ counter_registry_

std::shared_ptr<CounterRegistry> fub::samrai::PatchHierarchy::counter_registry_
private

◆ cycles_

std::vector<std::ptrdiff_t> fub::samrai::PatchHierarchy::cycles_
private

◆ data_desc_

DataDescription fub::samrai::PatchHierarchy::data_desc_
private

◆ hierarchy_

std::shared_ptr<SAMRAI::hier::PatchHierarchy> fub::samrai::PatchHierarchy::hierarchy_
private

◆ options_

PatchHierarchyOptions fub::samrai::PatchHierarchy::options_
private

◆ time_points_

std::vector<Duration> fub::samrai::PatchHierarchy::time_points_
private

The documentation for this class was generated from the following file: