Alsvinn  0.5.3
The fast FVM simulator with UQ support
Public Member Functions | List of all members
alsfvm::volume::VolumeFactory Class Reference

#include <alsfvm/volume/VolumeFactory.hpp>

Public Member Functions

 VolumeFactory (const std::string &equation, alsfvm::shared_ptr< memory::MemoryFactory > memoryFactory)
 
alsfvm::shared_ptr< VolumecreateConservedVolume (size_t nx, size_t ny, size_t nz, size_t numberOfGhostCells=0)
 
alsfvm::shared_ptr< VolumecreateExtraVolume (size_t nx, size_t ny, size_t nz, size_t numberOfGhostCells=0)
 
alsfvm::shared_ptr< VolumecreatePrimitiveVolume (size_t nx, size_t ny, size_t nz, size_t numberOfGhostCells=0)
 createPrimitiveVolume creates the primitive volume for the equation, The primitive volume is often handy for stating initial data for instance. More...
 

Detailed Description

This factory creates volumes for an equation. Both conserved and extra variables.

Here the idea is that one part of the system creates this factory then passes it along to other parts which needs to create the memory areas.

Constructor & Destructor Documentation

◆ VolumeFactory()

alsfvm::volume::VolumeFactory::VolumeFactory ( const std::string &  equation,
alsfvm::shared_ptr< memory::MemoryFactory memoryFactory 
)

Constructs the factory.

Parameters
equationthe equation name ("euler1", "euler2", "euler3", "sw", etc.)
memoryFactorythe memory factory to use

Member Function Documentation

◆ createConservedVolume()

alsfvm::shared_ptr< Volume > alsfvm::volume::VolumeFactory::createConservedVolume ( size_t  nx,
size_t  ny,
size_t  nz,
size_t  numberOfGhostCells = 0 
)

Creates a new volume containing the conserved variables.

Parameters
nxthe number of cells in x direction
nythe number of cells in y direction
nzthe number of cells in z direction
numberOfGhostCellsthe number of ghostcells to use in each direction

Creates a new volume containing the conserved variables.

Parameters
nxthe number of cells in x direction
nythe number of cells in y direction
nzthe number of cells in z direction

◆ createExtraVolume()

alsfvm::shared_ptr< Volume > alsfvm::volume::VolumeFactory::createExtraVolume ( size_t  nx,
size_t  ny,
size_t  nz,
size_t  numberOfGhostCells = 0 
)

Creates a new volume containing the extra variables.

Parameters
nxthe number of cells in x direction
nythe number of cells in y direction
nzthe number of cells in z direction
numberOfGhostCellsthe number of ghostcells to use in each direction

Creates a new volume containing the extra variables.

Parameters
nxthe number of cells in x direction
nythe number of cells in y direction
nzthe number of cells in z direction

◆ createPrimitiveVolume()

alsfvm::shared_ptr< Volume > alsfvm::volume::VolumeFactory::createPrimitiveVolume ( size_t  nx,
size_t  ny,
size_t  nz,
size_t  numberOfGhostCells = 0 
)

createPrimitiveVolume creates the primitive volume for the equation, The primitive volume is often handy for stating initial data for instance.

Parameters
nxthe number of cells in x direction
nythe number of cells in y direction
nzthe number of cells in z direction
numberOfGhostCellsthe number of ghostcells to use in each direction

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