source: issm/trunk-jpl/src/c/classes/objects/Materials/Matice.h@ 13414

Last change on this file since 13414 was 13414, checked in by Mathieu Morlighem, 12 years ago

CHG: clean-up removed MyRank which is not used anymore, and removed IssmBool

File size: 2.6 KB
Line 
1/*!\file Matice.h
2 * \brief: header file for matice object
3 */
4
5#ifndef MATICE_H_
6#define MATICE_H_
7
8/*Headers:*/
9/*{{{*/
10#include "./Material.h"
11class IoModel;
12/*}}}*/
13
14class Matice: public Material{
15
16 private:
17 int mid;
18 Hook *helement;
19
20 public:
21 /*Matice constructors, destructors: {{{*/
22 Matice();
23 Matice(int mid,int i, IoModel* iomodel);
24 ~Matice();
25 /*}}}*/
26 /*Object virtual functions definitions:{{{ */
27 void Echo();
28 void DeepEcho();
29 int Id();
30 int ObjectEnum();
31 Object* copy();
32 /*}}}*/
33 /*Update virtual functions definitions: {{{*/
34 void InputUpdateFromVector(IssmDouble* vector, int name, int type);
35 void InputUpdateFromVector(int* vector, int name, int type);
36 void InputUpdateFromVector(bool* vector, int name, int type);
37 void InputUpdateFromMatrixDakota(IssmDouble* matrix, int nrow, int ncols, int name, int type);
38 void InputUpdateFromVectorDakota(IssmDouble* vector, int name, int type);
39 void InputUpdateFromVectorDakota(int* vector, int name, int type);
40 void InputUpdateFromVectorDakota(bool* vector, int name, int type);
41 void InputUpdateFromConstant(IssmDouble constant, int name);
42 void InputUpdateFromConstant(int constant, int name);
43 void InputUpdateFromConstant(bool constant, int name);
44 void InputUpdateFromSolution(IssmDouble* solution);
45 void InputUpdateFromIoModel(int index, IoModel* iomodel);
46 /*}}}*/
47 /*Material virtual functions resolution: {{{*/
48 void InputDuplicate(int original_enum,int new_enum);
49 void Configure(Elements* elements);
50 void GetVectorFromInputs(Vector<IssmDouble>* vector,int input_enum);
51 void SetCurrentConfiguration(Elements* elements,Loads* loads,Nodes* nodes,Vertices* vertices,Materials* materials,Parameters* parameters);
52 void GetViscosity2d(IssmDouble* pviscosity, IssmDouble* pepsilon);
53 void GetViscosity3d(IssmDouble* pviscosity3d, IssmDouble* pepsilon);
54 void GetViscosity3dStokes(IssmDouble* pviscosity3d, IssmDouble* epsilon);
55 void GetViscosityComplement(IssmDouble* pviscosity_complement, IssmDouble* pepsilon);
56 void GetViscosityZComplement(IssmDouble*, IssmDouble*){_error_("not supported");};
57 void GetViscosityDerivativeEpsSquare(IssmDouble* pmu_prime, IssmDouble* pepsilon);
58 void GetViscosity2dDerivativeEpsSquare(IssmDouble* pmu_prime, IssmDouble* pepsilon);
59 IssmDouble GetA();
60 IssmDouble GetB();
61 IssmDouble GetBbar();
62 IssmDouble GetZ(){_error_("not supported");};
63 IssmDouble GetZbar(){_error_("not supported");};
64 IssmDouble GetN();
65 bool IsInput(int name);
66 /*}}}*/
67};
68
69#endif /* _MATICE_H_ */
Note: See TracBrowser for help on using the repository browser.