由两个向量的张量积构成的壳矩阵,即A = v*w^T。 更多...
#include <tensor_shell_matrix.h>
Public 成员函数 | |
TensorShellMatrix (const NumericVector< T > &v, const NumericVector< T > &w) | |
Constructor; 以两个向量的引用作为参数进行初始化。向量本身必须存储在其他地方。 更多... | |
virtual | ~TensorShellMatrix () |
Destructor(析构函数)。 更多... | |
virtual numeric_index_type | m () const override |
获取矩阵的行维度。 更多... | |
virtual numeric_index_type | n () const override |
获取矩阵的列维度。 更多... | |
virtual void | vector_mult (NumericVector< T > &dest, const NumericVector< T > &arg) const override |
将矩阵与参数arg相乘,并将结果存储在 更多... | |
virtual void | vector_mult_add (NumericVector< T > &dest, const NumericVector< T > &arg) const override |
将矩阵与参数arg相乘,然后将结果添加到 更多... | |
virtual void | get_diagonal (NumericVector< T > &dest) const override |
将矩阵的对角部分复制到dest中。 更多... | |
void | attach_dof_map (const DofMap &dof_map) |
附加要使用的 DofMap 指针。 更多... | |
virtual void | clear () |
清除对象,释放内存。 更多... | |
virtual void | init () |
初始化对象。 更多... | |
静态 Public 成员函数 | |
static std::unique_ptr < ShellMatrix< T > > | build (const Parallel::Communicator &comm, const SolverPackage solver_package=libMesh::default_solver_package()) |
使用指定的线性求解器包构建一个 ShellMatrix<T>。 更多... | |
static std::string | get_info () |
Gets a string containing the reference information. 更多... | |
static void | print_info (std::ostream &out_stream=libMesh::out) |
Prints the reference information, by default to libMesh::out . 更多... | |
static unsigned int | n_objects () |
Prints the number of outstanding (created, but not yet destroyed) objects. 更多... | |
static void | enable_print_counter_info () |
Methods to enable/disable the reference counter output from print_info() 更多... | |
static void | disable_print_counter_info () |
Protected 类型 | |
typedef std::map< std::string, std::pair< unsigned int, unsigned int > > | Counts |
Data structure to log the information. 更多... | |
Protected 成员函数 | |
void | increment_constructor_count (const std::string &name) noexcept |
Increments the construction counter. 更多... | |
void | increment_destructor_count (const std::string &name) noexcept |
Increments the destruction counter. 更多... | |
Protected 属性 | |
const NumericVector< T > & | _v |
列向量。 更多... | |
const NumericVector< T > & | _w |
行向量。 更多... | |
DofMap const * | _dof_map |
与此对象关联的 DofMap 对象。 更多... | |
静态 Protected 属性 | |
static Counts | _counts |
Actually holds the data. 更多... | |
static Threads::atomic < unsigned int > | _n_objects |
The number of objects. 更多... | |
static Threads::spin_mutex | _mutex |
Mutual exclusion object to enable thread-safe reference counting. 更多... | |
static bool | _enable_print_counter = true |
Flag to control whether reference count information is printed when print_info is called. 更多... | |
由两个向量的张量积构成的壳矩阵,即A = v*w^T。
这个类代表了由两个向量的张量积构成的壳矩阵,即A = v*w^T。以下是该类的详细注释:
在文件 tensor_shell_matrix.h 第 40 行定义.
|
protectedinherited |
Data structure to log the information.
The log is identified by the class name.
在文件 reference_counter.h 第 119 行定义.
|
inline |
Constructor; 以两个向量的引用作为参数进行初始化。向量本身必须存储在其他地方。
v | 列向量 |
w | 行向量 |
在文件 tensor_shell_matrix.h 第 113 行定义.
|
inlinevirtual |
|
inlineinherited |
附加要使用的 DofMap
指针。
dof_map | 要附加的 DofMap 对象 |
在文件 shell_matrix.h 第 120 行定义.
参考 libMesh::ShellMatrix< T >::_dof_map.
|
staticinherited |
使用指定的线性求解器包构建一个 ShellMatrix<T>。
comm | 通信器对象 |
solver_package | 线性求解器包 |
ShellMatrix<T>
的 std::unique_ptr 在文件 shell_matrix.C 第 32 行定义.
|
inlinevirtualinherited |
|
staticinherited |
在文件 reference_counter.C 第 100 行定义.
参考 libMesh::ReferenceCounter::_enable_print_counter.
|
staticinherited |
Methods to enable/disable the reference counter output from print_info()
在文件 reference_counter.C 第 94 行定义.
参考 libMesh::ReferenceCounter::_enable_print_counter.
|
overridevirtual |
将矩阵的对角部分复制到dest中。
dest | 存储对角元素的数值向量 |
实现了 libMesh::ShellMatrix< T >.
在文件 tensor_shell_matrix.C 第 46 行定义.
参考 libMesh::NumericVector< T >::pointwise_mult().
|
staticinherited |
Gets a string containing the reference information.
在文件 reference_counter.C 第 47 行定义.
参考 libMesh::ReferenceCounter::_counts.
参考自 libMesh::ReferenceCounter::print_info().
|
inlineprotectednoexceptinherited |
Increments the construction counter.
Should be called in the constructor of any derived class that will be reference counted.
在文件 reference_counter.h 第 183 行定义.
参考 libMesh::err.
参考自 libMesh::ReferenceCountedObject< SparseMatrix< T > >::ReferenceCountedObject().
|
inlineprotectednoexceptinherited |
Increments the destruction counter.
Should be called in the destructor of any derived class that will be reference counted.
在文件 reference_counter.h 第 207 行定义.
参考 libMesh::err.
参考自 libMesh::ReferenceCountedObject< SparseMatrix< T > >::~ReferenceCountedObject().
|
inlinevirtualinherited |
|
inlineoverridevirtual |
获取矩阵的行维度。
实现了 libMesh::ShellMatrix< T >.
在文件 tensor_shell_matrix.h 第 131 行定义.
|
inlineoverridevirtual |
获取矩阵的列维度。
实现了 libMesh::ShellMatrix< T >.
在文件 tensor_shell_matrix.h 第 140 行定义.
|
inlinestaticinherited |
Prints the number of outstanding (created, but not yet destroyed) objects.
在文件 reference_counter.h 第 85 行定义.
参考 libMesh::ReferenceCounter::_n_objects.
参考自 libMesh::LibMeshInit::~LibMeshInit().
|
staticinherited |
Prints the reference information, by default to libMesh::out
.
在文件 reference_counter.C 第 81 行定义.
参考 libMesh::ReferenceCounter::_enable_print_counter , 以及 libMesh::ReferenceCounter::get_info().
参考自 libMesh::LibMeshInit::~LibMeshInit().
|
overridevirtual |
将矩阵与参数arg相乘,并将结果存储在
dest中。
dest | 存储结果的数值向量 |
arg | 用于乘法的数值向量 |
实现了 libMesh::ShellMatrix< T >.
在文件 tensor_shell_matrix.C 第 27 行定义.
参考 libMesh::NumericVector< T >::scale().
|
overridevirtual |
将矩阵与参数arg相乘,然后将结果添加到
dest中。
dest | 存储结果的数值向量 |
arg | 用于乘法的数值向量 |
实现了 libMesh::ShellMatrix< T >.
在文件 tensor_shell_matrix.C 第 37 行定义.
参考 libMesh::NumericVector< T >::add().
|
staticprotectedinherited |
Actually holds the data.
在文件 reference_counter.h 第 124 行定义.
|
protectedinherited |
|
staticprotectedinherited |
Flag to control whether reference count information is printed when print_info is called.
在文件 reference_counter.h 第 143 行定义.
参考自 libMesh::ReferenceCounter::disable_print_counter_info(), libMesh::ReferenceCounter::enable_print_counter_info() , 以及 libMesh::ReferenceCounter::print_info().
|
staticprotectedinherited |
Mutual exclusion object to enable thread-safe reference counting.
在文件 reference_counter.h 第 137 行定义.
|
staticprotectedinherited |
The number of objects.
Print the reference count information when the number returns to 0.
在文件 reference_counter.h 第 132 行定义.
参考自 libMesh::ReferenceCounter::n_objects(), libMesh::ReferenceCounter::ReferenceCounter() , 以及 libMesh::ReferenceCounter::~ReferenceCounter().
|
protected |
列向量。
在文件 tensor_shell_matrix.h 第 100 行定义.
|
protected |
行向量。
在文件 tensor_shell_matrix.h 第 105 行定义.