source: issm/trunk/src/c/objects/Pengrid.h@ 483

Last change on this file since 483 was 483, checked in by Eric.Larour, 16 years ago

Finished thermal and melting elemnets, as well as thermal constraints

File size: 2.2 KB
Line 
1/*!\file Pengrid.h
2 * \brief: header file for pengrid object */
3
4#ifndef _PENGRID_H_
5#define _PENGRID_H_
6
7#include "./Load.h"
8#include "./Node.h"
9#include "./Element.h"
10#include "./Matpar.h"
11
12class Element;
13class Pengrid: public Load{
14
15 private:
16
17 int id;
18 int dof;
19 int active;
20 double penalty_offset;
21 int thermal_steadystate;
22
23 /*nodes: */
24 int node_id;
25 Node* node;
26 int node_offset;
27
28 int mparid;
29 Matpar* matpar;
30 int matpar_offset;
31
32 public:
33
34 Pengrid();
35 Pengrid(int id, int node_id,int mparid,int dof, int active, double penalty_offset,int thermal_steadystate);
36 ~Pengrid();
37
38 void Echo();
39 void Marshall(char** pmarshalled_dataset);
40 int MarshallSize();
41 char* GetName();
42 void Demarshall(char** pmarshalled_dataset);
43 int Enum();
44 int GetId();
45 int MyRank();
46 void DistributeNumDofs(int* numdofspernode,int analysis_type,int sub_analysis_type);
47 void Configure(void* elements,void* nodes,void* materials);
48 void CreateKMatrix(Mat Kgg,void* inputs,int analysis_type,int sub_analysis_type);
49 void CreatePVector(Vec pg, void* inputs, int analysis_type,int sub_analysis_type);
50 void UpdateFromInputs(void* inputs);
51 void PenaltyCreateKMatrix(Mat Kgg,void* inputs,double kmax,int analysis_type,int sub_analysis_type);
52 void PenaltyCreatePVector(Vec pg,void* inputs,double kmax,int analysis_type,int sub_analysis_type);
53 void PenaltyCreateKMatrixDiagnosticStokes(Mat Kgg,void* inputs,double kmax,int analysis_type,int sub_analysis_type);
54 void GetDofList(int* doflist,int* pnumberofdofspernode);
55 Object* copy();
56 void PenaltyCreateKMatrixThermal(Mat Kgg,void* vinputs,double kmax,int analysis_type,int sub_analysis_type);
57 void PenaltyCreateKMatrixMelting(Mat Kgg,void* vinputs,double kmax,int analysis_type,int sub_analysis_type);
58 void MatparConfiguration(Matpar* matpar,int matpar_offset);
59 void PenaltyCreatePVectorThermal(Vec pg, void* inputs, double kmax,int analysis_type,int sub_analysis_type);
60 void PenaltyCreatePVectorMelting(Vec pg, void* inputs, double kmax,int analysis_type,int sub_analysis_type);
61 void PenaltyConstrain(int* punstable,void* inputs,int analysis_type,int sub_analysis_type);
62};
63
64#endif /* _PENGRID_H_ */
65
66
Note: See TracBrowser for help on using the repository browser.