#include <IBMCart.hpp>


Public Types | |
| using | Field = blockelm::CartField< Real, N_dim > |
Public Member Functions | |
| IBMCart () | |
| IBMCart (int id_, blockelm::CartBlock< N_dim > &block, std::vector< Real > pos_ref0, IBMBase< N_dim >::Option &option) | |
| IBMCart (int id_, blockelm::CartBlock< N_dim > &block, std::string filename, tml::tmlnode &ibtml) | |
| void | Create (int id_, blockelm::CartBlock< N_dim > &block, std::string filename, tml::tmlnode &ibtml) |
| auto & | AddCartFieldRef (blockelm::CartField< Real, N_dim > *ptr) |
| auto & | ClearCartFieldRef () |
| void | InitFilter (blockelm::CartBlock< N_dim > &block) |
| void | Init () |
| void | InitFilter () |
| void | InitFilter (const std::vector< std::vector< Real >> &bds) |
| virtual bool | IsInside (const blin::Vecr< N_dim > &pos) |
| virtual bool | IsInsideWithGhostWidth (const blin::Vecr< N_dim > &pos) |
| virtual bool | IsInsideWithMaxCollisionWidth (const blin::Vecr< N_dim > &pos) |
| void | Perpare (blockelm::CartBlock< N_dim > &block) |
| virtual void | Perpare () |
| void | UpdateNearestGridIndex (blockelm::CartMesh< N_dim > &mesh) |
| void | UpdateNearestGridIndex (blockelm::CartField< Real, N_dim > &in) |
| void | CalIBForce (int dim, Field &in, Field &out, Real dt) |
| auto | CalIBForceImplicitely (dmdyn::ParticleData< N_dim > &pdata, Real dt) |
| Real | InterpFromEToL (int ind_ibpnt, Field &in) |
| void | CalLagVelocity (int dim, int ind_ibpnt, Field &in, Real dt) |
| Real | CalLagForce (int dim, int ind_ibpnt, Field &in, Real dt) |
| Real | CalLagForceByPenaltyFun (int dim, int ind_ibpnt, Field &in, Real dt) |
| Real | CalLagForceByDirectForce (int dim, int ind_ibpnt, Field &in, Real dt) |
| void | AddIBForceToLocal (int dim, int ind_ibpnt, Field &in, Field &out, Real dt) |
| Force< N_dim > | LocalInternalForce (dmdyn::ParticleModel *ptr_part, dmdyn::ParticleData< N_dim > &pdata, bool flag=true) |
Public Member Functions inherited from ibm::IBMBase< N_dim > | |
| IBMBase () | |
| IBMBase (int id_, std::string filename, tml::tmlnode &ibtml) | |
| IBMBase (int id_, std::vector< Real > pos_ref0, Option &option0) | |
| void | Create (int id_, std::string filename, tml::tmlnode &ibtml) |
| void | ConfigGeo (tml::tmlnode &ibtml) |
| void | CreateGeo () |
| create wall geometry from toml More... | |
| auto & | GetCollObj () |
| Real | GetMeanArea () |
| virtual void | SetIBSolType (IBMSolType soltype0) |
| virtual void | SetIBMethod (IBMethod method0, std::vector< Real > para={}) |
| void | SetMPI (const MPI_Comm comm_) |
| void | LoadLagPoints (std::string filename) |
| void | AddNode (auto &nd) |
| void | AddVirtualNode (auto &nd) |
| void | AddElm (auto &elm) |
| void | AddVirtualElm (auto &elm) |
| void | InitIBPoints () |
| void | UpdateIBPoints (dmdyn::ParticleData< N_dim > &pdata) |
| update ib points by input pdata More... | |
| void | PrintIBPoints () |
| void | VelocityBoundary () |
| auto & | CalLocalForceAndTorque () |
| auto & | CalLocalForceAndTorque (blin::Vecr< N_dim > &ref) |
| auto | CalTotalForceAndTorque () |
| void | InitForceLog (std::string path, bool iconti) |
| void | ForceLog (std::string path, bool iconti, int istep, Real time) |
| std::vector< algo::fcl::Vec3f > | GenerateFCLPoints () |
| void | GenerateBVHMesh () |
Public Attributes | |
| std::vector< blockelm::CartField< Real, N_dim > * > | ptr_fieldlist |
| compgeo::SimpleCartBoxZone< N_dim > | boxfilter |
| blockelm::CartBlock< N_dim > * | ptr_block = nullptr |
| std::vector< Real > | ghost_width |
| std::vector< Real > | coll_width |
| Veci< N_dim > | max_gridind |
| Veci< N_dim > | min_gridind |
Public Attributes inherited from ibm::IBMBase< N_dim > | |
| int | id |
| MPI_Comm | comm |
| blin::Vecr< N_dim > | pos_ref = 0.0 |
| struct ibm::IBMBase::Option | option |
| struct ibm::IBMBase::Geom | geo |
| struct ibm::IBMBase::IBVelBoundary | ibvelb |
| dmdyn::SmartPList< IBPoint< N_dim > > | ibpoints |
| std::unordered_map< int, int > | nodeid |
| std::unordered_map< int, int > | elmid |
| dmdyn::SmartPList< IBNode< N_dim > > | nodes |
| dmdyn::SmartPList< IBElement< N_dim > > | elements |
| Force< N_dim > | local |
| Force< N_dim > | total = {0.0, 0.0} |
| Vecr< N_dim > | dr |
| Real | mean_ds = -999.0 |
| using ibm::IBMCart< N_dim >::Field = blockelm::CartField<Real, N_dim> |
|
inline |
|
inline |
References ibm::IBMCart< N_dim >::ptr_block.
|
inline |
References ibm::IBMCart< N_dim >::ptr_block.
|
inline |
References ibm::IBMCart< N_dim >::ptr_fieldlist.
|
inline |
References ibm::IBMCart< N_dim >::CalLagForce(), ibm::DeltaFunMap< N_dim >::Delta(), blockelm::CartField< T, N_dim >::GetMesh(), ibm::IBMBase< N_dim >::ibpoints, and blockelm::CartField< T, N_dim >::shape.


|
inline |
References ibm::IBMCart< N_dim >::AddIBForceToLocal(), and ibm::IBMCart< N_dim >::CalLagVelocity().


|
inline |
References ibm::IBMCart< N_dim >::CalIBForce(), ibm::IBMBase< N_dim >::CalLocalForceAndTorque(), ibm::IBMCart< N_dim >::Perpare(), ibm::IBMCart< N_dim >::ptr_fieldlist, and ibm::IBMBase< N_dim >::UpdateIBPoints().

|
inline |
References ibm::IBMCart< N_dim >::CalLagForceByDirectForce(), ibm::IBMCart< N_dim >::CalLagForceByPenaltyFun(), ibm::DirectForce, and ibm::PenaltyFun.


|
inline |
|
inline |
|
inline |
References ibm::IBMBase< N_dim >::ibpoints, and ibm::IBMCart< N_dim >::InterpFromEToL().


|
inline |
References ibm::IBMCart< N_dim >::ptr_fieldlist.
|
inline |
References ibm::IBMBase< N_dim >::Create(), and ibm::IBMCart< N_dim >::ptr_block.

|
inline |
References ibm::IBMCart< N_dim >::InitFilter(), and ibm::IBMBase< N_dim >::LoadLagPoints().

|
inline |
References ibm::IBMCart< N_dim >::boxfilter, ibm::IBMCart< N_dim >::coll_width, ibm::IBMCart< N_dim >::ghost_width, and ibm::IBMCart< N_dim >::ptr_block.

|
inline |
|
inline |
References ibm::IBMCart< N_dim >::boxfilter.
|
inline |
References ibm::DeltaFunMap< N_dim >::Delta(), ibm::IBMBase< N_dim >::dr, blockelm::CartField< T, N_dim >::GetMesh(), ibm::IBMBase< N_dim >::ibpoints, and blockelm::CartField< T, N_dim >::shape.


|
inlinevirtual |
Implements ibm::IBMBase< N_dim >.
References ibm::IBMCart< N_dim >::boxfilter.
|
inlinevirtual |
Implements ibm::IBMBase< N_dim >.
References ibm::IBMCart< N_dim >::boxfilter, and ibm::IBMCart< N_dim >::ghost_width.
|
inlinevirtual |
Implements ibm::IBMBase< N_dim >.
References ibm::IBMCart< N_dim >::boxfilter, and ibm::IBMCart< N_dim >::coll_width.
|
inline |
References ibm::IBMCart< N_dim >::boxfilter, dmdyn::angular::CrossVec3(), dmdyn::ParticleModel::LevelSetVolumeFraction(), ibm::IBMCart< N_dim >::max_gridind, ibm::IBMCart< N_dim >::min_gridind, ibm::IBMCart< N_dim >::Perpare(), ibm::IBMCart< N_dim >::ptr_block, ibm::IBMBase< N_dim >::UpdateIBPoints(), and dmdyn::ParticleModel::UpdateLevelSetTransform().

|
inlinevirtual |
Implements ibm::IBMBase< N_dim >.
References ibm::IBMBase< N_dim >::dr, ibm::IBMCart< N_dim >::ptr_block, and ibm::IBMCart< N_dim >::UpdateNearestGridIndex().


|
inline |
References ibm::IBMBase< N_dim >::dr, blockelm::CartBlock< N_dim >::mesh, and ibm::IBMCart< N_dim >::UpdateNearestGridIndex().

|
inline |
References blockelm::CartField< T, N_dim >::GetMesh(), ibm::IBMBase< N_dim >::ibpoints, quadpack::max(), ibm::IBMCart< N_dim >::max_gridind, quadpack::min(), and ibm::IBMCart< N_dim >::min_gridind.

|
inline |
References ibm::IBMBase< N_dim >::ibpoints, quadpack::max(), ibm::IBMCart< N_dim >::max_gridind, blockelm::CartMesh< N_dim >::meshc, quadpack::min(), and ibm::IBMCart< N_dim >::min_gridind.


| compgeo::SimpleCartBoxZone<N_dim> ibm::IBMCart< N_dim >::boxfilter |
| std::vector<Real> ibm::IBMCart< N_dim >::coll_width |
| std::vector<Real> ibm::IBMCart< N_dim >::ghost_width |
| Veci<N_dim> ibm::IBMCart< N_dim >::max_gridind |
| Veci<N_dim> ibm::IBMCart< N_dim >::min_gridind |
| blockelm::CartBlock<N_dim>* ibm::IBMCart< N_dim >::ptr_block = nullptr |
| std::vector<blockelm::CartField<Real, N_dim> *> ibm::IBMCart< N_dim >::ptr_fieldlist |