PeriDyno
0.9.2
Loading...
Searching...
No Matches
peridyno
src
Dynamics
Cuda
Peridynamics
Module
DamplingParticleIntegrator.h
Go to the documentation of this file.
1
#pragma once
2
#include "
Module/NumericalIntegrator.h
"
3
4
#include "
Collision/Attribute.h
"
5
6
namespace
dyno
{
7
template
<
typename
TDataType>
8
class
DamplingParticleIntegrator
:
public
NumericalIntegrator
9
{
10
DECLARE_TCLASS
(
DamplingParticleIntegrator
,
TDataType
)
11
12
public
:
13
typedef
typename
TDataType::Real
Real
;
14
typedef
typename
TDataType::Coord
Coord
;
15
16
DamplingParticleIntegrator
();
17
~DamplingParticleIntegrator
()
override
{};
18
19
void
begin
()
override
;
20
void
end
()
override
;
21
22
bool
integrate
()
override
;
23
24
bool
updateVelocity
() ;
25
bool
updatePosition
() ;
26
27
public
:
28
29
DEF_ARRAY_IN
(
Coord
,
ContactForce
, DeviceType::GPU,
"Contact force"
)
30
31
DEF_ARRAY_IN
(
Coord
,
DynamicForce
,
DeviceType
::
GPU
, "
Contact
force
");
32
33
DEF_ARRAY_IN
(
Coord
,
Norm
,
DeviceType
::
GPU
, "vertex norm");
34
35
DEF_VAR_IN
(
Real
,
Mu
, "friction parameter");
36
37
DEF_VAR_IN
(
Real
,
AirDisspation
, "
air
disspation
");
38
39
DEF_VAR_IN
(
Real
,
TimeStep
, "Time step size");
40
45
DEF_ARRAY_IN
(
Coord
, Position,
DeviceType
::
GPU
, "
Particle
position");
46
51
DEF_ARRAY_IN
(
Coord
,
Velocity
,
DeviceType
::
GPU
, "
Particle
velocity
");
52
57
DEF_ARRAY_IN
(
Attribute
,
Attribute
,
DeviceType
::
GPU
, "
Particle
attribute
");
58
63
DEF_ARRAY_IN
(
Coord
,
ForceDensity
,
DeviceType
::
GPU
, "
Force
density
on
each
particle
");
64
65
protected
:
66
void
updateImpl
()
override
;
67
68
};
69
70
IMPLEMENT_TCLASS
(
DamplingParticleIntegrator
,
TDataType
)
71
}
Attribute.h
DEF_VAR_IN
#define DEF_VAR_IN(T, name, desc)
Definition
DeclareField.h:27
DEF_ARRAY_IN
#define DEF_ARRAY_IN(T, name, device, desc)
Definition
DeclareField.h:101
NumericalIntegrator.h
DECLARE_TCLASS
#define DECLARE_TCLASS(name, T1)
Definition
Object.h:87
IMPLEMENT_TCLASS
#define IMPLEMENT_TCLASS(name, T1)
Definition
Object.h:103
dyno::ArrayMap
Definition
ArrayMap.h:25
dyno::Attribute
particle attribute 0x00000000: [31-30]material; [29]motion; [28]Dynamic; [27-8]undefined yet,...
Definition
Attribute.h:26
dyno::DamplingParticleIntegrator
Definition
DamplingParticleIntegrator.h:9
dyno::DamplingParticleIntegrator::updateVelocity
bool updateVelocity()
dyno::DamplingParticleIntegrator::end
void end() override
dyno::DamplingParticleIntegrator::integrate
bool integrate() override
dyno::DamplingParticleIntegrator::Coord
TDataType::Coord Coord
Definition
DamplingParticleIntegrator.h:14
dyno::DamplingParticleIntegrator::DamplingParticleIntegrator
DamplingParticleIntegrator()
dyno::DamplingParticleIntegrator::~DamplingParticleIntegrator
~DamplingParticleIntegrator() override
Definition
DamplingParticleIntegrator.h:17
dyno::DamplingParticleIntegrator::updateImpl
void updateImpl() override
dyno::DamplingParticleIntegrator::Real
TDataType::Real Real
Definition
DamplingParticleIntegrator.h:13
dyno::DamplingParticleIntegrator::updatePosition
bool updatePosition()
dyno::DamplingParticleIntegrator::begin
void begin() override
dyno::NumericalIntegrator
Definition
NumericalIntegrator.h:7
dyno
This is an implementation of AdditiveCCD based on peridyno.
Definition
Array.h:24
Generated by
1.9.8