![]()  | 
  
    PeriDyno 1.2.1
    
   | 
 
#include <DualParticleIsphModule.h>


Public Types | |
| typedef TDataType::Real | Real | 
| typedef TDataType::Coord | Coord | 
| typedef TDataType::Matrix | Matrix | 
  Public Types inherited from dyno::OBase | |
| typedef std::vector< FBase * > | FieldVector | 
| typedef std::map< FieldID, FBase * > | FieldMap | 
Public Member Functions | |
| DualParticleIsphModule () | |
| ~DualParticleIsphModule () override | |
| void | constrain () override | 
| DEF_VAR (Real, RestDensity, Real(1000), "Reference density") | |
| DEF_VAR (Real, SamplingDistance, Real(0.005), "") | |
| DEF_VAR (Real, SmoothingLength, Real(0.0125), "Smoothing length in most cases") | |
| DEF_VAR_IN (Real, TimeStep, "Time Step") | |
| DEF_ARRAY_IN (Coord, RPosition, DeviceType::GPU, "Input real particle position") | |
| Real Particle position.   | |
| DEF_ARRAY_IN (Coord, VPosition, DeviceType::GPU, "Input virtual particle position") | |
| Virtual Particle position.   | |
| DEF_ARRAY_IN (Coord, Velocity, DeviceType::GPU, "Input particle velocity") | |
| Real Particle velocitie.   | |
| DEF_ARRAY_IN (Attribute, ParticleAttribute, DeviceType::GPU, "Real particle attribute") | |
| Real Particle attribute.   | |
| DEF_ARRAY_IN (Coord, BoundaryNorm, DeviceType::GPU, "Real-solid particle normal") | |
| Real-Solid Particle Normal.   | |
| DEF_ARRAYLIST_IN (int, NeighborIds, DeviceType::GPU, "Return real neighbor ids of real particles") | |
| Real Particle's Neghoboring Real Partilce.   | |
| DEF_ARRAYLIST_IN (int, VRNeighborIds, DeviceType::GPU, "Return real neighbor ids of Virtual particles") | |
| DEF_ARRAYLIST_IN (int, RVNeighborIds, DeviceType::GPU, "Return Virtual neighbor ids of real particles") | |
| DEF_ARRAYLIST_IN (int, VVNeighborIds, DeviceType::GPU, "Return Virtual neighbor ids of virtual particles") | |
| DEF_ARRAY_OUT (bool, VirtualBool, DeviceType::GPU, "Virtual Particle's Boolean Quantity") | |
| DEF_ARRAY_OUT (Real, VirtualWeight, DeviceType::GPU, "Virtual Particle's Float Quantity") | |
| DEF_VAR (Real, ResidualThreshold, 0.001f, "Convergence threshold for the pressure Poisson Equation") | |
  Public Member Functions inherited from dyno::ConstraintModule | |
| ConstraintModule () | |
| ~ConstraintModule () override | |
| std::string | getModuleType () override | 
  Public Member Functions inherited from dyno::Module | |
| Module (std::string name="default") | |
| ~Module (void) override | |
| bool | initialize () | 
| void | update () | 
| void | setName (std::string name) | 
| std::string | getName () override | 
| virtual void | setParentNode (Node *node) | 
| Set the parent node.   | |
| Node * | getParentNode () | 
| SceneGraph * | getSceneGraph () | 
| bool | isInitialized () | 
| bool | attachField (FBase *field, std::string name, std::string desc, bool autoDestroy=true) override | 
| Attach a field to Base.   | |
| bool | isInputComplete () | 
| Check the completeness of input fields.   | |
| bool | isOutputCompete () | 
| bool | connect (ModulePort *nPort) | 
| bool | disconnect (ModulePort *nPort) | 
| virtual bool | allowImported () | 
| virtual bool | allowExported () | 
| std::vector< ModulePort * > & | getImportModules () | 
| std::vector< ModulePort * > & | getExportModules () | 
| DEF_VAR (bool, ForceUpdate, false, "") | |
| void | setUpdateAlways (bool b) | 
| Set the update strategy for the module.   | |
| MultipleModulePort< Module > * | importModules () | 
| Used to ensure modules can be executed in the correct order.   | |
  Public Member Functions inherited from dyno::OBase | |
| OBase () | |
| ~OBase () override | |
| virtual std::string | caption () | 
| Return the caption.   | |
| virtual bool | captionVisible () | 
| Whether to hide the caption in the GUI.   | |
| virtual std::string | description () | 
| Return a description for the node or module, override this function to support user-defined description.   | |
| bool | addField (FBase *data) | 
| Add a field to Base FieldID will be set to the name of Field by default.   | |
| bool | addField (FieldID name, FBase *data) | 
| Add a field to Base.   | |
| bool | addFieldAlias (FieldID name, FBase *data) | 
| bool | addFieldAlias (FieldID name, FBase *data, FieldMap &fieldAlias) | 
| bool | findField (FBase *data) | 
| Find a field by its pointer.   | |
| bool | findFieldAlias (const FieldID name) | 
| Find a field by its name.   | |
| bool | findFieldAlias (const FieldID name, FieldMap &fieldAlias) | 
| Find a field in fieldAlias by its name This function is typically called by other functions.   | |
| bool | removeField (FBase *data) | 
| Remove a field by its pointer.   | |
| bool | removeFieldAlias (const FieldID name) | 
| Remove a field by its name.   | |
| bool | removeFieldAlias (const FieldID name, FieldMap &fieldAlias) | 
| FBase * | getField (const FieldID name) | 
| Return a field by its name.   | |
| std::vector< FBase * > & | getAllFields () | 
| template<typename T> | |
| T * | getField (FieldID name) | 
| bool | isAllFieldsReady () | 
| Check the completeness of all required fields.   | |
| std::vector< FieldID > | getFieldAlias (FBase *data) | 
| int | getFieldAliasCount (FBase *data) | 
| void | setBlockCoord (float x, float y) | 
| float | bx () | 
| float | by () | 
| bool | findInputField (FBase *field) | 
| bool | addInputField (FBase *field) | 
| bool | removeInputField (FBase *field) | 
| std::vector< FBase * > & | getInputFields () | 
| bool | findOutputField (FBase *field) | 
| bool | addOutputField (FBase *field) | 
| bool | addToOutput (FBase *field) | 
| bool | removeOutputField (FBase *field) | 
| bool | removeFromOutput (FBase *field) | 
| std::vector< FBase * > & | getOutputFields () | 
| bool | findParameter (FBase *field) | 
| bool | addParameter (FBase *field) | 
| bool | removeParameter (FBase *field) | 
| std::vector< FBase * > & | getParameters () | 
  Public Member Functions inherited from dyno::Object | |
| Object () | |
| virtual | ~Object () | 
| ObjectId | objectId () | 
Private Member Functions | |
| bool | initializeImpl () override | 
| bool | virtualArraysResize () | 
| bool | realArraysResize () | 
Private Attributes | |
| bool | init_flag = false | 
| CubicKernel< Real > | kernel | 
| Real | m_maxAii | 
| Real | m_particleMass | 
| Real | m_v_particleMass | 
| Real | m_airPressure | 
| DArray< bool > | m_solidVirtualPaticleFlag | 
| DArray< Coord > | m_virtualVelocity | 
| DArray< Real > | m_source | 
| DArray< Real > | m_Ax | 
| DArray< bool > | m_virtualAirFlag | 
| DArray< Real > | m_r | 
| DArray< Real > | m_p | 
| DArray< Real > | m_pressure | 
| DArray< Real > | m_residual | 
| DArray< Coord > | m_Gp | 
| DArray< Coord > | m_GpNearSolid | 
| unsigned int | virtualNumber_old = 0 | 
| DArray< Real > | m_virtualAirWeight | 
| DArray< Real > | m_Aii | 
| Reduction< Real > * | m_reduce | 
| Arithmetic< Real > * | m_arithmetic | 
| unsigned int | frag_number = 0 | 
| Real | max_Aii | 
| std::shared_ptr< SummationDensity< TDataType > > | m_summation | 
| std::shared_ptr< SummationDensity< TDataType > > | m_vv_summation | 
| std::shared_ptr< SummationDensity< TDataType > > | m_vr_summation | 
Additional Inherited Members | |
  Static Public Member Functions inherited from dyno::Object | |
| static bool | registerClass (ClassInfo *ci) | 
| static Object * | createObject (std::string name) | 
| static std::map< std::string, ClassInfo * > * | getClassMap () | 
| static ObjectId | baseId () | 
| Base Id.   | |
  Protected Member Functions inherited from dyno::ConstraintModule | |
| void | updateImpl () override | 
  Protected Member Functions inherited from dyno::Module | |
| virtual void | preprocess () | 
| virtual void | postprocess () | 
| virtual bool | validateInputs () | 
| virtual bool | validateOutputs () | 
| virtual bool | requireUpdate () | 
| virtual void | updateStarted () | 
| Two functions called at the beginning and end of update() used for debug.   | |
| virtual void | updateEnded () | 
| bool | appendExportModule (ModulePort *nodePort) | 
| bool | removeExportModule (ModulePort *nodePort) | 
  Protected Attributes inherited from dyno::OBase | |
| std::vector< FBase * > | fields_input | 
| std::vector< FBase * > | fields_output | 
| std::vector< FBase * > | fields_param | 
Definition at line 44 of file DualParticleIsphModule.h.
| typedef TDataType::Coord dyno::DualParticleIsphModule< TDataType >::Coord | 
Definition at line 49 of file DualParticleIsphModule.h.
| typedef TDataType::Matrix dyno::DualParticleIsphModule< TDataType >::Matrix | 
Definition at line 50 of file DualParticleIsphModule.h.
| typedef TDataType::Real dyno::DualParticleIsphModule< TDataType >::Real | 
Definition at line 48 of file DualParticleIsphModule.h.
| dyno::DualParticleIsphModule< TDataType >::DualParticleIsphModule | ( | ) | 
      
  | 
  override | 
      
  | 
  overridevirtual | 
Implements dyno::ConstraintModule.
| dyno::DualParticleIsphModule< TDataType >::DEF_ARRAY_IN | ( | Attribute | , | 
| ParticleAttribute | , | ||
| DeviceType::GPU | , | ||
| "Real particle attribute" | ) | 
| dyno::DualParticleIsphModule< TDataType >::DEF_ARRAY_IN | ( | Coord | , | 
| BoundaryNorm | , | ||
| DeviceType::GPU | , | ||
| "Real-solid particle normal" | ) | 
Real-Solid Particle Normal.

| dyno::DualParticleIsphModule< TDataType >::DEF_ARRAY_IN | ( | Coord | , | 
| RPosition | , | ||
| DeviceType::GPU | , | ||
| "Input real particle position" | ) | 
Real Particle position.


| dyno::DualParticleIsphModule< TDataType >::DEF_ARRAY_IN | ( | Coord | , | 
| Velocity | , | ||
| DeviceType::GPU | , | ||
| "Input particle velocity" | ) | 
| dyno::DualParticleIsphModule< TDataType >::DEF_ARRAY_IN | ( | Coord | , | 
| VPosition | , | ||
| DeviceType::GPU | , | ||
| "Input virtual particle position" | ) | 
Virtual Particle position.

| dyno::DualParticleIsphModule< TDataType >::DEF_ARRAY_OUT | ( | bool | , | 
| VirtualBool | , | ||
| DeviceType::GPU | , | ||
| "Virtual Particle's Boolean Quantity" | ) | 


| dyno::DualParticleIsphModule< TDataType >::DEF_ARRAY_OUT | ( | Real | , | 
| VirtualWeight | , | ||
| DeviceType::GPU | , | ||
| "Virtual Particle's Float Quantity" | ) | 

| dyno::DualParticleIsphModule< TDataType >::DEF_ARRAYLIST_IN | ( | int | , | 
| NeighborIds | , | ||
| DeviceType::GPU | , | ||
| "Return real neighbor ids of real particles" | ) | 
| dyno::DualParticleIsphModule< TDataType >::DEF_ARRAYLIST_IN | ( | int | , | 
| RVNeighborIds | , | ||
| DeviceType::GPU | , | ||
| "Return Virtual neighbor ids of real particles" | ) | 

| dyno::DualParticleIsphModule< TDataType >::DEF_ARRAYLIST_IN | ( | int | , | 
| VRNeighborIds | , | ||
| DeviceType::GPU | , | ||
| "Return real neighbor ids of Virtual particles" | ) | 

| dyno::DualParticleIsphModule< TDataType >::DEF_ARRAYLIST_IN | ( | int | , | 
| VVNeighborIds | , | ||
| DeviceType::GPU | , | ||
| "Return Virtual neighbor ids of virtual particles" | ) | 

| dyno::DualParticleIsphModule< TDataType >::DEF_VAR | ( | Real | , | 
| ResidualThreshold | , | ||
| 0. | 001f, | ||
| "Convergence threshold for the pressure Poisson Equation" | ) | 

| dyno::DualParticleIsphModule< TDataType >::DEF_VAR | ( | Real | , | 
| RestDensity | , | ||
| Real(1000) | , | ||
| "Reference density" | ) | 

| dyno::DualParticleIsphModule< TDataType >::DEF_VAR | ( | Real | , | 
| SamplingDistance | , | ||
| Real(0.005) | , | ||
| "" | ) | 
| dyno::DualParticleIsphModule< TDataType >::DEF_VAR | ( | Real | , | 
| SmoothingLength | , | ||
| Real(0.0125) | , | ||
| "Smoothing length in most cases" | ) | 
| dyno::DualParticleIsphModule< TDataType >::DEF_VAR_IN | ( | Real | , | 
| TimeStep | , | ||
| "Time Step" | ) | 


      
  | 
  overrideprivatevirtual | 
Reimplemented from dyno::Module.


      
  | 
  private | 


      
  | 
  private | 


      
  | 
  private | 
Definition at line 166 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 136 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 139 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 160 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 143 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 163 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 148 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 154 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 155 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 140 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 151 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 141 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 152 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 150 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 162 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 153 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 145 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 147 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 169 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 142 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 149 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 159 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 146 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 173 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 171 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 167 of file DualParticleIsphModule.h.
      
  | 
  private | 
Definition at line 157 of file DualParticleIsphModule.h.