Ice Sheet System Model  4.18
Code documentation
Load.h
Go to the documentation of this file.
1 
7 #ifndef _LOAD_H_
8 #define _LOAD_H_
9 
10 /*Headers:*/
11 class Node;
12 template <class doublematrix> class Matrix;
13 template <class doubletype> class Vector;
14 class Elements;
15 class Loads;
16 class Nodes;
17 class Vertices;
18 class Materials;
19 class Parameters;
20 #include "../../datastructures/datastructures.h"
21 
22 class Load: public Object{
23 
24  public:
25  virtual ~Load(){};
26  virtual void Configure(Elements* elements,Loads* loads,Nodes* nodes,Vertices* vertices,Materials* materials,Parameters* parameters)=0;
29  virtual void CreatePVector(Vector<IssmDouble>* pf)=0;
30  virtual void GetNodesLidList(int* lidlist)=0;
31  virtual void GetNodesSidList(int* sidlist)=0;
32  virtual int GetNumberOfNodes(void)=0;
33  virtual bool IsPenalty(void)=0;
37  virtual void ResetHooks()=0;
38  virtual void SetCurrentConfiguration(Elements* elements,Loads* loads,Nodes* nodes,Vertices* vertices,Materials* materials,Parameters* parameters)=0;
39  virtual void SetwiseNodeConnectivity(int* d_nz,int* o_nz,Node* node,bool* flags,int* flagsindices,int set1_enum,int set2_enum)=0;
40 };
41 #endif
Matrix
Definition: Matrix.h:27
Vertices
Declaration of Vertices class.
Definition: Vertices.h:15
IssmDouble
double IssmDouble
Definition: types.h:37
Nodes
Declaration of Nodes class.
Definition: Nodes.h:19
Load::GetNodesSidList
virtual void GetNodesSidList(int *sidlist)=0
Parameters
Declaration of Parameters class.
Definition: Parameters.h:18
Load::CreateKMatrix
virtual void CreateKMatrix(Matrix< IssmDouble > *Kff, Matrix< IssmDouble > *Kfs)=0
Elements
Declaration of Elements class.
Definition: Elements.h:17
Load::SetwiseNodeConnectivity
virtual void SetwiseNodeConnectivity(int *d_nz, int *o_nz, Node *node, bool *flags, int *flagsindices, int set1_enum, int set2_enum)=0
Load
Definition: Load.h:22
Load::~Load
virtual ~Load()
Definition: Load.h:25
Load::CreateJacobianMatrix
virtual void CreateJacobianMatrix(Matrix< IssmDouble > *Jff)=0
Object
Definition: Object.h:13
Materials
Declaration of Materials class.
Definition: Materials.h:16
Load::Configure
virtual void Configure(Elements *elements, Loads *loads, Nodes *nodes, Vertices *vertices, Materials *materials, Parameters *parameters)=0
Load::PenaltyCreatePVector
virtual void PenaltyCreatePVector(Vector< IssmDouble > *pf, IssmDouble kmax)=0
Load::SetCurrentConfiguration
virtual void SetCurrentConfiguration(Elements *elements, Loads *loads, Nodes *nodes, Vertices *vertices, Materials *materials, Parameters *parameters)=0
Load::GetNumberOfNodes
virtual int GetNumberOfNodes(void)=0
Load::CreatePVector
virtual void CreatePVector(Vector< IssmDouble > *pf)=0
Loads
Declaration of Loads class.
Definition: Loads.h:16
Node
Definition: Node.h:23
Load::PenaltyCreateKMatrix
virtual void PenaltyCreateKMatrix(Matrix< IssmDouble > *Kff, Matrix< IssmDouble > *Kfs, IssmDouble kmax)=0
Load::IsPenalty
virtual bool IsPenalty(void)=0
Load::GetNodesLidList
virtual void GetNodesLidList(int *lidlist)=0
Vector
Definition: Vector.h:25
Load::ResetHooks
virtual void ResetHooks()=0
Load::PenaltyCreateJacobianMatrix
virtual void PenaltyCreateJacobianMatrix(Matrix< IssmDouble > *Jff, IssmDouble kmax)=0