PeriDyno 1.0.0
Loading...
Searching...
No Matches
GhostFluid.h
Go to the documentation of this file.
1#pragma once
2#include "ParticleFluid.h"
3#include "GhostParticles.h"
4
5namespace dyno
6{
14 template<typename TDataType>
15 class GhostFluid : public ParticleFluid<TDataType>
16 {
17 DECLARE_TCLASS(GhostFluid, TDataType)
18 public:
19 typedef typename TDataType::Real Real;
20 typedef typename TDataType::Coord Coord;
21
23 ~GhostFluid() override {};
24
28 DEF_ARRAY_STATE(Coord, PositionMerged, DeviceType::GPU, "Particle position");
29
33 DEF_ARRAY_STATE(Coord, VelocityMerged, DeviceType::GPU, "Particle velocity");
34
38 DEF_ARRAY_STATE(Attribute, AttributeMerged, DeviceType::GPU, "Particle attribute");
39
40 DEF_ARRAY_STATE(Coord, NormalMerged, DeviceType::GPU, "Particle normal");
41
42
43 public:
44 DEF_NODE_PORT(GhostParticles<TDataType>, BoundaryParticles, "Initial boundary ghost particles");
45
46 protected:
47 void resetStates() override;
48
49 void preUpdateStates() override;
50
51 void postUpdateStates() override;
52
53 private:
55 };
56}
#define DECLARE_TCLASS(name, T1)
Definition Object.h:87
particle attribute 0x00000000: [31-30]material; [29]motion; [28]Dynamic; [27-8]undefined yet,...
Definition Attribute.h:26
void preUpdateStates() override
void resetStates() override
~GhostFluid() override
Definition GhostFluid.h:23
DEF_ARRAY_STATE(Coord, NormalMerged, DeviceType::GPU, "Particle normal")
TDataType::Coord Coord
Definition GhostFluid.h:20
void constructMergedArrays()
DEF_ARRAY_STATE(Attribute, AttributeMerged, DeviceType::GPU, "Particle attribute")
Particle force.
void postUpdateStates() override
TDataType::Real Real
Definition GhostFluid.h:19
DEF_ARRAY_STATE(Coord, VelocityMerged, DeviceType::GPU, "Particle velocity")
Particle velocity.
DEF_NODE_PORT(GhostParticles< TDataType >, BoundaryParticles, "Initial boundary ghost particles")
DEF_ARRAY_STATE(Coord, PositionMerged, DeviceType::GPU, "Particle position")
Particle position for both the fluid and solid.
This is an implementation of AdditiveCCD based on peridyno.
Definition Array.h:25