ESyS-Particle
4.0.1
Main Page
Related Pages
Namespaces
Classes
Files
File List
Model
AdhesiveFriction.h
1
2
// //
3
// Copyright (c) 2003-2011 by The University of Queensland //
4
// Earth Systems Science Computational Centre (ESSCC) //
5
// http://www.uq.edu.au/esscc //
6
// //
7
// Primary Business: Brisbane, Queensland, Australia //
8
// Licensed under the Open Software License version 3.0 //
9
// http://www.opensource.org/licenses/osl-3.0.php //
10
// //
12
13
#ifndef __ADHESIVEFRICTION_H
14
#define __ADHESIVEFRICTION_H
15
16
#include "Model/FrictionInteraction.h"
17
21
class
CAdhesiveFrictionIGP
:
public
AIGParam
22
{
23
public
:
24
virtual
std::string getTypeString()
const
{
return
"AdhesiveFriction"
;}
25
26
void
setTimeStepSize(
double
timeStepSize)
27
{
28
this->dt = timeStepSize;
29
}
30
31
double
k;
32
double
mu;
33
double
k_s;
34
double
dt;
35
double
r_cut;
36
};
37
41
class
CAdhesiveFriction
:
public
CFrictionInteraction
42
{
43
public
:
// types
44
typedef
CAdhesiveFrictionIGP
ParameterType
;
45
46
typedef
double (
CAdhesiveFriction
::* ScalarFieldFunction)()
const
;
47
typedef
pair<bool,double> (
CAdhesiveFriction
::* CheckedScalarFieldFunction)()
const
;
48
typedef
Vec3
(
CAdhesiveFriction
::* VectorFieldFunction)()
const
;
49
50
protected
:
51
double
m_r_cut;
52
double
m_r_cut_h;
53
54
public
:
55
CAdhesiveFriction
();
56
CAdhesiveFriction
(
CParticle
*,
CParticle
*,
const
CAdhesiveFrictionIGP
&);
57
virtual
~CAdhesiveFriction
();
58
59
static
string
getType() {
return
"AdhesiveFriction"
;};
60
61
virtual
void
calcForces
();
62
63
friend
class
TML_PackedMessageInterface
;
64
};
65
66
#endif // __ADHESIVEFRICTION_H
Generated on Mon Jun 4 2012 22:48:17 for ESyS-Particle by
1.8.1