Ice Sheet System Model  4.18
Code documentation
SpcDynamic.h
Go to the documentation of this file.
1 
5 #ifndef _SPCDynamic_H_
6 #define _SPCDynamic_H_
7 
8 /*Headers:*/
9 /*{{{*/
10 #include "../../datastructures/datastructures.h"
11 /*}}}*/
12 
13 class SpcDynamic: public Constraint{
14 
15  private:
16  int id;
17  int nodeid;
18  int dof;
19  IssmDouble value; /*value */
20  bool isset;
22  bool penalty; /*Is this a penalty constraint */
23 
24  public:
25 
26  /*SpcDynamic constructors, destructors*/
27  SpcDynamic();
28  SpcDynamic(int id_in,int nodeid, int dof,int analysis_type);
29  ~SpcDynamic();
30 
31  /*Object virtual functions definitions*/
32  Object *copy();
33  void DeepEcho();
34  void Echo();
35  int Id();
36  void Marshall(char** pmarshalled_data,int* pmarshalled_data_size, int marshall_direction);
37  int ObjectEnum();
38 
39  /*Constraint virtual functions definitions*/
40  void ActivatePenaltyMethod(void);
41  void ConstrainNode(Nodes* nodes,Parameters* parameters);
42  void PenaltyDofAndValue(int* dof,IssmDouble* value,Nodes* nodes,Parameters* parameters){_error_("not implemented yet");};
43  void InputUpdateFromVectorDakota(IssmDouble* vector,Nodes* nodes,int name,int type){_error_("not implemented yet");};
44 
45  /*SpcDynamic management*/
46  int GetDof();
47  int GetNodeId();
49  void SetDynamicConstraint(Nodes *nodes,IssmDouble *yg_serial);
50 
51 };
52 
53 #endif /* _SPCStatic_H_*/
SpcDynamic::ConstrainNode
void ConstrainNode(Nodes *nodes, Parameters *parameters)
Definition: SpcDynamic.cpp:99
SpcDynamic::nodeid
int nodeid
Definition: SpcDynamic.h:17
IssmDouble
double IssmDouble
Definition: types.h:37
Nodes
Declaration of Nodes class.
Definition: Nodes.h:19
SpcDynamic::~SpcDynamic
~SpcDynamic()
Definition: SpcDynamic.cpp:33
Parameters
Declaration of Parameters class.
Definition: Parameters.h:18
SpcDynamic::Id
int Id()
Definition: SpcDynamic.cpp:71
SpcDynamic::PenaltyDofAndValue
void PenaltyDofAndValue(int *dof, IssmDouble *value, Nodes *nodes, Parameters *parameters)
Definition: SpcDynamic.h:42
SpcDynamic::GetNodeId
int GetNodeId()
Definition: SpcDynamic.cpp:120
SpcDynamic::value
IssmDouble value
Definition: SpcDynamic.h:19
Object
Definition: Object.h:13
SpcDynamic::dof
int dof
Definition: SpcDynamic.h:18
SpcDynamic::Echo
void Echo()
Definition: SpcDynamic.cpp:59
SpcDynamic::Marshall
void Marshall(char **pmarshalled_data, int *pmarshalled_data_size, int marshall_direction)
Definition: SpcDynamic.cpp:73
SpcDynamic::copy
Object * copy()
Definition: SpcDynamic.cpp:39
SpcDynamic::ObjectEnum
int ObjectEnum()
Definition: SpcDynamic.cpp:87
SpcDynamic
Definition: SpcDynamic.h:13
SpcDynamic::SpcDynamic
SpcDynamic()
Definition: SpcDynamic.cpp:16
SpcDynamic::ActivatePenaltyMethod
void ActivatePenaltyMethod(void)
Definition: SpcDynamic.cpp:95
SpcDynamic::GetDof
int GetDof()
Definition: SpcDynamic.cpp:116
SpcDynamic::GetValue
IssmDouble GetValue()
Definition: SpcDynamic.cpp:125
_error_
#define _error_(StreamArgs)
Definition: exceptions.h:49
SpcDynamic::DeepEcho
void DeepEcho()
Definition: SpcDynamic.cpp:53
SpcDynamic::InputUpdateFromVectorDakota
void InputUpdateFromVectorDakota(IssmDouble *vector, Nodes *nodes, int name, int type)
Definition: SpcDynamic.h:43
Constraint
Definition: Constraint.h:17
SpcDynamic::penalty
bool penalty
Definition: SpcDynamic.h:22
SpcDynamic::isset
bool isset
Definition: SpcDynamic.h:20
SpcDynamic::analysis_type
int analysis_type
Definition: SpcDynamic.h:21
SpcDynamic::SetDynamicConstraint
void SetDynamicConstraint(Nodes *nodes, IssmDouble *yg_serial)
Definition: SpcDynamic.cpp:131
SpcDynamic::id
int id
Definition: SpcDynamic.h:16