Ice Sheet System Model  4.18
Code documentation
SpcTransient.h
Go to the documentation of this file.
1 
5 #ifndef _SPCTRANSIENT_H_
6 #define _SPCTRANSIENT_H_
7 
8 /*Headers:*/
9 /*{{{*/
10 #include "../../datastructures/datastructures.h"
11 /*}}}*/
12 
13 class SpcTransient: public Constraint{
14 
15  private:
16  int id; /* id, to track it */
17  int nodeid; /*node id */
18  int dof; /*component */
19  IssmDouble *values; /*different values in time */
20  IssmDouble *times; /*different time steps */
21  int nsteps; /*number of time steps */
23  bool penalty; /*Is this a penalty constraint */
24 
25  public:
26 
27  /*SpcTransient constructors, destructors:{{{*/
28  SpcTransient();
30  ~SpcTransient();
31  /*}}}*/
32  /*Object virtual functions definitions:{{{ */
33  Object* copy();
34  void DeepEcho();
35  void Echo();
36  int Id();
37  void Marshall(char** pmarshalled_data,int* pmarshalled_data_size, int marshall_direction);
38  int ObjectEnum();
39  /*}}}*/
40  /*Constraint virtual functions definitions: {{{*/
41  void ActivatePenaltyMethod(void);
42  void ConstrainNode(Nodes* nodes,Parameters* parameters);
43  void PenaltyDofAndValue(int* dof,IssmDouble* value,Nodes* nodes,Parameters* parameters);
44  void InputUpdateFromVectorDakota(IssmDouble* vector,Nodes* nodes,int name,int type){_error_("not implemented yet");};
45  /*}}}*/
46  /*SpcTransient management:{{{ */
47  int GetDof();
48  int GetNodeId();
50  /*}}}*/
51 
52 };
53 
54 #endif /* _SPCTRANSIENT_H_ */
SpcTransient::Echo
void Echo()
Definition: SpcTransient.cpp:61
IssmDouble
double IssmDouble
Definition: types.h:37
Nodes
Declaration of Nodes class.
Definition: Nodes.h:19
SpcTransient::times
IssmDouble * times
Definition: SpcTransient.h:20
SpcTransient::SpcTransient
SpcTransient()
Definition: SpcTransient.cpp:16
SpcTransient::analysis_type
int analysis_type
Definition: SpcTransient.h:22
SpcTransient::nsteps
int nsteps
Definition: SpcTransient.h:21
Parameters
Declaration of Parameters class.
Definition: Parameters.h:18
SpcTransient::copy
Object * copy()
Definition: SpcTransient.cpp:53
SpcTransient::values
IssmDouble * values
Definition: SpcTransient.h:19
SpcTransient::dof
int dof
Definition: SpcTransient.h:18
SpcTransient::InputUpdateFromVectorDakota
void InputUpdateFromVectorDakota(IssmDouble *vector, Nodes *nodes, int name, int type)
Definition: SpcTransient.h:44
SpcTransient::GetDof
int GetDof()
Definition: SpcTransient.cpp:219
SpcTransient::Marshall
void Marshall(char **pmarshalled_data, int *pmarshalled_data_size, int marshall_direction)
Definition: SpcTransient.cpp:81
Object
Definition: Object.h:13
SpcTransient::~SpcTransient
~SpcTransient()
Definition: SpcTransient.cpp:45
SpcTransient::nodeid
int nodeid
Definition: SpcTransient.h:17
SpcTransient
Definition: SpcTransient.h:13
SpcTransient::Id
int Id()
Definition: SpcTransient.cpp:77
SpcTransient::GetNodeId
int GetNodeId()
Definition: SpcTransient.cpp:223
_error_
#define _error_(StreamArgs)
Definition: exceptions.h:49
SpcTransient::DeepEcho
void DeepEcho()
Definition: SpcTransient.cpp:57
SpcTransient::ObjectEnum
int ObjectEnum()
Definition: SpcTransient.cpp:102
Constraint
Definition: Constraint.h:17
SpcTransient::ConstrainNode
void ConstrainNode(Nodes *nodes, Parameters *parameters)
Definition: SpcTransient.cpp:114
SpcTransient::id
int id
Definition: SpcTransient.h:16
SpcTransient::penalty
bool penalty
Definition: SpcTransient.h:23
SpcTransient::ActivatePenaltyMethod
void ActivatePenaltyMethod(void)
Definition: SpcTransient.cpp:110
SpcTransient::PenaltyDofAndValue
void PenaltyDofAndValue(int *dof, IssmDouble *value, Nodes *nodes, Parameters *parameters)
Definition: SpcTransient.cpp:161
SpcTransient::GetValue
IssmDouble GetValue()
Definition: SpcTransient.cpp:228