Memosa-FVM
0.2
|
#include <IBManager.h>
Public Types | |
typedef Vector< double, 3 > | Vec3D |
typedef Array< Vec3D > | Vec3DArray |
typedef Array< int > | IntArray |
Public Member Functions | |
IBManager (GeomFields &geomFields, Mesh &solidBoundaryMesh, const MeshList &fluidMeshes) | |
void | update () |
Public Attributes | |
int | fluidNeighborsPerIBFace |
int | fluidNeighborsPerSolidFace |
int | solidNeighborsPerIBFace |
int | IBNeighborsPerSolidFace |
Mesh & | _solidBoundaryMesh |
Private Member Functions | |
void | markIntersections (Mesh &fluidMesh, AABB &sMeshesAABB) |
int | markFluid (Mesh &fluidMesh) |
int | markSolid (Mesh &fluidMesh) |
void | markIBTypePlus (Mesh &fluidMesh) |
void | createIBFaces (Mesh &fluidMesh) |
void | createIBInterpolationStencil (Mesh &mesh, KSearchTree &fluidCellsTree, KSearchTree &solidFacesTree) |
void | findNearestCellForSolidFaces (Mesh &mesh, KSearchTree &fluidCellsTree, vector< NearestCell > &nearest) |
void | createSolidInterpolationStencil (Mesh &mesh, KSearchTree &IBFacesTree, vector< NearestCell > &nearest) |
void | CRConnectivityPrintFile (const CRConnectivity &conn, const string &name, const int procID) const |
Private Attributes | |
GeomFields & | _geomFields |
const MeshList | _fluidMeshes |
Definition at line 57 of file IBManager.h.
typedef Array<int> IBManager::IntArray |
Definition at line 62 of file IBManager.h.
typedef Vector<double,3> IBManager::Vec3D |
Definition at line 60 of file IBManager.h.
typedef Array<Vec3D> IBManager::Vec3DArray |
Definition at line 61 of file IBManager.h.
IBManager::IBManager | ( | GeomFields & | geomFields, |
Mesh & | solidBoundaryMesh, | ||
const MeshList & | fluidMeshes | ||
) |
Definition at line 20 of file IBManager.cpp.
|
private |
Definition at line 1006 of file IBManager.cpp.
References CRConnectivity::getCol(), Array< T >::getLength(), and CRConnectivity::getRow().
Referenced by createIBInterpolationStencil(), and createSolidInterpolationStencil().
|
private |
Definition at line 498 of file IBManager.cpp.
References _geomFields, GradientModelBase::clearGradientMatrix(), Mesh::getAllFaceCells(), Mesh::getCells(), StorageSite::getCount(), Mesh::getFaces(), Mesh::getIBFaces(), GeomFields::ibFaceIndex, GeomFields::ibType, Mesh::IBTYPE_BOUNDARY, Mesh::IBTYPE_FLUID, Mesh::IBTYPE_SOLID, Mesh::isShell(), StorageSite::setCount(), and Mesh::setIBFaces().
Referenced by update().
|
private |
Definition at line 594 of file IBManager.cpp.
References _geomFields, _solidBoundaryMesh, addFluidNeighbors(), GeomFields::coordinate, CRConnectivityPrintFile(), KSearchTree::findNeighbors(), fluidNeighborsPerIBFace, Mesh::getCellCells2(), Mesh::getCells(), StorageSite::getCount(), CRConnectivity::getCount(), Mesh::getFaces(), Mesh::getIBFaceList(), Mesh::getIBFaces(), GeomFields::ibType, Mesh::IBTYPE_FLUID, KSearchTree::insert(), mag2(), NearestCell::neighbors, Mesh::setConnectivity(), and solidNeighborsPerIBFace.
Referenced by update().
|
private |
Definition at line 844 of file IBManager.cpp.
References _geomFields, _solidBoundaryMesh, addFluidNeighbors(), NearestCell::cell, GeomFields::coordinate, CRConnectivityPrintFile(), KSearchTree::findNeighbors(), fluidNeighborsPerIBFace, fluidNeighborsPerSolidFace, Mesh::getCellCells2(), Mesh::getCells(), StorageSite::getCount(), CRConnectivity::getCount(), Mesh::getFaces(), Mesh::getIBFaceList(), Mesh::getIBFaces(), IBNeighborsPerSolidFace, GeomFields::ibType, Mesh::IBTYPE_FLUID, KSearchTree::insert(), mag2(), NearestCell::mesh, NearestCell::neighbors, and Mesh::setConnectivity().
Referenced by update().
|
private |
Definition at line 759 of file IBManager.cpp.
References _geomFields, _solidBoundaryMesh, NearestCell::cell, GeomFields::coordinate, NearestCell::distanceSquared, KSearchTree::findNeighbors(), Mesh::getCells(), StorageSite::getCount(), Mesh::getFaces(), mag2(), and NearestCell::mesh.
Referenced by update().
|
private |
Definition at line 327 of file IBManager.cpp.
References _geomFields, Mesh::getCellCells(), Mesh::getCells(), StorageSite::getCount(), CRConnectivity::getCount(), GeomFields::ibType, Mesh::IBTYPE_FLUID, and Mesh::IBTYPE_UNKNOWN.
Referenced by update().
|
private |
Definition at line 407 of file IBManager.cpp.
References _geomFields, Mesh::getCells(), StorageSite::getCountLevel1(), Mesh::getLocalToGlobal(), StorageSite::getSelfCount(), GeomFields::ibType, Mesh::IBTYPE_BOUNDARY, Mesh::IBTYPE_FLUID, and Mesh::IBTYPE_SOLID.
Referenced by update().
Definition at line 203 of file IBManager.cpp.
References _geomFields, Mesh::getAllFaceCells(), Mesh::getAllFaceNodes(), Mesh::getBoundaryFaceGroups(), Mesh::getCellNodes(), Mesh::getCells(), StorageSite::getCount(), CRConnectivity::getCount(), Mesh::getDimension(), Mesh::getFaceCells(), Mesh::getFaces(), Mesh::getNodeCoordinates(), StorageSite::getSelfCount(), AABB::hasIntersectionWithTriangle(), GeomFields::ibType, Mesh::IBTYPE_BOUNDARY, Mesh::IBTYPE_FLUID, Mesh::IBTYPE_UNKNOWN, Mesh::isShell(), and FaceGroup::site.
Referenced by update().
|
private |
Definition at line 380 of file IBManager.cpp.
References _geomFields, Mesh::getCells(), StorageSite::getSelfCount(), GeomFields::ibType, Mesh::IBTYPE_SOLID, and Mesh::IBTYPE_UNKNOWN.
Referenced by update().
void IBManager::update | ( | ) |
Definition at line 32 of file IBManager.cpp.
References _fluidMeshes, _geomFields, _solidBoundaryMesh, GeomFields::coordinate, createIBFaces(), createIBInterpolationStencil(), createSolidInterpolationStencil(), findNearestCellForSolidFaces(), Mesh::getCells(), StorageSite::getCount(), Mesh::getFaces(), Mesh::getIBFaceList(), Mesh::getIBFaces(), Mesh::getID(), StorageSite::getSelfCount(), GeomFields::ibType, Mesh::IBTYPE_FLUID, KSearchTree::insert(), Mesh::isShell(), markFluid(), markIBTypePlus(), markIntersections(), markSolid(), max(), min(), and Field::syncLocal().
|
private |
Definition at line 102 of file IBManager.h.
Referenced by update().
|
private |
Definition at line 101 of file IBManager.h.
Referenced by createIBFaces(), createIBInterpolationStencil(), createSolidInterpolationStencil(), findNearestCellForSolidFaces(), markFluid(), markIBTypePlus(), markIntersections(), markSolid(), and update().
Mesh& IBManager::_solidBoundaryMesh |
Definition at line 74 of file IBManager.h.
Referenced by createIBInterpolationStencil(), createSolidInterpolationStencil(), findNearestCellForSolidFaces(), and update().
int IBManager::fluidNeighborsPerIBFace |
Definition at line 70 of file IBManager.h.
Referenced by createIBInterpolationStencil(), and createSolidInterpolationStencil().
int IBManager::fluidNeighborsPerSolidFace |
Definition at line 71 of file IBManager.h.
Referenced by createSolidInterpolationStencil().
int IBManager::IBNeighborsPerSolidFace |
Definition at line 73 of file IBManager.h.
Referenced by createSolidInterpolationStencil().
int IBManager::solidNeighborsPerIBFace |
Definition at line 72 of file IBManager.h.
Referenced by createIBInterpolationStencil().