source: issm/trunk-jpl/src/c/objects/Numerics/ElementMatrix.h@ 11322

Last change on this file since 11322 was 11322, checked in by Mathieu Morlighem, 13 years ago

Added Newton's method for Pattyn, parallel only for now, to be improved

File size: 1.7 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#include "../../EnumDefinitions/EnumDefinitions.h"
16class Node;
17/*}}}*/
18
19class ElementMatrix{
20
21 public:
22
23 int nrows;
24 int ncols;
25 bool dofsymmetrical;
26 double* values;
27
28 //gset
29 int* gglobaldoflist;
30
31 /*row wise: */
32 //fset
33 int row_fsize;
34 int* row_flocaldoflist;
35 int* row_fglobaldoflist;
36 //sset
37 int row_ssize;
38 int* row_slocaldoflist;
39 int* row_sglobaldoflist;
40
41 /*column wise: */
42 //fset
43 int col_fsize;
44 int* col_flocaldoflist;
45 int* col_fglobaldoflist;
46 //sset
47 int col_ssize;
48 int* col_slocaldoflist;
49 int* col_sglobaldoflist;
50
51 /*ElementMatrix constructors, destructors {{{1*/
52 ElementMatrix();
53 ElementMatrix(ElementMatrix* Ke);
54 ElementMatrix(ElementMatrix* Ke1,ElementMatrix* Ke2);
55 ElementMatrix(ElementMatrix* Ke1,ElementMatrix* Ke2,ElementMatrix* Ke3);
56 ElementMatrix(Node** nodes,int numnodes,Parameters* parameters,int approximation=NoneApproximationEnum);
57 ~ElementMatrix();
58 /*}}}*/
59 /*ElementMatrix specific routines {{{1*/
60 void AddToGlobal(Mat Kff, Mat Kfs);
61 void AddToGlobal(Mat Jff);
62 void Echo(void);
63 void CheckConsistency(void);
64 void Transpose(void);
65 void Init(ElementMatrix* Ke);
66 void SetDiag(double scalar);
67 /*}}}*/
68};
69#endif //#ifndef _ELEMENT_MATRIX_H_
Note: See TracBrowser for help on using the repository browser.