Memosa-FVM
0.2
|
#include <Field.h>
Public Types | |
typedef map< const StorageSite *, shared_ptr< ArrayBase > > | ArrayMap |
typedef map< const StorageSite *, vector< const StorageSite * > * > | ChildSitesMap |
typedef pair< const StorageSite *, const StorageSite * > | EntryIndex |
typedef map< EntryIndex, shared_ptr< ArrayBase > > | GhostArrayMap |
Public Member Functions | |
Field (const string &name) | |
virtual | ~Field () |
DEFINE_TYPENAME ("Field") | |
Field & | operator= (const Field &oField) |
const ArrayBase & | operator[] (const StorageSite &) const |
ArrayBase & | operator[] (const StorageSite &) |
shared_ptr< ArrayBase > | getArrayPtr (const StorageSite &) |
void | addArray (const StorageSite &, shared_ptr< ArrayBase > a) |
void | removeArray (const StorageSite &) |
void | removeArrays (const StorageSiteList &sites) |
virtual void | copyFrom (const IContainer &a) |
virtual void | zero () |
virtual shared_ptr< IContainer > | newCopy () const |
virtual shared_ptr< IContainer > | newClone () const |
bool | hasArray (const StorageSite &s) const |
void | syncLocal () |
ArrayMap & | getArrayMap () |
GhostArrayMap & | getGhostArrayMap () |
GhostArrayMap & | getGhostArrayMapLevel1 () |
const string | getName () const |
void | clear () |
![]() | |
IContainer () | |
virtual | ~IContainer () |
IContainer & | operator= (const IContainer &oc) |
Static Public Member Functions | |
static void | syncLocalVectorFields (std::vector< Field * > &dsf) |
Private Member Functions | |
Field (const Field &) | |
void | createSyncGatherArrays (const StorageSite &site) |
void | syncScatter (const StorageSite &site) |
void | syncGather (const StorageSite &site) |
void | createSyncGatherArraysLevel1 (const StorageSite &site) |
void | syncScatterLevel1 (const StorageSite &site) |
void | syncGatherLevel1 (const StorageSite &site) |
int | get_request_size () |
int | get_request_size_scatter_level1 () |
int | get_request_size_gather_level1 () |
void | syncLocalLevel1 () |
ArrayBase & | _create (const StorageSite &site) |
Static Private Member Functions | |
static void | createSyncGatherArraysVectorFields (const StorageSite &site, Field &field, const size_t numDir) |
static void | syncScatterVectorFields (const StorageSite &site, std::vector< Field * > &dsf) |
static void | syncGatherVectorFields (const StorageSite &site, std::vector< Field * > &dsf) |
static void | createSyncGatherArraysVectorFieldsLevel1 (const StorageSite &site, Field &field, const size_t numDir) |
static void | syncScatterVectorFieldsLevel1 (const StorageSite &site, std::vector< Field * > &dsf) |
static void | syncGatherVectorFieldsLevel1 (const StorageSite &site, std::vector< Field * > &dsf) |
static int | get_request_size (Field &field) |
static int | get_request_size_level1 (Field &field) |
static void | syncLocalVectorFieldsLevel1 (std::vector< Field * > &dsf) |
Private Attributes | |
const string | _name |
ArrayMap | _arrays |
GhostArrayMap | _ghostArrays |
GhostArrayMap | _ghostArraysLevel1 |
ChildSitesMap | _childSitesMap |
typedef map<const StorageSite*, shared_ptr<ArrayBase> > Field::ArrayMap |
typedef map<const StorageSite*, vector<const StorageSite*>* > Field::ChildSitesMap |
typedef pair<const StorageSite*, const StorageSite*> Field::EntryIndex |
typedef map<EntryIndex, shared_ptr<ArrayBase> > Field::GhostArrayMap |
Field::Field | ( | const string & | name | ) |
Definition at line 22 of file Field.cpp.
References logCtor.
Referenced by newClone(), and newCopy().
|
virtual |
|
private |
|
private |
Definition at line 114 of file Field.cpp.
References _arrays, _childSitesMap, ArrayBase::createOffsetArray(), StorageSite::getCount(), StorageSite::getOffset(), StorageSite::getParent(), and operator[]().
Referenced by getArrayPtr(), and operator[]().
void Field::addArray | ( | const StorageSite & | s, |
shared_ptr< ArrayBase > | a | ||
) |
Definition at line 72 of file Field.cpp.
References _arrays, and removeArray().
Referenced by GradientModel< Vector< T, 3 > >::compute(), COMETModel< T >::ComputeCoarseMacroparameters(), COMETModel< T >::ComputeFineMacroparameters(), KineticModel< T >::computeIBFaceDsf(), COMETModel< T >::computeIBFaceDsf(), KineticModel< T >::computeSolidFaceDsf(), COMETModel< T >::computeSolidFaceDsf(), KineticModel< T >::computeSolidFacePressure(), COMETModel< T >::computeSolidFacePressure(), KineticModel< T >::computeSurfaceForce(), COMETModel< T >::computeSurfaceForce(), KineticModel< T >::ConservationofMFSolid(), DistFunctFields< X >::DistFunctFields(), COMETModel< T >::FinishCoarseMesh(), Grid::Grid(), SpeciesModel< T >::Impl::init(), PhononModel< T >::init(), KineticModel< T >::init(), BatteryModel< T >::Impl::init(), COMETModel< T >::init(), PlateDeformationModel< T >::init(), StructureDeformationModel< T >::init(), MovingMeshModel< T >::init(), COMETModel< T >::initCoarse(), COMETModel< T >::makeCellColors(), COMETModel< T >::MakeCoarseIndex(), COMETModel< T >::MakeCoarseMesh2(), COMETModel< T >::MakeIBCoarseModel(), COMETModel< T >::makePlotColors(), StructureDeformationModel< T >::updateBoundaryMesh(), PlateDeformationModel< T >::updateBoundaryMesh(), PhononModel< T >::updateHeatFlux(), and VTKWriter< T >::VTKWriter().
void Field::clear | ( | ) |
Definition at line 105 of file Field.cpp.
References _arrays, _childSitesMap, _ghostArrays, and _ghostArraysLevel1.
|
virtual |
Implements IContainer.
Definition at line 187 of file Field.cpp.
References operator=().
|
private |
Definition at line 195 of file Field.cpp.
References _ghostArrays, StorageSite::getGatherMap(), Array< T >::getLength(), ArrayBase::newSizedClone(), and operator[]().
Referenced by syncLocal().
|
private |
Definition at line 214 of file Field.cpp.
References _ghostArraysLevel1, StorageSite::getGatherMapLevel1(), Array< T >::getLength(), ArrayBase::newSizedClone(), and operator[]().
Referenced by syncLocalLevel1().
|
staticprivate |
Definition at line 528 of file Field.cpp.
References StorageSite::getGatherMap(), getGhostArrayMap(), Array< T >::getLength(), and ArrayBase::newSizedClone().
Referenced by syncLocalVectorFields().
|
staticprivate |
Definition at line 548 of file Field.cpp.
References StorageSite::getGatherMapLevel1(), getGhostArrayMapLevel1(), Array< T >::getLength(), and ArrayBase::newSizedClone().
Referenced by syncLocalVectorFieldsLevel1().
Field::DEFINE_TYPENAME | ( | "Field" | ) |
|
private |
Definition at line 397 of file Field.cpp.
References _arrays, StorageSite::getGatherProcID(), and StorageSite::getScatterMap().
Referenced by syncLocal(), and syncLocalVectorFields().
|
staticprivate |
Definition at line 843 of file Field.cpp.
References getArrayMap(), StorageSite::getGatherProcID(), and StorageSite::getScatterMap().
|
private |
Definition at line 506 of file Field.cpp.
References _arrays, StorageSite::getGatherMapLevel1(), and StorageSite::getGatherProcID().
Referenced by syncLocalLevel1().
|
staticprivate |
Definition at line 863 of file Field.cpp.
References getArrayMap(), StorageSite::getGatherProcID(), and StorageSite::getScatterMapLevel1().
Referenced by syncLocalVectorFieldsLevel1().
|
private |
Definition at line 486 of file Field.cpp.
References _arrays, StorageSite::getGatherProcID(), and StorageSite::getScatterMapLevel1().
Referenced by syncLocalLevel1().
|
inline |
Definition at line 48 of file Field.h.
References _arrays.
Referenced by get_request_size(), get_request_size_level1(), syncLocalVectorFields(), and syncLocalVectorFieldsLevel1().
shared_ptr< ArrayBase > Field::getArrayPtr | ( | const StorageSite & | s | ) |
Definition at line 63 of file Field.cpp.
References _arrays, and _create().
Referenced by FloatValEvaluator< T >::FloatValEvaluator(), FloatValEvaluator< Vector< T, 3 > >::FloatValEvaluator(), KineticModel< T >::initKineticModelLinearization(), SpeciesModel< T >::Impl::initLinearization(), PhononModel< T >::initPhononModelLinearization(), BatteryModel< T >::Impl::initSpeciesLinearization(), and TractionValEvaluator< T >::TractionValEvaluator().
|
inline |
Definition at line 50 of file Field.h.
References _ghostArrays.
Referenced by createSyncGatherArraysVectorFields(), syncGatherVectorFields(), syncLocalVectorFields(), and syncScatterVectorFields().
|
inline |
Definition at line 51 of file Field.h.
References _ghostArraysLevel1.
Referenced by createSyncGatherArraysVectorFieldsLevel1(), syncGatherVectorFieldsLevel1(), syncLocalVectorFieldsLevel1(), and syncScatterVectorFieldsLevel1().
|
inline |
bool Field::hasArray | ( | const StorageSite & | s | ) | const |
Definition at line 37 of file Field.cpp.
References _arrays, and StorageSite::getParent().
Referenced by COMETESBGKDiscretizer< T >::COMETESBGKDiscretizer(), DriftDiscretization< X, Diag, OffDiag >::discretize(), TimeDerivativeDiscretization< X, Diag, OffDiag >::discretize(), BatteryPCTimeDerivativeDiscretization< X, Diag, OffDiag >::discretize(), PhononConvectionDiscretization< X, Diag, OffDiag >::discretize(), ConvectionDiscretization< X, Diag, OffDiag >::discretize(), TimeDerivativeStructureDiscretization< X, Diag, OffDiag >::discretize(), ConvectionDiscretization_Kmodel< X, Diag, OffDiag >::discretize(), TimeDerivativePlateDiscretization< X, Diag, OffDiag >::discretize(), TimeDerivativeStructureDiscretization< X, Diag, OffDiag >::explicitAdvance(), SpeciesModel< T >::Impl::linearize(), BatteryModel< T >::Impl::linearizeSpecies(), MovingMeshModel< T >::volChange(), FluentDataExporter< T >::writeScalarField(), and FluentDataExporter< T >::writeVectorField().
|
virtual |
|
virtual |
const ArrayBase & Field::operator[] | ( | const StorageSite & | s | ) | const |
Definition at line 44 of file Field.cpp.
References _arrays.
Referenced by _create(), createSyncGatherArrays(), createSyncGatherArraysLevel1(), syncGather(), syncGatherLevel1(), syncScatter(), and syncScatterLevel1().
ArrayBase & Field::operator[] | ( | const StorageSite & | s | ) |
void Field::removeArray | ( | const StorageSite & | s | ) |
Definition at line 79 of file Field.cpp.
References _arrays, and _childSitesMap.
Referenced by addArray(), and removeArrays().
void Field::removeArrays | ( | const StorageSiteList & | sites | ) |
|
private |
Definition at line 280 of file Field.cpp.
References _ghostArrays, ArrayBase::gather(), StorageSite::getGatherMap(), and operator[]().
Referenced by syncLocal().
|
private |
Definition at line 307 of file Field.cpp.
References _ghostArraysLevel1, ArrayBase::gather(), StorageSite::getGatherMapLevel1(), and operator[]().
Referenced by syncLocalLevel1().
|
staticprivate |
Definition at line 633 of file Field.cpp.
References ArrayBase::gather(), StorageSite::getGatherMap(), getGhostArrayMap(), and Array< T >::getLength().
Referenced by syncLocalVectorFields().
|
staticprivate |
Definition at line 668 of file Field.cpp.
References ArrayBase::gather(), StorageSite::getGatherMapLevel1(), getGhostArrayMapLevel1(), and Array< T >::getLength().
Referenced by syncLocalVectorFieldsLevel1().
void Field::syncLocal | ( | ) |
Definition at line 334 of file Field.cpp.
References _arrays, _ghostArrays, createSyncGatherArrays(), get_request_size(), ArrayBase::getData(), ArrayBase::getDataSize(), StorageSite::getGatherMap(), StorageSite::getGatherProcID(), StorageSite::getScatterMap(), StorageSite::getTag(), syncGather(), syncLocalLevel1(), and syncScatter().
Referenced by GradientModel< Vector< T, 3 > >::compute(), SpeciesModel< T >::Impl::init(), BatteryModel< T >::Impl::init(), COMETModel< T >::init(), BatteryModel< T >::Impl::linearizeSpecies(), COMETModel< T >::MakeCoarseModel(), COMETModel< T >::MakeIBCoarseModel(), COMETModel< T >::MakeParallel(), and IBManager::update().
|
private |
Definition at line 417 of file Field.cpp.
References _arrays, _ghostArraysLevel1, createSyncGatherArraysLevel1(), get_request_size_gather_level1(), get_request_size_scatter_level1(), ArrayBase::getData(), ArrayBase::getDataSize(), StorageSite::getGatherMapLevel1(), StorageSite::getGatherProcID(), StorageSite::getScatterMapLevel1(), StorageSite::getTag(), syncGatherLevel1(), and syncScatterLevel1().
Referenced by syncLocal().
|
static |
Definition at line 702 of file Field.cpp.
References createSyncGatherArraysVectorFields(), get_request_size(), getArrayMap(), ArrayBase::getData(), ArrayBase::getDataSize(), StorageSite::getGatherMap(), StorageSite::getGatherProcID(), getGhostArrayMap(), StorageSite::getScatterMap(), StorageSite::getTag(), syncGatherVectorFields(), syncLocalVectorFieldsLevel1(), and syncScatterVectorFields().
Referenced by COMETModel< T >::MakeParallel().
|
staticprivate |
Definition at line 770 of file Field.cpp.
References createSyncGatherArraysVectorFieldsLevel1(), get_request_size_level1(), getArrayMap(), ArrayBase::getData(), ArrayBase::getDataSize(), StorageSite::getGatherMapLevel1(), StorageSite::getGatherProcID(), getGhostArrayMapLevel1(), StorageSite::getScatterMapLevel1(), StorageSite::getTag(), syncGatherVectorFieldsLevel1(), and syncScatterVectorFieldsLevel1().
Referenced by syncLocalVectorFields().
|
private |
Definition at line 234 of file Field.cpp.
References _ghostArrays, Array< T >::getLength(), StorageSite::getScatterMap(), ArrayBase::newSizedClone(), operator[](), and ArrayBase::scatter().
Referenced by syncLocal().
|
private |
Definition at line 257 of file Field.cpp.
References _ghostArraysLevel1, Array< T >::getLength(), StorageSite::getScatterMapLevel1(), ArrayBase::newSizedClone(), operator[](), and ArrayBase::scatter().
Referenced by syncLocalLevel1().
|
staticprivate |
Definition at line 569 of file Field.cpp.
References getGhostArrayMap(), Array< T >::getLength(), StorageSite::getScatterMap(), ArrayBase::newSizedClone(), and ArrayBase::scatter().
Referenced by syncLocalVectorFields().
|
staticprivate |
Definition at line 600 of file Field.cpp.
References getGhostArrayMapLevel1(), Array< T >::getLength(), StorageSite::getScatterMapLevel1(), ArrayBase::newSizedClone(), and ArrayBase::scatter().
Referenced by syncLocalVectorFieldsLevel1().
|
virtual |
|
private |
Definition at line 91 of file Field.h.
Referenced by _create(), addArray(), clear(), get_request_size(), get_request_size_gather_level1(), get_request_size_scatter_level1(), getArrayMap(), getArrayPtr(), hasArray(), newClone(), newCopy(), operator=(), operator[](), removeArray(), syncLocal(), syncLocalLevel1(), and zero().
|
private |
Definition at line 95 of file Field.h.
Referenced by _create(), clear(), and removeArray().
|
private |
Definition at line 92 of file Field.h.
Referenced by clear(), createSyncGatherArrays(), getGhostArrayMap(), syncGather(), syncLocal(), and syncScatter().
|
private |
Definition at line 93 of file Field.h.
Referenced by clear(), createSyncGatherArraysLevel1(), getGhostArrayMapLevel1(), syncGatherLevel1(), syncLocalLevel1(), and syncScatterLevel1().
|
private |
Definition at line 90 of file Field.h.
Referenced by getName(), newClone(), and newCopy().