source: issm/trunk-jpl/src/c/classes/Constraints/SpcDynamic.h@ 22200

Last change on this file since 22200 was 22200, checked in by erobo, 7 years ago

NEW: added inflow constraint as a possible variable for dakota, only working for MC for now

File size: 1.5 KB
RevLine 
[9286]1/*!\file SpcDynamic.h
2 * \brief: header file for spc object
3 */
4
5#ifndef _SPCDynamic_H_
6#define _SPCDynamic_H_
7
8/*Headers:*/
[12365]9/*{{{*/
[15067]10#include "../../datastructures/datastructures.h"
[9286]11/*}}}*/
12
13class SpcDynamic: public Constraint{
14
15 private:
[18388]16 int sid; /*! id, to track it */
17 int nodeid; /*!node id */
18 int dof; /*!component */
19 IssmDouble value; /*value */
20 bool isset;
21 int analysis_type;
22 bool penalty; /*Is this a penalty constraint */
[9286]23
24 public:
25
[18388]26 /*SpcDynamic constructors, destructors*/
[9286]27 SpcDynamic();
[9298]28 SpcDynamic(int sid,int nodeid, int dof,int analysis_type);
[9286]29 ~SpcDynamic();
[18388]30
31 /*Object virtual functions definitions*/
[18931]32 Object *copy();
33 void DeepEcho();
[18388]34 void Echo();
35 int Id();
[20810]36 void Marshall(char** pmarshalled_data,int* pmarshalled_data_size, int marshall_direction);
[18388]37 int ObjectEnum();
38
39 /*Constraint virtual functions definitions*/
[18931]40 void ActivatePenaltyMethod(void);
[18388]41 void ConstrainNode(Nodes* nodes,Parameters* parameters);
42 bool InAnalysis(int analysis_type);
43 void PenaltyDofAndValue(int* dof,IssmDouble* value,Nodes* nodes,Parameters* parameters){_error_("not implemented yet");};
[22200]44 void InputUpdateFromVectorDakota(IssmDouble* vector,Nodes* nodes,int name,int type){_error_("not implemented yet");};
[18388]45
46 /*SpcDynamic management*/
[18931]47 int GetDof();
[18388]48 int GetNodeId();
[12462]49 IssmDouble GetValue();
[18388]50 void SetDynamicConstraint(Nodes *nodes,IssmDouble *yg_serial);
[9286]51
52};
53
54#endif /* _SPCStatic_H_*/
Note: See TracBrowser for help on using the repository browser.