54 template<
class Form,
class Type>
class Matrix;
56 template<
class Form,
class Type>
Istream&
operator>>
62 template<
class Form,
class Type>
Ostream&
operator<<
68 template<
class MatrixType>
71 template<
class MatrixType>
74 template<
class Form,
class Cmpt, direction Mrows, direction Ncols>
82 template<
class Form,
class Type>
91 Type* __restrict__ v_;
109 inline static const mType&
null();
130 template<
class InputIterator>
143 Matrix(std::initializer_list<std::initializer_list<Type>>);
149 template<
class Form2>
153 template<
class MatrixType>
157 template<
class MatrixType>
160 template<
class MSForm, direction Mrows, direction Ncols>
188 inline const Type*
v()
const;
204 template<
class VectorSpace>
233 template<
class VectorSpace>
301 template<
class MatrixType>
305 template<
class MatrixType>
318 friend Istream&
operator>> <Form, Type>
325 friend Ostream& operator<< <Form, Type>
335 template<
class Form,
class Type>
338 template<
class Form,
class Type>
341 template<
class Form,
class Type>
344 template<
class Form,
class Type>
347 template<
class Form,
class Type>
354 template<
class Form,
class Type>
361 template<
class Form,
class Type>
368 template<
class Form,
class Type>
375 template<
class Form,
class Type>
382 template<
class Form1,
class Form2,
class Type>
390 template<
class Form,
class Type>
Pre-declare SubField and related Field type.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
A templated block of an (m x n) matrix of type <MatrixType>.
A templated (m x n) matrix of objects of <T>.
void checkj(const label j) const
Check index j is within valid range (0 ... n-1).
const Type & operator()(const label i, const label j) const
(i, j) const element access operator
void checki(const label i) const
Check index i is within valid range (0 ... m-1).
Matrix()
Null constructor.
Type cmptType
Component type.
label size() const
Return the number of elements in matrix (m*n)
ConstMatrixBlock< mType > col(const label m, const label rowStart) const
autoPtr< mType > clone() const
Clone.
void shallowResize(const label m, const label n)
Resize the matrix without reallocating storage (unsafe)
const Type * v() const
Return element vector of the constant Matrix.
label n() const
Return the number of columns.
void operator=(const mType &)
Assignment operator. Takes linear time.
label m() const
Return the number of rows.
void transfer(mType &)
Transfer the contents of the argument Matrix into this Matrix.
Form T() const
Return the transpose of the matrix.
void setSize(const label m, const label n)
Resize the matrix preserving the elements.
void clear()
Clear the Matrix, i.e. set sizes to zero.
Type * operator[](const label)
Return subscript-checked row of Matrix.
ConstMatrixBlock< mType > block(const label m, const label n, const label mStart, const label nStart) const
Matrix< Form, Type > mType
Matrix type.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
A class for managing temporary objects.
Abstract template class to provide the form resulting from.
A class representing the concept of 0 used to avoid unnecessary manipulations for objects that are kn...
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
labelList first(const UList< labelPair > &p)
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
void writeEntry(Ostream &os, const HashTable< T, Key, Hash > &ht)
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)
tmp< fvMatrix< Type > > operator-(const fvMatrix< Type > &)