libmesh解析
本工作只是尝试解析原libmesh的代码,供学习使用
 全部  命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 
| 命名空间 | 函数
tensor_tools.h 文件参考

浏览源代码.

class  libMesh::TypeVector< T >
 该类定义了一个在 LIBMESH_DIM 维度空间中类型为 T 的向量。 更多...
 
class  libMesh::VectorValue< T >
 此类定义了LIBMESH_DIM维的实数或复数空间中的向量。 更多...
 
class  libMesh::TypeTensor< T >
 This class defines a tensor in LIBMESH_DIM dimensional space of type T. 更多...
 
class  libMesh::TensorValue< T >
 此类定义了LIBMESH_DIM维度的实数或复数空间中的张量。typedef RealTensorValue总是定义为实数值的张量, 而NumberTensorValue则根据库的配置定义为实数或复数值的张量。 更多...
 
class  libMesh::TypeNTensor< N, T >
 该类最终将定义一个在类型为T的LIBMESH_DIM维空间中的N阶张量。 更多...
 
struct  libMesh::TensorTools::IncrementRank< T >
 
struct  libMesh::TensorTools::IncrementRank< VectorValue< T > >
 
struct  libMesh::TensorTools::IncrementRank< TypeVector< T > >
 
struct  libMesh::TensorTools::IncrementRank< TypeTensor< T > >
 
struct  libMesh::TensorTools::IncrementRank< TensorValue< T > >
 
struct  libMesh::TensorTools::IncrementRank< TypeNTensor< N, T > >
 
struct  libMesh::TensorTools::DecrementRank< T >
 
struct  libMesh::TensorTools::DecrementRank< VectorValue< T > >
 
struct  libMesh::TensorTools::DecrementRank< TypeVector< T > >
 
struct  libMesh::TensorTools::DecrementRank< TensorValue< T > >
 
struct  libMesh::TensorTools::DecrementRank< TypeTensor< T > >
 
struct  libMesh::TensorTools::DecrementRank< TypeNTensor< N, T > >
 
struct  libMesh::TensorTools::MakeNumber< T >
 
struct  libMesh::TensorTools::MakeNumber< std::complex< T > >
 
struct  libMesh::TensorTools::MakeNumber< TypeVector< T > >
 
struct  libMesh::TensorTools::MakeNumber< VectorValue< T > >
 
struct  libMesh::TensorTools::MakeNumber< TypeTensor< T > >
 
struct  libMesh::TensorTools::MakeNumber< TensorValue< T > >
 
struct  libMesh::TensorTools::MakeNumber< TypeNTensor< N, T > >
 
struct  libMesh::TensorTools::MakeReal< T >
 
struct  libMesh::TensorTools::MakeReal< std::complex< T > >
 
struct  libMesh::TensorTools::MakeReal< TypeVector< T > >
 
struct  libMesh::TensorTools::MakeReal< VectorValue< T > >
 
struct  libMesh::TensorTools::MakeReal< TypeTensor< T > >
 
struct  libMesh::TensorTools::MakeReal< TensorValue< T > >
 
struct  libMesh::TensorTools::MakeReal< TypeNTensor< N, T > >
 
struct  libMesh::TensorTools::MathWrapperTraits< T >
 此辅助结构用于确定模板类是否是我们的数学结构之一, 例如TypeVector、TypeTensor及其后代 更多...
 
struct  libMesh::TensorTools::MathWrapperTraits< TypeVector< T > >
 此模板特化表示模板类型是TypeVector时为true 更多...
 
struct  libMesh::TensorTools::MathWrapperTraits< VectorValue< T > >
 此模板特化表示模板类型是VectorValue时为true 更多...
 
struct  libMesh::TensorTools::MathWrapperTraits< TypeTensor< T > >
 此模板特化表示模板类型是TypeTensor时为true 更多...
 
struct  libMesh::TensorTools::MathWrapperTraits< TensorValue< T > >
 此模板特化表示模板类型是TensorValue时为true 更多...
 
struct  libMesh::TensorTools::MathWrapperTraits< TypeNTensor< N, T > >
 此模板特化表示模板类型是TypeNTensor时为true 更多...
 
struct  libMesh::TensorTools::MakeBaseNumber< T, enable >
 此模板结构用于创建基础数值类型,支持标量类型。 如果模板类型不是标量类型,则不会创建基础数值类型。 更多...
 
struct  libMesh::TensorTools::MakeBaseNumber< T, typename std::enable_if< ScalarTraits< T >::value >::type >
 此模板特化表示对于标量类型,将使用MakeNumber来创建基础数值类型。 更多...
 
struct  libMesh::TensorTools::MakeBaseNumber< Wrapper< T >, typename std::enable_if< MathWrapperTraits< Wrapper< T > >::value >::type >
 此模板结构用于根据模板包装类型创建基础数值类型。 如果模板类型不是数学包装类型,则不会创建基础数值类型。 更多...
 
struct  libMesh::TensorTools::TensorTraits< T, Enable >
 此模板结构用于获取张量的特性,包括张量的秩。 默认情况下,它被断言为false,需要为特定类型进行特化。 更多...
 
struct  libMesh::TensorTools::TensorTraits< T, typename std::enable_if< ScalarTraits< T >::value >::type >
 此模板特化表示对于标量类型,张量秩为0。 更多...
 
struct  libMesh::TensorTools::TensorTraits< TypeVector< T > >
 此模板特化表示对于TypeVector类型,张量秩为1。 更多...
 
struct  libMesh::TensorTools::TensorTraits< VectorValue< T > >
 此模板特化表示对于VectorValue类型,张量秩为1。 更多...
 
struct  libMesh::TensorTools::TensorTraits< TypeTensor< T > >
 此模板特化表示对于TypeTensor类型,张量秩为2。 更多...
 
struct  libMesh::TensorTools::TensorTraits< TensorValue< T > >
 此模板特化表示对于TensorValue类型,张量秩为2。 更多...
 
struct  libMesh::TensorTools::TensorTraits< TypeNTensor< N, T > >
 此模板特化表示对于TypeNTensor类型,张量秩为N,其中N是模板参数。 更多...
 

命名空间

 libMesh
 The libMesh namespace provides an interface to certain functionality in the library.
 
 libMesh::TensorTools
 

函数

template<typename T , typename T2 >
boostcopy::enable_if_c
< ScalarTraits< T >::value
&&ScalarTraits< T2 >::value,
typename CompareTypes< T, T2 >
::supertype >::type 
libMesh::TensorTools::inner_product (const T &a, const T2 &b)
 
template<typename T , typename T2 >
CompareTypes< T, T2 >::supertype libMesh::TensorTools::inner_product (const TypeVector< T > &a, const TypeVector< T2 > &b)
 
template<typename T , typename T2 >
CompareTypes< T, T2 >::supertype libMesh::TensorTools::inner_product (const TypeTensor< T > &a, const TypeTensor< T2 > &b)
 
template<unsigned int N, typename T , typename T2 >
CompareTypes< T, T2 >::supertype libMesh::TensorTools::inner_product (const TypeNTensor< N, T > &a, const TypeNTensor< N, T2 > &b)
 
template<typename T >
libMesh::TensorTools::norm_sq (std::complex< T > a)
 
template<typename T >
auto libMesh::TensorTools::norm_sq (const T &a) -> decltype(std::norm(a))
 
template<typename T >
auto libMesh::TensorTools::norm_sq (const TypeVector< T > &a) -> decltype(std::norm(T()))
 
template<typename T >
auto libMesh::TensorTools::norm_sq (const VectorValue< T > &a) -> decltype(std::norm(T()))
 
template<typename T >
bool libMesh::TensorTools::is_zero (const T &a)
 
Number libMesh::TensorTools::curl_from_grad (const VectorValue< Number > &)
 
VectorValue< Number > libMesh::TensorTools::curl_from_grad (const TensorValue< Number > &grad)
 根据梯度计算矢量的旋度 更多...
 
TensorValue< Number > libMesh::TensorTools::curl_from_grad (const TypeNTensor< 3, Number > &)
 
Number libMesh::TensorTools::div_from_grad (const VectorValue< Number > &grad)
 虚拟函数。标量的散度未定义,但需要使ExactSolution编译通过 更多...
 
Number libMesh::TensorTools::div_from_grad (const TensorValue< Number > &grad)
 根据梯度计算矢量的散度 更多...
 
VectorValue< Number > libMesh::TensorTools::div_from_grad (const TypeNTensor< 3, Number > &)