|
double | CrossProductDet2D (array_1d< double, 3 > VectorA, array_1d< double, 3 > VectorB) |
|
bool | CheckIsInside (const GeometryType &rGeom, array_1d< double, 3 > &LocalCoords, const array_1d< double, 3 > &Coords, const double Tolerance) |
|
void | ConstructNeighbourRelations (GeometryType &rGeom, const ModelPart &rBackgroundGridModelPart) |
|
bool | IsExplicitAndNeedsCorrection (GeometryType::Pointer pQuadraturePoint, const ProcessInfo &rProcessInfo) |
|
GeometryType & | FindGridGeom (GeometryType &rParentGeom, const ModelPart &rBackgroundGridModelPart, const double Tolerance, const array_1d< double, 3 > &xg, array_1d< double, 3 > &rLocalCoords, const ProcessInfo &rProcessInfo, bool &IsFound) |
|
void | UpdatePartitionedQuadraturePoint (const ModelPart &rBackgroundGridModelPart, const array_1d< double, 3 > &rCoordinates, Element &rMasterMaterialPoint, typename GeometryType::Pointer pQuadraturePointGeometry, const double Tolerance) |
|
void | NeighbourSearchElements (const ModelPart &rMPMModelPart, const ModelPart &rBackgroundGridModelPart, std::vector< typename Element::Pointer > &rMissingElements, const double Tolerance) |
|
void | NeighbourSearchConditions (const ModelPart &rMPMModelPart, const ModelPart &rBackgroundGridModelPart, std::vector< typename Condition::Pointer > &rMissingConditions, const double Tolerance) |
|
bool | IsFixExplicitAndOnElementEdge (const Vector &N, const ProcessInfo &rProcessInfo) |
|
template<std::size_t TDimension> |
void | BinBasedSearchElementsAndConditions (ModelPart &rMPMModelPart, ModelPart &rBackgroundGridModelPart, std::vector< typename Element::Pointer > &rMissingElements, std::vector< typename Condition::Pointer > &rMissingConditions, const std::size_t MaxNumberOfResults, const double Tolerance) |
|
void | ResetElementsAndNodes (ModelPart &rBackgroundGridModelPart) |
|
template<std::size_t TDimension> |
void | SearchElement (ModelPart &rBackgroundGridModelPart, ModelPart &rMPMModelPart, const std::size_t MaxNumberOfResults, const double Tolerance) |
| Search element connectivity for each particle. More...
|
|
template<std::size_t TDimension>
void Kratos::MPMSearchElementUtility::SearchElement |
( |
ModelPart & |
rBackgroundGridModelPart, |
|
|
ModelPart & |
rMPMModelPart, |
|
|
const std::size_t |
MaxNumberOfResults, |
|
|
const double |
Tolerance |
|
) |
| |
Search element connectivity for each particle.
A search is performed to know in which grid element the material point falls. If one or more material points fall in the grid element, the grid element is set to be active and its connectivity is associated to the material point element. STEPS: 1) All the elements are set to be INACTIVE 2) A searching is performed and the grid elements which contain at least a MP are set to be ACTIVE