|
template<class E , class M > |
| VectorPartitionedTyings (const E &conn, const E &dofs, const M &Cdu, const M &Cdp, const M &Cdi) |
| Constructor.
|
|
size_t | nnd () const |
|
size_t | nni () const |
|
size_t | nnu () const |
|
size_t | nnp () const |
|
const array_type::tensor< size_t, 1 > & | iid () const |
| Dependent DOFs (list of DOF numbers).
|
|
const array_type::tensor< size_t, 1 > & | iii () const |
| Independent DOFs (list of DOF numbers).
|
|
const array_type::tensor< size_t, 1 > & | iiu () const |
| Independent unknown DOFs (list of DOF numbers).
|
|
const array_type::tensor< size_t, 1 > & | iip () const |
| Independent prescribed DOFs (list of DOF numbers).
|
|
template<class T > |
void | copy_p (const T &dofval_src, T &dofval_dest) const |
| Copy (part of) "dofval" to another "dofval": dofval_dest[iip()] = dofval_src[iip()].
|
|
template<class T > |
array_type::tensor< double, 1 > | AsDofs_i (const T &nodevec) const |
| Convert to "dofval" (overwrite entries that occur more than once).
|
|
template<class T , class R > |
void | asDofs_i (const T &nodevec, R &dofval_i, bool apply_tyings=true) const |
| Same as InterpQuad_vector(), but writing to preallocated return.
|
|
template<class S , class T > |
| Vector (const S &conn, const T &dofs) |
| Constructor.
|
|
size_t | nelem () const |
|
size_t | nne () const |
|
size_t | nnode () const |
|
size_t | ndim () const |
|
size_t | ndof () const |
|
const array_type::tensor< size_t, 2 > & | conn () const |
|
const array_type::tensor< size_t, 2 > & | dofs () const |
|
template<class T > |
T | Copy (const T &nodevec_src, const T &nodevec_dest) const |
| Copy "nodevec" to another "nodevec".
|
|
template<class T > |
void | copy (const T &nodevec_src, T &nodevec_dest) const |
| Copy "nodevec" to another "nodevec".
|
|
template<class T > |
array_type::tensor< double, 1 > | AsDofs (const T &arg) const |
| Convert "nodevec" or "elemvec" to "dofval" (overwrite entries that occur more than once).
|
|
template<class T , class R > |
void | asDofs (const T &arg, R &ret) const |
| Convert "nodevec" or "elemvec" to "dofval" (overwrite entries that occur more than once).
|
|
template<class T > |
array_type::tensor< double, 2 > | AsNode (const T &arg) const |
| Convert "dofval" or "elemvec" to "nodevec" (overwrite entries that occur more than once).
|
|
template<class T , class R > |
void | asNode (const T &arg, R &ret) const |
| Convert "dofval" or "elemvec" to "nodevec" (overwrite entries that occur more than once).
|
|
template<class T > |
array_type::tensor< double, 3 > | AsElement (const T &arg) const |
| Convert "dofval" or "nodevec" to "elemvec" (overwrite entries that occur more than once).
|
|
template<class T , class R > |
void | asElement (const T &arg, R &ret) const |
| Convert "dofval" or "nodevec" to "elemvec" (overwrite entries that occur more than once).
|
|
template<class T > |
array_type::tensor< double, 1 > | AssembleDofs (const T &arg) const |
| Assemble "nodevec" or "elemvec" to "dofval" (adds entries that occur more that once).
|
|
template<class T , class R > |
void | assembleDofs (const T &arg, R &ret) const |
| Assemble "nodevec" or "elemvec" to "dofval" (adds entries that occur more that once).
|
|
template<class T > |
array_type::tensor< double, 2 > | AssembleNode (const T &arg) const |
| Assemble "elemvec" to "nodevec" (adds entries that occur more that once.
|
|
template<class T , class R > |
void | assembleNode (const T &arg, R &ret) const |
| Assemble "elemvec" to "nodevec" (adds entries that occur more that once.
|
|
std::array< size_t, 1 > | shape_dofval () const |
| Shape of "dofval".
|
|
std::array< size_t, 2 > | shape_nodevec () const |
| Shape of "nodevec".
|
|
std::array< size_t, 3 > | shape_elemvec () const |
| Shape of "elemvec".
|
|
std::array< size_t, 3 > | shape_elemmat () const |
| Shape of "elemmat".
|
|
array_type::tensor< double, 1 > | allocate_dofval () const |
| Allocated "dofval".
|
|
array_type::tensor< double, 1 > | allocate_dofval (double val) const |
| Allocated and initialised "dofval".
|
|
array_type::tensor< double, 2 > | allocate_nodevec () const |
| Allocated "nodevec".
|
|
array_type::tensor< double, 2 > | allocate_nodevec (double val) const |
| Allocated and initialised "nodevec".
|
|
array_type::tensor< double, 3 > | allocate_elemvec () const |
| Allocated "elemvec".
|
|
array_type::tensor< double, 3 > | allocate_elemvec (double val) const |
| Allocated and initialised "elemvec".
|
|
array_type::tensor< double, 3 > | allocate_elemmat () const |
| Allocated "elemmat".
|
|
array_type::tensor< double, 3 > | allocate_elemmat (double val) const |
| Allocated and initialised "elemmat".
|
|
Class to switch between storage types.
In particular:
- "nodevec": nodal vectors [nnode, ndim].
- "elemvec": nodal vectors stored per element [nelem, nne, ndim].
- "dofval": DOF values [ndof].
- "dofval_u": DOF values (Unknown),
== dofval[iiu]
, [nnu].
- "dofval_p": DOF values (Prescribed),
== dofval[iiu]
, [nnp].
Definition at line 32 of file VectorPartitionedTyings.h.