ESyS-Particle
2.3
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
InteractionGroup.h
Go to the documentation of this file.
1
// //
3
// Copyright (c) 2003-2014 by The University of Queensland //
4
// Centre for Geoscience Computing //
5
// http://earth.uq.edu.au/centre-geoscience-computing //
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 __INTERACTIONGROUP_H
14
#define __INTERACTIONGROUP_H
15
16
// -- project includes --
17
#include "
Model/IGParam.h
"
18
#include "
Model/InteractionParam.h
"
19
20
// -- STL includes --
21
#include <set>
22
#include <utility>
23
24
using
std::set;
25
using
std::pair;
26
27
class
AParallelInteractionStorage
;
28
template
<
class
T>
class
ParallelParticleArray
;
29
33
template
<
class
T>
34
class
AInteractionGroup
35
{
36
public
:
37
virtual
~AInteractionGroup
(){};
38
39
virtual
void
Update
(
ParallelParticleArray<T>
*)=0;
40
virtual
void
calcForces
()=0;
41
42
virtual
void
setTimeStepSize
(
double
dt) = 0;
43
};
44
53
template
<
class
T>
54
class
APairInteractionGroup
:
public
AInteractionGroup
<T>
55
{
56
protected
:
63
set<pair<int,int> >
m_set
;
64
unsigned
int
m_update_timestamp
;
65
66
public
:
67
bool
isIn
(
int
,
int
);
68
virtual
void
setExIG
(
AParallelInteractionStorage
* eg){};
69
};
70
71
#include "
Model/InteractionGroup.hpp
"
72
73
#endif //__INTERACTIONGROUP_H
APairInteractionGroup::m_update_timestamp
unsigned int m_update_timestamp
Definition:
InteractionGroup.h:64
APairInteractionGroup::isIn
bool isIn(int, int)
Definition:
InteractionGroup.hpp:14
AInteractionGroup::setTimeStepSize
virtual void setTimeStepSize(double dt)=0
APairInteractionGroup::m_set
set< pair< int, int > > m_set
Definition:
InteractionGroup.h:63
AInteractionGroup::calcForces
virtual void calcForces()=0
InteractionGroup.hpp
ParallelParticleArray
parrallel particle storage array with neighborsearch and variable exchange
Definition:
SubLattice.h:61
AInteractionGroup
Abstract base class for a group of interactions.
Definition:
InteractionGroup.h:34
AParallelInteractionStorage
abstract base class for parallel interaction storage array
Definition:
pi_storage.h:44
InteractionParam.h
IGParam.h
AInteractionGroup::~AInteractionGroup
virtual ~AInteractionGroup()
Definition:
InteractionGroup.h:37
APairInteractionGroup
Abstract base class for a group of pair interactions.
Definition:
InteractionGroup.h:54
AInteractionGroup::Update
virtual void Update(ParallelParticleArray< T > *)=0
APairInteractionGroup::setExIG
virtual void setExIG(AParallelInteractionStorage *eg)
Definition:
InteractionGroup.h:68
Model
InteractionGroup.h
Generated on Mon Sep 15 2014 16:24:08 for ESyS-Particle by
1.8.8