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


Public Types | |
| typedef TDataType::Real | Real | 
| typedef TDataType::Coord | Coord | 
  Public Types inherited from dyno::OBase | |
| typedef std::vector< FBase * > | FieldVector | 
| typedef std::map< FieldID, FBase * > | FieldMap | 
Public Member Functions | |
| SemiAnalyticalIncompressibleFluidModel () | |
| DEF_INSTANCE_IN (TriangleSet< TDataType >, TriangleSet, "") | |
| void | updateImpl () override | 
| void | setSmoothingLength (Real len) | 
| void | setRestDensity (Real rho) | 
  Public Member Functions inherited from dyno::GroupModule | |
| GroupModule () | |
| virtual | ~GroupModule () | 
| void | pushModule (std::shared_ptr< Module > m) | 
| const std::list< Module * > & | moduleList () const | 
| void | setParentNode (Node *node) override | 
| Set the parent node.   | |
  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 | 
| Node * | getParentNode () | 
| SceneGraph * | getSceneGraph () | 
| bool | isInitialized () | 
| virtual std::string | getModuleType () | 
| 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.   | |
| virtual bool | initializeImpl () | 
| 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 Attributes | |
| int | m_pNum | 
| Real | m_restRho | 
| int | first = 1 | 
| std::shared_ptr< ConstraintModule > | m_viscositySolver | 
| std::shared_ptr< ConstraintModule > | m_incompressibilitySolver | 
| std::shared_ptr< SemiAnalyticalIncompressibilityModule< TDataType > > | m_pbdModule | 
| semi-analytical projection-based fluid model   | |
| std::shared_ptr< TriangularMeshConstraint< TDataType > > | m_meshCollision | 
| used to handel the collision between triangles and particles   | |
| std::shared_ptr< ImplicitViscosity< TDataType > > | m_visModule | 
| viscosity   | |
| std::shared_ptr< SurfaceTension< TDataType > > | m_surfaceTensionSolver | 
| surface tension   | |
| std::shared_ptr< Helmholtz< TDataType > > | m_Helmholtz | 
| particle shifting   | |
| std::shared_ptr< PointSetToPointSet< TDataType > > | m_mapping | 
| std::shared_ptr< ParticleIntegrator< TDataType > > | m_integrator | 
| integrator, update particle velocity and position   | |
| std::shared_ptr< NeighborPointQuery< TDataType > > | m_nbrQueryPoint | 
| neighbor list for particle pairs   | |
| std::shared_ptr< NeighborTriangleQuery< TDataType > > | m_nbrQueryTri | 
| neighbor list for particle-triangle   | |
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::GroupModule | |
| void | preprocess () final | 
  Protected Member Functions inherited from dyno::Module | |
| 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 65 of file SemiAnalyticalIncompressibleFluidModel.h.
| typedef TDataType::Coord dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::Coord | 
Definition at line 70 of file SemiAnalyticalIncompressibleFluidModel.h.
| typedef TDataType::Real dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::Real | 
Definition at line 69 of file SemiAnalyticalIncompressibleFluidModel.h.
| dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::SemiAnalyticalIncompressibleFluidModel | ( | ) | 
Definition at line 24 of file SemiAnalyticalIncompressibleFluidModel.cpp.

| dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::DEF_INSTANCE_IN | ( | TriangleSet< TDataType > | , | 
| TriangleSet | , | ||
| "" | ) | 
      
  | 
  inline | 
Set the rest density, currently have no influence on the behaviour
| [in] | rho | the reset density | 
Definition at line 98 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  inline | 
Set the searching radius
| [in] | len | the smoothing length | 
Definition at line 89 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  overridevirtual | 
advance the scene node in time
| [in] | dt | the time interval between the states before&&after the call (deprecated) | 
Reimplemented from dyno::GroupModule.
Definition at line 99 of file SemiAnalyticalIncompressibleFluidModel.cpp.
      
  | 
  private | 
Definition at line 133 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<int> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_flip | 
Definition at line 125 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
particle shifting
Definition at line 146 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
Definition at line 138 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
integrator, update particle velocity and position
Definition at line 148 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
Definition at line 147 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
used to handel the collision between triangles and particles
Definition at line 142 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
neighbor list for particle pairs
Definition at line 149 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
neighbor list for particle-triangle
Definition at line 151 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<Attribute> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_particle_attribute | 
Definition at line 114 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<Coord> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_particle_force_density | 
Definition at line 121 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<Real> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_particle_mass | 
Definition at line 109 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<Coord> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_particle_position | 
Definition at line 111 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<Coord> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_particle_velocity | 
Definition at line 112 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
semi-analytical projection-based fluid model
Definition at line 140 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
Definition at line 131 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
Definition at line 132 of file SemiAnalyticalIncompressibleFluidModel.h.
| FVar<Real> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_smoothing_length | 
Definition at line 104 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
surface tension
Definition at line 145 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<Triangle> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_triangle_index | 
Definition at line 119 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<Coord> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_triangle_vertex | 
Definition at line 117 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<Real> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_triangle_vertex_mass | 
Definition at line 116 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<Coord> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_triangle_vertex_old | 
Definition at line 118 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<Coord> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_velocity_mod | 
Definition at line 128 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<Coord> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_vertex_force_density | 
Definition at line 122 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
Definition at line 136 of file SemiAnalyticalIncompressibleFluidModel.h.
      
  | 
  private | 
viscosity
Definition at line 144 of file SemiAnalyticalIncompressibleFluidModel.h.
| DeviceArrayField<Coord> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::m_vn | 
Definition at line 123 of file SemiAnalyticalIncompressibleFluidModel.h.
| FVar<Real> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::max_vel | 
Definition at line 106 of file SemiAnalyticalIncompressibleFluidModel.h.
| Reduction<Real>* dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::pReduce | 
Definition at line 126 of file SemiAnalyticalIncompressibleFluidModel.h.
| FVar<Real> dyno::SemiAnalyticalIncompressibleFluidModel< TDataType >::var_smoothing_length | 
Definition at line 107 of file SemiAnalyticalIncompressibleFluidModel.h.