35#ifndef _BLAZE_MATH_EXPRESSIONS_FORWARD_H_
36#define _BLAZE_MATH_EXPRESSIONS_FORWARD_H_
57template<
typename >
struct AddExpr;
58template<
typename >
struct BinaryMapExpr;
59template<
typename >
struct CrossExpr;
60template<
typename >
struct DeclDiagExpr;
61template<
typename >
struct DeclExpr;
62template<
typename >
struct DeclHermExpr;
63template<
typename >
struct DeclLowExpr;
64template<
typename >
struct DeclStrLowExpr;
65template<
typename >
struct DeclStrUppExpr;
66template<
typename >
struct DeclSymExpr;
67template<
typename >
struct DeclUniLowExpr;
68template<
typename >
struct DeclUniUppExpr;
69template<
typename >
struct DeclUppExpr;
70template<
typename >
struct DivExpr;
71template<
typename,
bool >
class DenseMatrix;
72template<
typename,
bool >
class DenseVector;
73template<
typename,
bool >
class DMatDeclDiagExpr;
74template<
typename,
bool >
class DMatDeclHermExpr;
75template<
typename,
bool >
class DMatDeclLowExpr;
76template<
typename,
bool >
class DMatDeclStrLowExpr;
77template<
typename,
bool >
class DMatDeclStrUppExpr;
78template<
typename,
bool >
class DMatDeclSymExpr;
79template<
typename,
bool >
class DMatDeclUniLowExpr;
80template<
typename,
bool >
class DMatDeclUniUppExpr;
81template<
typename,
bool >
class DMatDeclUppExpr;
82template<
typename,
typename,
bool >
class DMatDMatAddExpr;
83template<
typename,
typename,
bool >
class DMatDMatKronExpr;
84template<
typename,
typename,
typename,
bool >
class DMatDMatMapExpr;
85template<
typename,
typename,
bool,
bool,
bool,
bool >
class DMatDMatMultExpr;
86template<
typename,
typename,
bool >
class DMatDMatSchurExpr;
87template<
typename,
typename,
bool >
class DMatDMatSolveExpr;
88template<
typename,
typename,
bool >
class DMatDMatSubExpr;
89template<
typename,
typename >
class DMatDVecMultExpr;
90template<
typename,
typename,
bool >
class DMatDVecSolveExpr;
91template<
typename,
bool >
class DMatEigenExpr;
92template<
typename,
bool >
class DMatEvalExpr;
93template<
typename,
bool >
class DMatExpExpr;
94template<
typename,
bool >
class DMatFixExpr;
95template<
typename,
typename,
bool >
class DMatGenExpr;
96template<
typename,
bool >
class DMatInvExpr;
97template<
typename,
typename,
bool >
class DMatMapExpr;
98template<
typename,
bool >
class DMatNoAliasExpr;
99template<
typename,
bool >
class DMatNoSIMDExpr;
100template<
typename,
typename, ReductionFlag >
class DMatReduceExpr;
101template<
typename, bool,
size_t... >
class DMatRepeatExpr;
102template<
typename,
typename,
bool >
class DMatScalarDivExpr;
103template<
typename,
typename,
bool >
class DMatScalarMultExpr;
104template<
typename,
bool >
class DMatSerialExpr;
105template<
typename,
typename,
bool >
class DMatSMatAddExpr;
106template<
typename,
typename,
bool >
class DMatSMatKronExpr;
107template<
typename,
typename,
bool,
bool,
bool,
bool >
class DMatSMatMultExpr;
134template<
typename,
typename,
bool >
class DVecGenExpr;
135template<
typename,
typename,
bool >
class DVecMapExpr;
151template<
typename >
struct EvalExpr;
154template<
typename >
struct GenExpr;
155template<
typename >
struct KronExpr;
171template<
typename,
bool >
class Matrix;
178template<
typename >
struct MultExpr;
195template<
typename,
typename,
bool,
bool,
bool,
bool >
class SMatDMatMultExpr;
201template<
typename,
typename,
bool >
class SMatMapExpr;
203template<
typename,
typename, ReductionFlag >
class SMatReduceExpr;
223template<
typename, ReductionFlag >
class SMatVarExpr;
227template<
typename >
struct SubExpr;
228template<
typename >
struct SVDExpr;
238template<
typename,
typename,
bool >
class SVecMapExpr;
296template<
typename,
bool >
class Vector;
306template<
typename >
struct View;
309template<
typename VT1,
typename VT2,
bool TF >
312template<
typename VT1,
typename VT2 >
315template<
typename VT1,
typename VT2,
bool TF >
318template<
typename VT1,
typename VT2,
bool TF >
321template<
typename VT1,
typename VT2,
bool TF >
324template<
typename MT1,
typename MT2,
bool SO >
327template<
typename MT1,
typename MT2 >
330template<
typename MT1,
typename MT2 >
333template<
typename MT1,
typename MT2,
bool SO >
336template<
typename MT1,
typename MT2 >
339template<
typename MT1,
typename MT2 >
342template<
typename MT1,
typename MT2,
bool SO >
345template<
typename MT1,
typename MT2 >
348template<
typename MT1,
typename MT2 >
351template<
typename MT1,
typename MT2 >
354template<
typename MT1,
typename MT2 >
357template<
typename MT1,
typename MT2 >
360template<
typename MT1,
typename MT2 >
364template<
typename VT1,
typename VT2,
bool TF >
367template<
typename VT1,
typename VT2 >
370template<
typename VT1,
typename VT2,
bool TF >
373template<
typename VT1,
typename VT2,
bool TF >
376template<
typename VT1,
typename VT2,
bool TF >
379template<
typename MT1,
typename MT2,
bool SO >
382template<
typename MT1,
typename MT2 >
385template<
typename MT1,
typename MT2 >
388template<
typename MT1,
typename MT2,
bool SO >
391template<
typename MT1,
typename MT2 >
394template<
typename MT1,
typename MT2 >
397template<
typename MT1,
typename MT2,
bool SO >
400template<
typename MT1,
typename MT2 >
403template<
typename MT1,
typename MT2 >
406template<
typename MT1,
typename MT2 >
409template<
typename MT1,
typename MT2 >
412template<
typename MT1,
typename MT2 >
415template<
typename MT1,
typename MT2 >
419template<
typename VT1,
typename VT2,
bool TF >
422template<
typename VT1,
typename VT2 >
425template<
typename VT1,
typename VT2 >
428template<
typename VT1,
typename VT2,
bool TF >
431template<
typename VT1,
typename VT2 >
434template<
typename VT1,
typename VT2 >
437template<
typename VT1,
typename VT2,
bool TF >
440template<
typename VT1,
typename VT2 >
443template<
typename VT1,
typename VT2 >
446template<
typename VT1,
typename VT2,
bool TF >
449template<
typename VT1,
typename VT2 >
452template<
typename VT1,
typename VT2 >
455template<
typename MT,
typename VT >
458template<
typename MT,
typename VT >
461template<
typename MT,
typename VT >
464template<
typename MT,
typename VT >
467template<
typename MT,
typename VT >
470template<
typename MT,
typename VT >
473template<
typename MT,
typename VT >
476template<
typename MT,
typename VT >
479template<
typename VT,
typename MT >
482template<
typename VT,
typename MT >
485template<
typename VT,
typename MT >
488template<
typename VT,
typename MT >
491template<
typename VT,
typename MT >
494template<
typename VT,
typename MT >
497template<
typename VT,
typename MT >
500template<
typename VT,
typename MT >
503template<
typename MT1,
typename MT2 >
506template<
typename MT1,
typename MT2 >
509template<
typename MT1,
typename MT2 >
512template<
typename MT1,
typename MT2 >
515template<
typename MT1,
typename MT2 >
518template<
typename MT1,
typename MT2 >
521template<
typename MT1,
typename MT2 >
524template<
typename MT1,
typename MT2 >
527template<
typename MT1,
typename MT2 >
530template<
typename MT1,
typename MT2 >
533template<
typename MT1,
typename MT2 >
536template<
typename MT1,
typename MT2 >
539template<
typename MT1,
typename MT2 >
542template<
typename MT1,
typename MT2 >
545template<
typename MT1,
typename MT2 >
548template<
typename MT1,
typename MT2 >
552template<
typename VT1,
typename VT2,
bool TF >
555template<
typename VT1,
typename VT2 >
558template<
typename VT1,
typename VT2,
bool TF >
562template<
typename VT1,
typename VT2,
bool TF >
565template<
typename VT1,
typename VT2,
bool TF >
568template<
typename VT1,
typename VT2,
bool TF >
571template<
typename VT1,
typename VT2,
bool TF >
575template<
typename MT1,
typename MT2,
bool SO >
578template<
typename MT1,
typename MT2 >
581template<
typename MT1,
typename MT2 >
584template<
typename MT1,
typename MT2 >
587template<
typename MT1,
typename MT2 >
590template<
typename MT1,
typename MT2 >
593template<
typename MT1,
typename MT2 >
596template<
typename MT1,
typename MT2 >
599template<
typename MT1,
typename MT2 >
602template<
typename MT1,
typename MT2 >
605template<
typename MT1,
typename MT2 >
608template<
typename MT1,
typename MT2 >
611template<
typename MT1,
typename MT2 >
614template<
typename MT1,
typename MT2 >
617template<
typename MT1,
typename MT2 >
621template<
typename VT1,
typename VT2,
bool TF >
624template<
typename VT1,
typename VT2,
bool TF >
627template<
typename VT1,
typename VT2,
bool TF >
630template<
typename VT1,
typename VT2,
bool TF >
634template<
typename MT1,
bool SO1,
typename MT2,
bool SO2 >
637template<
typename MT1,
bool SO1,
typename MT2,
bool SO2 >
640template<
typename MT1,
bool SO1,
typename MT2,
bool SO2 >
643template<
typename MT1,
typename MT2 >
646template<
typename MT1,
typename MT2 >
649template<
typename MT1,
typename MT2 >
652template<
typename MT1,
typename MT2 >
656template<
typename VT,
bool TF >
659template<
typename VT,
bool TF >
662template<
typename MT,
bool SO >
665template<
typename MT,
bool SO >
669template<
bool TTF,
typename VT,
bool TF >
672template<
bool TTF,
typename VT,
bool TF >
676template<
bool B,
typename MT,
bool SO >
679template<
bool B,
typename MT,
bool SO >
683template<
typename VT,
bool TF >
686template<
typename VT,
bool TF >
689template<
typename MT,
bool SO >
692template<
typename MT,
bool SO >
696template<
typename VT,
bool TF >
699template<
typename VT,
bool TF >
702template<
typename MT,
bool SO >
705template<
typename MT,
bool SO >
709template<
typename VT,
bool TF >
712template<
typename VT,
bool TF >
715template<
typename MT,
bool SO >
718template<
typename MT,
bool SO >
722template<
typename VT,
bool TF >
725template<
typename VT,
bool TF >
728template<
typename MT,
bool SO >
731template<
typename MT,
bool SO >
735template<
typename VT,
bool TF >
738template<
typename VT,
bool TF >
741template<
typename MT,
bool SO >
744template<
typename MT,
bool SO >
748template<
typename MT,
bool SO >
752template<
typename MT,
bool SO >
756template<
typename MT,
bool SO,
typename VT,
bool TF >
759template<
typename MT1,
bool SO1,
typename MT2,
bool SO2 >
763template<
typename MT,
bool SO >
767template<
typename MT,
bool SO >
771template<
typename VT,
bool TF,
typename OP >
774template<
typename VT,
bool TF,
typename OP >
777template<
typename MT,
bool SO,
typename OP >
780template<
typename MT,
bool SO,
typename OP >
783template<
typename VT1,
typename VT2,
bool TF,
typename OP >
786template<
typename VT1,
typename VT2,
bool TF,
typename OP >
789template<
typename MT1,
typename MT2,
bool SO,
typename OP >
792template<
typename MT1,
typename MT2,
typename OP >
795template<
typename MT1,
typename MT2,
typename OP >
799template<
typename VT,
bool TF,
typename OP >
802template<
typename VT,
bool TF,
typename OP >
805template<
typename MT,
bool SO,
typename OP >
808template< ReductionFlag RF,
typename MT,
bool SO,
typename OP >
811template<
typename MT,
bool SO,
typename OP >
814template< ReductionFlag,
typename MT,
bool SO,
typename OP >
818template<
typename VT,
bool TF >
821template<
size_t E,
typename VT,
bool TF >
824template<
typename VT,
bool TF >
827template<
size_t E,
typename VT,
bool TF >
831template<
typename VT,
bool TF >
834template<
size_t R0,
typename VT,
bool TF >
837template<
typename VT,
bool TF >
840template<
size_t R0,
typename VT,
bool TF >
843template<
typename MT,
bool SO >
846template<
size_t R0,
size_t R1,
typename MT,
bool SO >
849template<
typename MT,
bool SO >
852template<
size_t R0,
size_t R1,
typename MT,
bool SO >
856template<
typename VT,
bool TF >
859template<
typename VT,
bool TF >
862template<
typename MT,
bool SO >
865template< ReductionFlag,
typename MT,
bool SO >
868template<
typename MT,
bool SO >
871template< ReductionFlag,
typename MT,
bool SO >
875template<
typename VT,
bool TF >
878template<
typename VT,
bool TF >
881template<
typename MT,
bool SO >
884template< ReductionFlag,
typename MT,
bool SO >
887template<
typename MT,
bool SO >
890template< ReductionFlag,
typename MT,
bool SO >
894template<
typename VT,
bool TF >
897template<
typename VT,
bool TF >
900template<
typename MT,
bool SO >
903template< ReductionFlag,
typename MT,
bool SO >
906template<
typename MT,
bool SO >
909template< ReductionFlag,
typename MT,
bool SO >
913template<
typename MT,
bool SO >
916template<
typename MT,
bool SO >
920template<
typename MT,
bool SO >
923template<
typename MT,
bool SO >
927template<
typename MT,
bool SO >
930template<
typename MT,
bool SO >
934template<
typename MT,
bool SO >
937template<
typename MT,
bool SO >
941template<
typename MT,
bool SO >
944template<
typename MT,
bool SO >
948template<
typename MT,
bool SO >
951template<
typename MT,
bool SO >
955template<
typename MT,
bool SO >
958template<
typename MT,
bool SO >
962template<
typename MT,
bool SO >
965template<
typename MT,
bool SO >
969template<
typename MT,
bool SO >
972template<
typename MT,
bool SO >
Header file for the IntegralConstant class template.
Deactivation of problematic macros.
Header file for the reduction flags.
Definition: Forward.h:108
Expression object for dense matrix-sparse matrix subtractions.
Definition: DMatSMatSubExpr.h:92
Expression object for dense matrix singular value solvers.
Definition: DMatSVDExpr.h:85
Expression object for dense matrix-sparse vector multiplications.
Definition: DMatSVecMultExpr.h:106
Expression object for dense matrix-transpose dense matrix additions.
Definition: DMatTDMatAddExpr.h:95
Expression object for the dense matrix/tranpose dense matrix map() function.
Definition: DMatTDMatMapExpr.h:95
Expression object for dense matrix-transpose dense matrix multiplications.
Definition: DMatTDMatMultExpr.h:146
Expression object for dense matrix-transpose dense matrix Schur product.
Definition: DMatTDMatSchurExpr.h:105
Expression object for dense matrix-transpose dense matrix subtractions.
Definition: DMatTDMatSubExpr.h:94
Expression object for dense matrix-sparse matrix additions.
Definition: DMatTSMatAddExpr.h:93
Expression object for dense matrix-transpose sparse matrix multiplications.
Definition: DMatTSMatMultExpr.h:129
Definition: Forward.h:121
Expression object for dense matrix-transpose sparse matrix subtractions.
Definition: DMatTSMatSubExpr.h:93
Expression object for dense matrix transpositions.
Definition: DMatTransExpr.h:93
Expression object for the transposition of a dense matrix.
Definition: DMatTransposer.h:79
Expression object for dense vector-dense vector additions.
Definition: DVecDVecAddExpr.h:100
Expression object for dense vector-dense vector cross products.
Definition: DVecDVecCrossExpr.h:90
Expression object for dense vector-dense vector divisions.
Definition: DVecDVecDivExpr.h:98
Expression object for dense vector-dense vector Kronecker product.
Definition: DVecDVecKronExpr.h:90
Expression object for the dense vector-dense vector map() function.
Definition: DVecDVecMapExpr.h:112
Expression object for dense vector-dense vector multiplications.
Definition: DVecDVecMultExpr.h:99
Expression object for the dense vector-dense vector outer map() function.
Definition: DVecDVecOuterExpr.h:114
Expression object for dense vector-dense vector subtractions.
Definition: DVecDVecSubExpr.h:98
Expression object for the forced evaluation of dense vectors.
Definition: DVecEvalExpr.h:80
Expression object for dense vector expansion.
Definition: DVecExpandExpr.h:95
Expression object for fixing the size of a dense vector.
Definition: DVecFixExpr.h:72
Expression object for the dense vector generate() function.
Definition: DVecGenExpr.h:95
Expression object for the dense vector map() function.
Definition: DVecMapExpr.h:106
Expression object for the non-aliased evaluation of dense vectors.
Definition: DVecNoAliasExpr.h:88
Expression object for the non-SIMD evaluation of dense vectors.
Definition: DVecNoSIMDExpr.h:87
Expression object for the dense vector repeat() function.
Definition: DVecRepeatExpr.h:86
Expression object for dense vector-sparse vector additions.
Definition: DVecSVecAddExpr.h:92
Expression object for dense vector-sparse vector cross products.
Definition: DVecSVecCrossExpr.h:93
Expression object for dense vector-sparse vector Kronecker product.
Definition: DVecSVecKronExpr.h:93
Expression object for dense vector-sparse vector multiplications.
Definition: DVecSVecMultExpr.h:98
Expression object for dense vector-sparse vector outer products.
Definition: DVecSVecOuterExpr.h:108
Expression object for dense vector-sparse vector subtractions.
Definition: DVecSVecSubExpr.h:92
Expression object for divisions of a dense vector by a scalar.
Definition: DVecScalarDivExpr.h:108
Expression object for dense vector-scalar multiplications.
Definition: DVecScalarMultExpr.h:107
Expression object for the forced serial evaluation of dense vectors.
Definition: DVecSerialExpr.h:80
Expression object for dense vector transpositions.
Definition: DVecTransExpr.h:93
Expression object for the transposition of a dense vector.
Definition: DVecTransposer.h:81
Base class for dense matrices.
Definition: DenseMatrix.h:82
Base class for N-dimensional dense vectors.
Definition: DenseVector.h:77
Base class for matrices.
Definition: Matrix.h:85
Expression object for sparse matrix-dense matrix Kronecker product.
Definition: SMatDMatKronExpr.h:93
Expression object for sparse matrix-dense matrix multiplications.
Definition: SMatDMatMultExpr.h:132
Expression object for sparse matrix-dense matrix Schur product.
Definition: SMatDMatSchurExpr.h:103
Expression object for sparse matrix-dense matrix subtractions.
Definition: SMatDMatSubExpr.h:91
Expression object for sparse matrix-dense vector multiplications.
Definition: SMatDVecMultExpr.h:97
Expression object for the explicit diagonal declaration of sparse matrices.
Definition: SMatDeclDiagExpr.h:92
Expression object for the explicit Hermitian declaration of sparse matrices.
Definition: SMatDeclHermExpr.h:91
Expression object for the explicit lower declaration of sparse matrices.
Definition: SMatDeclLowExpr.h:91
Expression object for the explicit strictly lower declaration of sparse matrices.
Definition: SMatDeclStrLowExpr.h:92
Expression object for the explicit strictly upper declaration of sparse matrices.
Definition: SMatDeclStrUppExpr.h:92
Expression object for the explicit symmetry declaration of sparse matrices.
Definition: SMatDeclSymExpr.h:91
Expression object for the explicit unilower declaration of sparse matrices.
Definition: SMatDeclUniLowExpr.h:93
Expression object for the explicit uniupper declaration of sparse matrices.
Definition: SMatDeclUniUppExpr.h:91
Expression object for the explicit upper declaration of sparse matrices.
Definition: SMatDeclUppExpr.h:91
Expression object for the forced evaluation of sparse matrices.
Definition: SMatEvalExpr.h:78
Expression object for fixing the size of a sparse matrix.
Definition: SMatFixExpr.h:70
Expression object for the sparse matrix map() function.
Definition: SMatMapExpr.h:95
Expression object for the non-aliased evaluation of sparse matrices.
Definition: SMatNoAliasExpr.h:83
Base template for row-major sparse matrix partial reduction operations.
Definition: SMatReduceExpr.h:98
Expression object for the sparse matrix repeat() function.
Definition: SMatRepeatExpr.h:87
Expression object for sparse matrix-sparse matrix additions.
Definition: SMatSMatAddExpr.h:95
Expression object for sparse matrix-sparse matrix Kronecker product.
Definition: SMatSMatKronExpr.h:89
Expression object for sparse matrix-sparse matrix multiplications.
Definition: SMatSMatMultExpr.h:109
Expression object for sparse matrix-sparse matrix Schur product.
Definition: SMatSMatSchurExpr.h:101
Expression object for sparse matrix-sparse matrix subtractions.
Definition: SMatSMatSubExpr.h:95
Expression object for sparse matrix-sparse vector multiplications.
Definition: SMatSVecMultExpr.h:99
Expression object for sparse matrix-scalar divisions.
Definition: SMatScalarDivExpr.h:103
Expression object for sparse matrix-scalar multiplications.
Definition: SMatScalarMultExpr.h:97
Expression object for the forced serial evaluation of sparse matrices.
Definition: SMatSerialExpr.h:78
Expression object for sparse matrix-transpose dense matrix multiplications.
Definition: SMatTDMatMultExpr.h:127
Expression object for sparse matrix-transpose dense matrix subtractions.
Definition: SMatTDMatSubExpr.h:92
Expression object for sparse matrix-transpose sparse matrix additions.
Definition: SMatTSMatAddExpr.h:96
Expression object for sparse matrix-transpose sparse matrix Kronecker product.
Definition: SMatTSMatKronExpr.h:91
Expression object for sparse matrix-transpose sparse matrix multiplications.
Definition: SMatTSMatMultExpr.h:98
Expression object for sparse matrix-transpose sparse matrix Schur product.
Definition: SMatTSMatSchurExpr.h:101
Expression object for sparse matrix-transpose sparse matrix subtractions.
Definition: SMatTSMatSubExpr.h:96
Expression object for sparse matrix transpositions.
Definition: SMatTransExpr.h:87
Expression object for the transposition of a sparse matrix.
Definition: SMatTransposer.h:72
Base template for the row-/column-wise variance computations on row-major sparse matrices.
Definition: SMatVarExpr.h:93
Expression object for sparse vector-dense vector cross products.
Definition: SVecDVecCrossExpr.h:93
Expression object for sparse vector-dense vector divisions.
Definition: SVecDVecDivExpr.h:98
Expression object for sparse vector-dense vector Kronecker products.
Definition: SVecDVecKronExpr.h:92
Expression object for sparse vector-dense vector multiplications.
Definition: SVecDVecMultExpr.h:98
Expression object for sparse vector-dense vector outer products.
Definition: SVecDVecOuterExpr.h:108
Expression object for sparse vector-dense vector subtractions.
Definition: SVecDVecSubExpr.h:91
Expression object for the forced evaluation of sparse vectors.
Definition: SVecEvalExpr.h:79
Expression object for sparse vector expansion.
Definition: SVecExpandExpr.h:93
Expression object for fixing the size of a sparse vector.
Definition: SVecFixExpr.h:70
Expression object for the sparse vector map() function.
Definition: SVecMapExpr.h:95
Expression object for the non-aliased evaluation of sparse vectors.
Definition: SVecNoAliasExpr.h:85
Expression object for the sparse vector repeat() function.
Definition: SVecRepeatExpr.h:85
Expression object for sparse vector-sparse vector additions.
Definition: SVecSVecAddExpr.h:94
Expression object for sparse vector-sparse vector cross products.
Definition: SVecSVecCrossExpr.h:92
Expression object for sparse vector-sparse vector Kronecker products.
Definition: SVecSVecKronExpr.h:91
Expression object for sparse vector-sparse vector multiplications.
Definition: SVecSVecMultExpr.h:91
Expression object for sparse vector-sparse vector outer products.
Definition: SVecSVecOuterExpr.h:92
Expression object for sparse vector-sparse vector subtractions.
Definition: SVecSVecSubExpr.h:94
Expression object for divisions of a sparse vector by a scalar.
Definition: SVecScalarDivExpr.h:103
Expression object for sparse vector-scalar multiplications.
Definition: SVecScalarMultExpr.h:99
Expression object for the forced serial evaluation of sparse vectors.
Definition: SVecSerialExpr.h:79
Expression object for sparse vector transpositions.
Definition: SVecTransExpr.h:87
Expression object for the transposition of a sparse vector.
Definition: SVecTransposer.h:77
Base class for sparse matrices.
Definition: SparseMatrix.h:77
Base class for sparse vectors.
Definition: SparseVector.h:72
Expression object for transpose dense matrix-dense matrix multiplications.
Definition: TDMatDMatMultExpr.h:148
Expression object for transpose dense matrix-dense vector multiplications.
Definition: TDMatDVecMultExpr.h:128
Expression object for dense matrix-sparse matrix additions.
Definition: TDMatSMatAddExpr.h:93
Expression object for transpose dense matrix-sparse matrix multiplications.
Definition: TDMatSMatMultExpr.h:130
Expression object for transpose dense matrix-sparse matrix subtractions.
Definition: TDMatSMatSubExpr.h:93
Expression object for transpose dense matrix-sparse vector multiplications.
Definition: TDMatSVecMultExpr.h:111
Expression object for transpose dense matrix-transpose dense matrix multiplications.
Definition: TDMatTDMatMultExpr.h:152
Expression object for transpose dense matrix-transpose sparse matrix multiplications.
Definition: TDMatTSMatMultExpr.h:133
Expression object for transpose dense vector-dense matrix multiplications.
Definition: TDVecDMatMultExpr.h:129
Expression object for transpose dense vector-sparse matrix multiplications.
Definition: TDVecSMatMultExpr.h:106
Expression object for transpose dense vector-transpose dense matrix multiplications.
Definition: TDVecTDMatMultExpr.h:126
Expression object for transpose dense vector-transpose sparse matrix multiplications.
Definition: TDVecTSMatMultExpr.h:97
Expression object for transpose sparse matrix-dense matrix multiplications.
Definition: TSMatDMatMultExpr.h:131
Expression object for transpose sparse matrix-dense matrix Schur product.
Definition: TSMatDMatSchurExpr.h:103
Expression object for transpose sparse matrix-dense matrix subtractions.
Definition: TSMatDMatSubExpr.h:92
Expression object for transpose sparse matrix-dense vector multiplications.
Definition: TSMatDVecMultExpr.h:107
Expression object for sparse matrix-sparse matrix Kronecker product.
Definition: TSMatSMatKronExpr.h:91
Expression object for transpose sparse matrix-sparse matrix multiplications.
Definition: TSMatSMatMultExpr.h:107
Expression object for transpose sparse matrix-sparse matrix Schur products.
Definition: TSMatSMatSchurExpr.h:101
Expression object for transpose sparse matrix-sparse matrix subtractions.
Definition: TSMatSMatSubExpr.h:96
Expression object for sparse matrix-sparse vector multiplications.
Definition: TSMatSVecMultExpr.h:104
Expression object for transpose sparse matrix-transpose dense matrix multiplications.
Definition: TSMatTDMatMultExpr.h:131
Expression object for transpose sparse matrix-transpose sparse matrix additions.
Definition: TSMatTSMatAddExpr.h:95
Expression object for transpose sparse matrix-transpose sparse matrix Kronecker product.
Definition: TSMatTSMatKronExpr.h:89
Expression object for transpose sparse matrix-transpose sparse matrix multiplications.
Definition: TSMatTSMatMultExpr.h:110
Expression object for transpose sparse matrix-transpose sparse matrix Schur product.
Definition: TSMatTSMatSchurExpr.h:100
Expression object for transpose sparse matrix-transpose sparse matrix subtractions.
Definition: TSMatTSMatSubExpr.h:95
Expression object for transpose sparse vector-dense matrix multiplications.
Definition: TSVecDMatMultExpr.h:111
Expression object for sparse vector-sparse matrix multiplications.
Definition: TSVecSMatMultExpr.h:104
Expression object for transpose sparse vector-transpose dense matrix multiplications.
Definition: TSVecTDMatMultExpr.h:104
Expression object for sparse vector-sparse matrix multiplications.
Definition: TSVecTSMatMultExpr.h:99
Base class for N-dimensional vectors.
Definition: Vector.h:82
void eigen(const DenseMatrix< MT, SO > &A, DenseVector< VT, TF > &w)
Eigenvalue computation of the given dense matrix.
Definition: Eigen.h:351
void svd(const DenseMatrix< MT, SO > &A, DenseVector< VT, TF > &s)
Singular value decomposition (SVD) of the given dense general matrix.
Definition: SVD.h:135
decltype(auto) map(const DenseMatrix< MT1, SO > &lhs, const DenseMatrix< MT2, SO > &rhs, OP op)
Elementwise evaluation of the given binary operation on each single element of the dense matrices lhs...
Definition: DMatDMatMapExpr.h:1144
decltype(auto) fix(DenseMatrix< MT, SO > &dm) noexcept
Fixing the size of the given dense matrix.
Definition: DMatFixExpr.h:227
void solve(const DenseMatrix< MT, SO > &A, DenseVector< VT1, TF1 > &x, const DenseVector< VT2, TF2 > &b)
Solving the given linear system of equations ( ).
Definition: LSE.h:6343
decltype(auto) inv(const DenseMatrix< MT, SO > &dm)
Calculation of the inverse of the given dense matrix.
Definition: DMatInvExpr.h:405
decltype(auto) matexp(const DenseMatrix< MT, SO > &dm)
Calculation of the exponential of the given dense matrix.
Definition: DMatExpExpr.h:564
decltype(auto) nosimd(const SparseMatrix< MT, SO > &)
Disables the SIMD evaluation of the given sparse matrix expression sm.
Definition: SMatNoSIMDExpr.h:74
decltype(auto) declunilow(const SparseMatrix< MT, SO > &)
Declares the given sparse matrix expression sm as unilower.
Definition: SMatDeclUniLowExpr.h:978
decltype(auto) decllow(const SparseMatrix< MT, SO > &)
Declares the given sparse matrix expression sm as lower.
Definition: SMatDeclLowExpr.h:976
decltype(auto) decldiag(const SparseMatrix< MT, SO > &)
Declares the given sparse matrix expression sm as diagonal.
Definition: SMatDeclDiagExpr.h:950
decltype(auto) kron(const SparseMatrix< MT1, true > &, const SparseMatrix< MT2, true > &)
Computes the Kronecker product of two column-major sparse matrices ( ).
Definition: TSMatTSMatKronExpr.h:757
decltype(auto) decluniupp(const SparseMatrix< MT, SO > &)
Declares the given sparse matrix expression sm as uniupper.
Definition: SMatDeclUniUppExpr.h:976
decltype(auto) stddev(const SparseMatrix< MT, SO > &)
Computes the row-/columnwise standard deviation function for the given sparse matrix.
Definition: SMatStdDevExpr.h:133
decltype(auto) reduce(const SparseMatrix< MT, SO > &, OP)
Performs a custom reduction operation on the given sparse matrix.
Definition: SMatReduceExpr.h:1667
decltype(auto) trans(const SparseMatrix< MT, SO > &)
Calculation of the transpose of the given sparse matrix.
Definition: SMatTransExpr.h:728
decltype(auto) serial(const SparseMatrix< MT, SO > &)
Forces the serial evaluation of the given sparse matrix expression sm.
Definition: SMatSerialExpr.h:819
decltype(auto) var(const SparseMatrix< MT, SO > &)
Computes the row-/column-wise variance function for the given sparse matrix.
Definition: SMatVarExpr.h:1306
decltype(auto) transIf(const SparseMatrix< MT, SO > &)
Conditional calculation of the transpose of the given sparse matrix.
Definition: SMatTransExpr.h:794
decltype(auto) declstrlow(const SparseMatrix< MT, SO > &)
Declares the given sparse matrix expression sm as strictly lower.
Definition: SMatDeclStrLowExpr.h:977
decltype(auto) noalias(const SparseMatrix< MT, SO > &)
Forces the non-aliased evaluation of the given sparse matrix expression sm.
Definition: SMatNoAliasExpr.h:665
decltype(auto) mean(const SparseMatrix< MT, SO > &)
Computes the row-/columnwise mean function for the given sparse matrix.
Definition: SMatMeanExpr.h:242
decltype(auto) declupp(const SparseMatrix< MT, SO > &)
Declares the given sparse matrix expression sm as upper.
Definition: SMatDeclUppExpr.h:976
decltype(auto) declsym(const SparseMatrix< MT, SO > &)
Declares the given sparse matrix expression sm as symmetric.
Definition: SMatDeclSymExpr.h:977
decltype(auto) declstrupp(const SparseMatrix< MT, SO > &)
Declares the given sparse matrix expression sm as strictly upper.
Definition: SMatDeclStrUppExpr.h:977
decltype(auto) repeat(const SparseMatrix< MT, SO > &)
Repeats the given sparse matrix.
Definition: SMatRepeatExpr.h:619
decltype(auto) declherm(const SparseMatrix< MT, SO > &)
Declares the given sparse matrix expression sm as Hermitian.
Definition: SMatDeclHermExpr.h:977
decltype(auto) eval(const SparseMatrix< MT, SO > &)
Forces the evaluation of the given sparse matrix expression sm.
Definition: SMatEvalExpr.h:799
decltype(auto) expand(const SparseVector< VT, TF > &)
Expansion of the given sparse vector.
Definition: SVecExpandExpr.h:818
decltype(auto) transTo(const SparseVector< VT, TF > &)
Conditional calculation of the transpose of the given sparse vector.
Definition: SVecTransExpr.h:718
Base class for all eigenvalue expression templates.
Definition: EigenExpr.h:68
Base class for all evaluation expression templates.
Definition: EvalExpr.h:68
Base class for all expansion expression templates.
Definition: ExpandExpr.h:68
Base class for all expression templates.
Definition: Expression.h:60
Base class for all for-each expression templates.
Definition: GenExpr.h:68
Base class for all Kron product expression templates.
Definition: KronExpr.h:69
Base class for all matrix evaluation expression templates.
Definition: MatEvalExpr.h:69
Base class for all matrix exponential expression templates.
Definition: MatExpExpr.h:68
Base class for all matrix generator expression templates.
Definition: MatGenExpr.h:68
Base class for all matrix inversion expression templates.
Definition: MatInvExpr.h:72
Base class for all unary matrix map expression templates.
Definition: MatMapExpr.h:68
Base class for all matrix/matrix addition expression templates.
Definition: MatMatAddExpr.h:68
Base class for all matrix/matrix Kronecker expression templates.
Definition: MatMatKronExpr.h:69
Base class for all binary matrix map expression templates.
Definition: MatMatMapExpr.h:68
Base class for all matrix/matrix multiplication expression templates.
Definition: MatMatMultExpr.h:71
Base class for all multi LSE solver expression templates.
Definition: MatMatSolveExpr.h:69
Base class for all matrix/matrix subtraction expression templates.
Definition: MatMatSubExpr.h:69
Base class for all matrix no-alias expression templates.
Definition: MatNoAliasExpr.h:68
Base class for all matrix no-SIMD expression templates.
Definition: MatNoSIMDExpr.h:95
Base class for all matrix reduction expression templates.
Definition: MatReduceExpr.h:70
Base class for all matrix repeat expression templates.
Definition: MatRepeatExpr.h:69
Base class for all matrix/scalar division expression templates.
Definition: MatScalarDivExpr.h:75
Base class for all matrix/scalar multiplication expression templates.
Definition: MatScalarMultExpr.h:77
Base class for all matrix serial evaluation expression templates.
Definition: MatSerialExpr.h:69
Base class for all matrix transposition expression templates.
Definition: MatTransExpr.h:69
Base class for all matrix/vector multiplication expression templates.
Definition: MatVecMultExpr.h:69
Base class for all single LSE solver expression templates.
Definition: MatVecSolveExpr.h:69
Base class for all multiplication expression templates.
Definition: MultExpr.h:70
Base class for all no-alias expression templates.
Definition: NoAliasExpr.h:68
Base class for all no-SIMD expression templates.
Definition: NoSIMDExpr.h:68
Base class for all reduction expression templates.
Definition: ReduceExpr.h:68
Base class for all for-each expression templates.
Definition: RepeatExpr.h:68
Base class for all singular value expression templates.
Definition: SVDExpr.h:68
Base class for all Schur product expression templates.
Definition: SchurExpr.h:68
Base class for all serial evaluation expression templates.
Definition: SerialExpr.h:68
Base class for all LSE solver expression templates.
Definition: SolveExpr.h:68
Base class for all subtraction expression templates.
Definition: SubExpr.h:68
Base class for all vector/matrix multiplication expression templates.
Definition: TVecMatMultExpr.h:69
Base class for all transposition expression templates.
Definition: TransExpr.h:68
Base class for all for-each expression templates.
Definition: UnaryMapExpr.h:68
Base class for all vector evaluation expression templates.
Definition: VecEvalExpr.h:69
Base class for all vector expansion expression templates.
Definition: VecExpandExpr.h:69
Base class for all vector generator expression templates.
Definition: VecGenExpr.h:68
Base class for all unary vector map expression templates.
Definition: VecMapExpr.h:68
Base class for all vector no-alias expression templates.
Definition: VecNoAliasExpr.h:68
Base class for all vector no-SIMD expression templates.
Definition: VecNoSIMDExpr.h:88
Base class for all vector repeater expression templates.
Definition: VecRepeatExpr.h:69
Base class for all vector/scalar division expression templates.
Definition: VecScalarDivExpr.h:75
Base class for all vector/scalar multiplication expression templates.
Definition: VecScalarMultExpr.h:76
Base class for all vector serial evaluation expression templates.
Definition: VecSerialExpr.h:69
Base class for all outer map expression templates.
Definition: VecTVecMapExpr.h:68
Base class for all outer product expression templates.
Definition: VecTVecMultExpr.h:69
Base class for all vector transposition expression templates.
Definition: VecTransExpr.h:69
Base class for all vector/vector addition expression templates.
Definition: VecVecAddExpr.h:68
Base class for all vector/vector division expression templates.
Definition: VecVecDivExpr.h:68
Base class for all vector/vector Kronecker expression templates.
Definition: VecVecKronExpr.h:69
Base class for all binary vector map expression templates.
Definition: VecVecMapExpr.h:68
Base class for all vector/vector multiplication expression templates.
Definition: VecVecMultExpr.h:68
Base class for all vector/vector subtraction expression templates.
Definition: VecVecSubExpr.h:68
Base class for all views.
Definition: View.h:67
Header file for basic type definitions.