CArl
Code Arlequin / C++ implementation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Order4Tensor Class Reference

#include <anisotropic_elasticity_cubic_sym.h>

Public Member Functions

 Order4Tensor ()
 
 Order4Tensor (int dim)
 
void set_dimension (int dim)
 
libMesh::Real & operator() (unsigned int iii, unsigned int jjj, unsigned int kkk, unsigned int lll)
 

Public Attributes

std::vector< libMesh::Real > vector
 

Detailed Description

Definition at line 13 of file anisotropic_elasticity_cubic_sym.h.

Constructor & Destructor Documentation

Order4Tensor::Order4Tensor ( )
inline

Definition at line 21 of file anisotropic_elasticity_cubic_sym.h.

21  :
22  m_dim { 0 },
23  m_idx { 0 }
24  {
25 
26  };
Order4Tensor::Order4Tensor ( int  dim)
inline

Definition at line 28 of file anisotropic_elasticity_cubic_sym.h.

28  :
29  m_idx { 0 }
30  {
31  m_dim = dim;
32  set_dimension(dim);
33  };

Member Function Documentation

libMesh::Real & Order4Tensor::operator() ( unsigned int  iii,
unsigned int  jjj,
unsigned int  kkk,
unsigned int  lll 
)
inline

Definition at line 51 of file anisotropic_elasticity_cubic_sym.h.

52 {
53  m_idx = m_idx_mult[0] * iii
54  + m_idx_mult[1] * jjj
55  + m_idx_mult[2] * kkk
56  + m_idx_mult[3] * lll;
57  return vector[m_idx];
58 }
std::vector< libMesh::Real > vector
void Order4Tensor::set_dimension ( int  dim)
inline

Definition at line 37 of file anisotropic_elasticity_cubic_sym.h.

38  {
39  m_dim = dim;
40  m_idx_mult.resize(4);
41  vector.resize(std::pow(m_dim,4),0);
42 
43  for(int iii = 0; iii < 4; ++iii)
44  {
45  m_idx_mult[iii] = std::pow(m_dim,iii);
46  }
47  }
std::vector< libMesh::Real > vector

Member Data Documentation

std::vector<libMesh::Real> Order4Tensor::vector

Definition at line 33 of file anisotropic_elasticity_cubic_sym.h.


The documentation for this class was generated from the following file: