source: issm/trunk/src/c/objects/Numerics/ElementMatrix.h@ 5873

Last change on this file since 5873 was 5873, checked in by Mathieu Morlighem, 15 years ago

Added CreateKMatrixDiagnosticMacAyealPattyn

File size: 1.6 KB
Line 
1/*!\file: ElementMatrix.h
2 * \brief container for information needed to plug element matrix generated by elements
3 * into the Kff and Kfs global matrices.
4 * This object will hold the element matrix on the g-set, the local as well as global
5 * dof lists in the f and s sets.
6 */
7
8#ifndef _ELEMENT_MATRIX_H_
9#define _ELEMENT_MATRIX_H_
10
11/*Headers:*/
12/*{{{1*/
13#include "../Object.h"
14#include "../../toolkits/toolkits.h"
15/*}}}*/
16
17class ElementMatrix{
18
19 public:
20
21 int nrows;
22 int ncols;
23 bool square;
24 bool kff;
25 double* values;
26
27 //gset
28 int* gglobaldoflist;
29
30 /*row wise: */
31 //fset
32 int row_fsize;
33 int* row_flocaldoflist;
34 int* row_fglobaldoflist;
35 //sset
36 int row_ssize;
37 int* row_slocaldoflist;
38 int* row_sglobaldoflist;
39
40 /*column wise: */
41 //fset
42 int col_fsize;
43 int* col_flocaldoflist;
44 int* col_fglobaldoflist;
45 //sset
46 int col_ssize;
47 int* col_slocaldoflist;
48 int* col_sglobaldoflist;
49
50 /*ElementMatrix constructors, destructors {{{1*/
51 ElementMatrix();
52 ElementMatrix(ElementMatrix* Ke1,ElementMatrix* Ke2);
53 ElementMatrix(ElementMatrix* Ke1,ElementMatrix* Ke2,ElementMatrix* Ke3);
54 ElementMatrix(bool square,int* gglobaldoflist,int gsize);
55 ElementMatrix(bool square,int* gglobaldoflist,int gsize,int* flocaldoflist,int* fglobaldoflist,int fsize,int* slocaldoflist,int* sglobaldoflist,int ssize);
56 ~ElementMatrix();
57 /*}}}*/
58 /*ElementMatrix specific routines {{{1*/
59 void AddValues(double* Ke_gg);
60 void AddToGlobal(Mat Kgg, Mat Kff, Mat Kfs);
61 void Echo(void);
62 void Init(ElementMatrix* Ke);
63 /*}}}*/
64};
65#endif //#ifndef _ELEMENT_MATRIX_H_
66
Note: See TracBrowser for help on using the repository browser.