![]() |
G+Smo
25.01.0
Geometry + Simulation Modules
|
Class for representing a Kronecker product of operators of type gsLinearOperator.
\( op = op_0 \otimes op_1 \otimes \cdots \otimes op_{n-1} \)
where \( A \otimes B = ( a_{11} B \ a_{12} B \ ... ; a_{21} B \ a_{22} B \ ... ; ... ) \).
Inheritance diagram for gsKroneckerOp< T >:
Collaboration diagram for gsKroneckerOp< T >:Public Types | |
| typedef memory::shared_ptr< gsKroneckerOp > | Ptr |
| Shared pointer for gsKroneckerOp. | |
| typedef memory::unique_ptr< gsKroneckerOp > | uPtr |
| Unique pointer for gsKroneckerOp. | |
Public Member Functions | |
| void | addOperator (BasePtr op) |
| virtual void | apply (const gsMatrix< T > &input, gsMatrix< T > &x) const |
| apply the operator on the input vector and store the result in x | |
| virtual index_t | cols () const |
| Returns the number of columns of the operator. | |
| const std::vector< BasePtr > & | getOps () const |
| Return a vector of shared pointers to all operators. | |
| gsKroneckerOp (BasePtr op0, BasePtr op1) | |
| Convenience constructor for Kronecker product of two linear operators. | |
| gsKroneckerOp (BasePtr op0, BasePtr op1, BasePtr op2) | |
| Convenience constructor for Kronecker product of three linear operators. | |
| gsKroneckerOp (std::vector< BasePtr > ops) | |
| Kronecker product of a given list of operators. | |
| virtual index_t | rows () const |
| Returns the number of rows of the operator. | |
| virtual void | setOptions (const gsOptionList &) |
| Set options based on a gsOptionList object. | |
Static Public Member Functions | |
| static void | apply (const std::vector< BasePtr > &ops, const gsMatrix< T > &input, gsMatrix< T > &x) |
| Apply provided linear operators without the need of creating an object. | |
| static gsOptionList | defaultOptions () |
| Get the default options as gsOptionList object. | |
| static gsIdentityOp< T > | Identity (const index_t dim) |
| Identity operator. | |
| static uPtr | make (BasePtr op0, BasePtr op1) |
| static uPtr | make (BasePtr op0, BasePtr op1, BasePtr op2) |
| static uPtr | make (std::vector< BasePtr > ops) |
| Make command returning a smart pointer. | |
|
inline |
Add another operator at the end
\( op_{new} = op_{old} \otimes op \)
apply the operator on the input vector and store the result in x
| input | Input vector |
| x | result vector |
Implements gsLinearOperator< T >.
|
inlinestatic |
Make command returning a smart pointer Convenience function for Kronecker product of two linear operators
|
inlinestatic |
Make command returning a smart pointer Convenience function for Kronecker product of three linear operators