tetra_element_linear.h File Reference
#include <stddef.h>
#include <stdio.h>
#include <map>
#include "mat_vec_fns.h"
#include "SimulationParams.h"
#include "FFEA_return_codes.h"
#include "RngStream.h"
#include "SecondOrderFunctions.h"
#include "PoissonMatrixQuadratic.h"
#include "MassMatrixLinear.h"
#include "MassMatrixQuadratic.h"

Go to the source code of this file.

Data Structures

class  tetra_element_linear
 
struct  tetra_element_linear::tetrahedron_gauss_point
 

Macros

#define NUM_NODES_LINEAR_TET   4
 
#define NUM_NODES_QUADRATIC_TET   10
 
#define BULK_VISCOUS_SUBMATRIX_DIAG(V, I)
 
#define BULK_VISCOUS_SUBMATRIX_OFFDIAG(V, I, J)
 
#define RAND(A, B)   ((A) + ((B)-(A))*(rng[thread_id].RandU01()))
 
#define DPSI1_DX   0
 
#define DPSI2_DX   1
 
#define DPSI3_DX   2
 
#define DPSI4_DX   3
 
#define DPSI1_DY   4
 
#define DPSI2_DY   5
 
#define DPSI3_DY   6
 
#define DPSI4_DY   7
 
#define DPSI1_DZ   8
 
#define DPSI2_DZ   9
 
#define DPSI3_DZ   10
 
#define DPSI4_DZ   11
 

Macro Definition Documentation

◆ BULK_VISCOUS_SUBMATRIX_DIAG

#define BULK_VISCOUS_SUBMATRIX_DIAG (   V,
 
)
Value:
V[I + 0][I + 0] = dpsi[I + 0] * dpsi[I + 0] * (A + B); \
V[I + 1][I + 1] = dpsi[I + 1] * dpsi[I + 1] * (A + B); \
V[I + 2][I + 2] = dpsi[I + 2] * dpsi[I + 2] * (A + B); \
V[I + 3][I + 3] = dpsi[I + 3] * dpsi[I + 3] * (A + B); \
V[I + 0][I + 1] = dpsi[I + 1] * dpsi[I + 0] * (A + B); \
V[I + 0][I + 2] = dpsi[I + 2] * dpsi[I + 0] * (A + B); \
V[I + 0][I + 3] = dpsi[I + 3] * dpsi[I + 0] * (A + B); \
V[I + 1][I + 2] = dpsi[I + 1] * dpsi[I + 2] * (A + B); \
V[I + 1][I + 3] = dpsi[I + 1] * dpsi[I + 3] * (A + B); \
V[I + 2][I + 3] = dpsi[I + 2] * dpsi[I + 3] * (A + B);

Referenced by tetra_element_linear::create_viscosity_matrix().

◆ BULK_VISCOUS_SUBMATRIX_OFFDIAG

#define BULK_VISCOUS_SUBMATRIX_OFFDIAG (   V,
  I,
 
)

◆ DPSI1_DX

◆ DPSI1_DY

◆ DPSI1_DZ

◆ DPSI2_DX

◆ DPSI2_DY

◆ DPSI2_DZ

◆ DPSI3_DX

◆ DPSI3_DY

◆ DPSI3_DZ

◆ DPSI4_DX

◆ DPSI4_DY

◆ DPSI4_DZ

◆ NUM_NODES_LINEAR_TET

#define NUM_NODES_LINEAR_TET   4

◆ NUM_NODES_QUADRATIC_TET

#define NUM_NODES_QUADRATIC_TET   10

◆ RAND

#define RAND (   A,
 
)    ((A) + ((B)-(A))*(rng[thread_id].RandU01()))