|
| TypeVector () |
| 空构造函数。将向量初始化为 LIBMESH_DIM 维中的零向量。 更多...
|
|
template<typename T2 > |
| TypeVector (const TypeVector< T2 > &p) |
| 复制构造函数。 更多...
|
|
| TypeVector (const TypeVector &p)=default |
| 用于特殊情况的复制构造函数。 更多...
|
|
| ~TypeVector ()=default |
| 析构函数。 更多...
|
|
template<typename T2 > |
void | assign (const TypeVector< T2 > &) |
| 在不创建临时对象的情况下将向量赋值给该向量。 更多...
|
|
template<typename Scalar > |
boostcopy::enable_if_c
< ScalarTraits< Scalar >
::value, TypeVector & >::type | operator= (const Scalar &libmesh_dbg_var(p)) |
| 赋值操作符,用于将标量值赋给该向量以清零。 更多...
|
|
const T & | operator() (const unsigned int i) const |
| 返回向量中的第 i 个分量的常量引用。 更多...
|
|
const T & | slice (const unsigned int i) const |
|
T & | operator() (const unsigned int i) |
| 返回向量中的第 i 个分量的可写引用。 更多...
|
|
T & | slice (const unsigned int i) |
|
template<typename T2 > |
TypeVector< typename
CompareTypes< T, T2 >
::supertype > | operator+ (const TypeVector< T2 > &) const |
| 向量相加。 更多...
|
|
template<typename T2 > |
const TypeVector< T > & | operator+= (const TypeVector< T2 > &) |
| 向量相加。 更多...
|
|
template<typename T2 > |
TypeVector< typename
CompareTypes< T, T2 >
::supertype > | operator- (const TypeVector< T2 > &) const |
| 从另一个向量中减去该向量。 更多...
|
|
template<typename T2 > |
const TypeVector< T > & | operator-= (const TypeVector< T2 > &) |
| 从该向量中减去另一个向量。 更多...
|
|
template<typename T2 > |
void | subtract (const TypeVector< T2 > &) |
| 从另一个向量中减去该向量,不创建临时对象。 更多...
|
|
template<typename T2 > |
void | subtract_scaled (const TypeVector< T2 > &, const T &) |
| 从该向量中减去另一个向量的缩放值,不创建临时对象。 更多...
|
|
TypeVector< T > | operator- () const |
| 返回该向量的相反向量的副本。 更多...
|
|
template<typename Scalar > |
boostcopy::enable_if_c
< ScalarTraits< Scalar >
::value, TypeVector< typename
CompareTypes< T, Scalar >
::supertype > >::type | operator* (const Scalar &) const |
| 将该向量乘以标量值。 更多...
|
|
const TypeVector< T > & | operator*= (const T &) |
| 将该向量乘以标量值。 更多...
|
|
template<typename Scalar > |
boostcopy::enable_if_c
< ScalarTraits< Scalar >
::value, TypeVector< typename
CompareTypes< T, Scalar >
::supertype > >::type | operator/ (const Scalar &) const |
| 将该向量的每个分量除以标量值。 更多...
|
|
const TypeVector< T > & | operator/= (const T &) |
| 将该向量的每个分量除以标量值。 更多...
|
|
template<typename T2 > |
CompareTypes< T, T2 >::supertype | operator* (const TypeVector< T2 > &) const |
| 计算该向量与另一个向量的点积。 更多...
|
|
template<typename T2 > |
CompareTypes< T, T2 >::supertype | contract (const TypeVector< T2 > &) const |
| 返回 TypeVector::operator*() 的结果。 更多...
|
|
template<typename T2 > |
TypeVector< typename
CompareTypes< T, T2 >
::supertype > | cross (const TypeVector< T2 > &v) const |
| 计算该向量与另一个向量的叉积。 更多...
|
|
TypeVector< T > | unit () const |
| 返回指向该向量方向的单位向量。 更多...
|
|
auto | norm () const -> decltype(std::norm(T())) |
| 返回向量的模,即元素平方和的平方根。 更多...
|
|
auto | norm_sq () const -> decltype(std::norm(T())) |
| 返回向量的模的平方,即元素模的平方和。 更多...
|
|
bool | is_zero () const |
| 判断向量的所有值是否为零。 更多...
|
|
void | zero () |
| 将向量的所有分量设置为零。 更多...
|
|
bool | relative_fuzzy_equals (const TypeVector< T > &rhs, Real tol=TOLERANCE) const |
| 判断两个向量是否在相对容差 tol 内相等。 更多...
|
|
bool | absolute_fuzzy_equals (const TypeVector< T > &rhs, Real tol=TOLERANCE) const |
| 判断两个向量是否在绝对容差 tol 内相等。 更多...
|
|
bool | operator== (const TypeVector< T > &rhs) const |
| 判断两个向量的每个分量是否相等。 更多...
|
|
bool | operator!= (const TypeVector< T > &rhs) const |
| 判断两个向量是否不相等。 更多...
|
|
bool | operator< (const TypeVector< T > &rhs) const |
| 判断该向量是否小于另一个向量。 更多...
|
|
bool | operator<= (const TypeVector< T > &rhs) const |
| 判断该向量是否小于等于另一个向量。 更多...
|
|
bool | operator> (const TypeVector< T > &rhs) const |
| 判断该向量是否大于另一个向量。 更多...
|
|
bool | operator>= (const TypeVector< T > &rhs) const |
| 判断该向量是否大于等于另一个向量。 更多...
|
|
void | print (std::ostream &os=libMesh::out) const |
| 格式化输出,默认输出到 libMesh::out 流。 更多...
|
|
void | write_unformatted (std::ostream &out_stream, const bool newline=true) const |
| 无格式输出到流 out。只是将向量的元素用空格分隔打印出来。 默认情况下,还会打印一个换行符,但可以通过 newline 参数来控制这个行为。 更多...
|
|
template<> |
bool | operator< (const TypeVector< Complex > &rhs) const |
|
template<> |
bool | operator<= (const TypeVector< Complex > &rhs) const |
|
template<> |
bool | operator> (const TypeVector< Complex > &rhs) const |
|
template<> |
bool | operator>= (const TypeVector< Complex > &rhs) const |
|
|
| TypeVector (const T &x, const T &y=0, const T &z=0) |
| 从类型 T 构造向量。默认情况下,将更高维度的分量设置为零。 更多...
|
|
template<typename Scalar1 , typename Scalar2 , typename Scalar3 > |
| TypeVector (typename boostcopy::enable_if_c< ScalarTraits< Scalar1 >::value, const Scalar1 >::type &x, typename boostcopy::enable_if_c< ScalarTraits< Scalar2 >::value, const Scalar2 >::type &y=0, typename boostcopy::enable_if_c< ScalarTraits< Scalar3 >::value, const Scalar3 >::type &z=0) |
| 从标量值构造向量。默认情况下,将更高维度的分量设置为零。 更多...
|
|
template<typename Scalar > |
| TypeVector (const Scalar &x, typename boostcopy::enable_if_c< ScalarTraits< Scalar >::value, const Scalar >::type *sfinae=nullptr) |
| 从标量值构造向量。将更高维度的分量设置为零。 更多...
|
|
template<typename T>
class libMesh::TypeVector< T >
该类定义了一个在 LIBMESH_DIM
维度空间中类型为 T 的向量。
T 可以是实数或复数。请使用派生类型之一,如 Point
或 Node。
- 作者
- Benjamin S. Kirk
- 日期
- 2003
在文件 tensor_tools.h 第 34 行定义.