Inheritance diagram for MappedSparseMatrix< _Scalar, _Flags, _Index >:Public Types | |
| enum | |
| typedef internal::conditional < NumTraits< Scalar > ::IsComplex, CwiseUnaryOp < internal::scalar_conjugate_op < Scalar >, Eigen::Transpose < const MappedSparseMatrix < _Scalar, _Flags, _Index > > >, Transpose< const MappedSparseMatrix< _Scalar, _Flags, _Index > > >::type | AdjointReturnType |
| typedef EigenBase < MappedSparseMatrix< _Scalar, _Flags, _Index > > | Base |
| typedef internal::traits < MappedSparseMatrix< _Scalar, _Flags, _Index > >::Index | Index |
| typedef internal::add_const_on_value_type_if_arithmetic < typename internal::packet_traits < Scalar >::type >::type | PacketReturnType |
| typedef internal::packet_traits < Scalar >::type | PacketScalar |
| typedef SparseMatrix< Scalar, Flags &RowMajorBit?RowMajor:ColMajor > | PlainObject |
| typedef internal::traits < MappedSparseMatrix< _Scalar, _Flags, _Index > >::Scalar | Scalar |
| typedef SparseMatrixBase | StorageBaseType |
| typedef internal::traits < MappedSparseMatrix< _Scalar, _Flags, _Index > >::StorageKind | StorageKind |
Public Member Functions | |
| void | addTo (Dest &dst) const |
| const AdjointReturnType | adjoint () const |
| void | applyThisOnTheLeft (Dest &dst) const |
| void | applyThisOnTheRight (Dest &dst) const |
| const CwiseBinaryOp < CustomBinaryOp, const MappedSparseMatrix< _Scalar, _Flags, _Index >, const OtherDerived > | binaryExpr (const Eigen::SparseMatrixBase< OtherDerived > &other, const CustomBinaryOp &func=CustomBinaryOp()) const |
| internal::cast_return_type < MappedSparseMatrix< _Scalar, _Flags, _Index >, const CwiseUnaryOp < internal::scalar_cast_op < typename internal::traits < MappedSparseMatrix< _Scalar, _Flags, _Index > >::Scalar, NewType >, const MappedSparseMatrix< _Scalar, _Flags, _Index > > >::type | cast () const |
| Scalar | coeff (Index row, Index col) const |
| Scalar & | coeffRef (Index row, Index col) |
| SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, 1 > | col (Index j) |
| const SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, 1 > | col (Index j) const |
| Index | cols () const |
| ConjugateReturnType | conjugate () const |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & | const_cast_derived () const |
| const MappedSparseMatrix < _Scalar, _Flags, _Index > & | const_derived () const |
| const CwiseUnaryOp < internal::scalar_abs_op < Scalar >, const MappedSparseMatrix< _Scalar, _Flags, _Index > > | cwiseAbs () const |
| const CwiseUnaryOp < internal::scalar_abs2_op < Scalar >, const MappedSparseMatrix< _Scalar, _Flags, _Index > > | cwiseAbs2 () const |
| const | CwiseBinaryOp (operator-)(const Eigen |
| const | CwiseBinaryOp (operator+)(const Eigen |
| const CwiseBinaryOp < std::equal_to< Scalar > , const MappedSparseMatrix < _Scalar, _Flags, _Index > , const OtherDerived > | cwiseEqual (const Eigen::SparseMatrixBase< OtherDerived > &other) const |
| const CwiseUnaryOp < std::binder1st < std::equal_to< Scalar > >, const MappedSparseMatrix < _Scalar, _Flags, _Index > > | cwiseEqual (const Scalar &s) const |
| const CwiseUnaryOp < internal::scalar_inverse_op < Scalar >, const MappedSparseMatrix< _Scalar, _Flags, _Index > > | cwiseInverse () const |
| const CwiseBinaryOp < internal::scalar_max_op < Scalar >, const MappedSparseMatrix< _Scalar, _Flags, _Index >, const OtherDerived > | cwiseMax (const Eigen::SparseMatrixBase< OtherDerived > &other) const |
| const CwiseBinaryOp < internal::scalar_max_op < Scalar >, const MappedSparseMatrix< _Scalar, _Flags, _Index >, const ConstantReturnType > | cwiseMax (const Scalar &other) const |
| const CwiseBinaryOp < internal::scalar_min_op < Scalar >, const MappedSparseMatrix< _Scalar, _Flags, _Index >, const OtherDerived > | cwiseMin (const Eigen::SparseMatrixBase< OtherDerived > &other) const |
| const CwiseBinaryOp < internal::scalar_min_op < Scalar >, const MappedSparseMatrix< _Scalar, _Flags, _Index >, const ConstantReturnType > | cwiseMin (const Scalar &other) const |
| const CwiseBinaryOp < std::not_equal_to< Scalar > , const MappedSparseMatrix < _Scalar, _Flags, _Index > , const OtherDerived > | cwiseNotEqual (const Eigen::SparseMatrixBase< OtherDerived > &other) const |
| const CwiseBinaryOp < internal::scalar_product_op < typename internal::traits < MappedSparseMatrix< _Scalar, _Flags, _Index > >::Scalar, typename internal::traits < OtherDerived >::Scalar > , const MappedSparseMatrix < _Scalar, _Flags, _Index > , const OtherDerived > | cwiseProduct (const Eigen::SparseMatrixBase< OtherDerived > &other) const |
| const EIGEN_SPARSE_CWISE_PRODUCT_RETURN_TYPE | cwiseProduct (const MatrixBase< OtherDerived > &other) const |
| const CwiseBinaryOp < internal::scalar_quotient_op < Scalar >, const MappedSparseMatrix< _Scalar, _Flags, _Index >, const OtherDerived > | cwiseQuotient (const Eigen::SparseMatrixBase< OtherDerived > &other) const |
| const CwiseUnaryOp < internal::scalar_sqrt_op < Scalar >, const MappedSparseMatrix< _Scalar, _Flags, _Index > > | cwiseSqrt () const |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & | derived () |
| const MappedSparseMatrix < _Scalar, _Flags, _Index > & | derived () const |
| Scalar | dot (const MatrixBase< OtherDerived > &other) const |
| Scalar | dot (const SparseMatrixBase< OtherDerived > &other) const |
| const internal::eval < MappedSparseMatrix< _Scalar, _Flags, _Index > >::type | eval () const |
| void | evalTo (Dest &dst) const |
| void | evalTo (MatrixBase< DenseDerived > &dst) const |
| const ImagReturnType | imag () const |
| NonConstImagReturnType | imag () |
| const Index * | innerIndexPtr () const |
| Index * | innerIndexPtr () |
| Index | innerSize () const |
| SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, 1 > | innerVector (Index outer) |
| const SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, 1 > | innerVector (Index outer) const |
| SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, Dynamic > | innerVectors (Index outerStart, Index outerSize) |
| const SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, Dynamic > | innerVectors (Index outerStart, Index outerSize) const |
| bool | isApprox (const SparseMatrixBase< OtherDerived > &other, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const |
| bool | isApprox (const MatrixBase< OtherDerived > &other, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const |
| bool | isRValue () const |
| bool | isVector () const |
| MappedSparseMatrix (Index rows, Index cols, Index nnz, Index *outerIndexPtr, Index *innerIndexPtr, Scalar *valuePtr) | |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & | markAsRValue () |
| SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, Dynamic > | middleCols (Index start, Index size) |
| const SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, Dynamic > | middleCols (Index start, Index size) const |
| SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, Dynamic > | middleRows (Index start, Index size) |
| const SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, Dynamic > | middleRows (Index start, Index size) const |
| Index | nonZeros () const |
| RealScalar | norm () const |
| const ScalarMultipleReturnType | operator* (const Scalar &scalar) const |
| const ScalarMultipleReturnType | operator* (const RealScalar &scalar) const |
| const CwiseUnaryOp < internal::scalar_multiple2_op < Scalar, std::complex< Scalar > >, const MappedSparseMatrix < _Scalar, _Flags, _Index > > | operator* (const std::complex< Scalar > &scalar) const |
| const SparseSparseProductReturnType < MappedSparseMatrix< _Scalar, _Flags, _Index >, OtherDerived > ::Type | operator* (const SparseMatrixBase< OtherDerived > &other) const |
| const SparseDiagonalProduct < MappedSparseMatrix< _Scalar, _Flags, _Index >, OtherDerived > | operator* (const DiagonalBase< OtherDerived > &other) const |
| const SparseDenseProductReturnType < MappedSparseMatrix< _Scalar, _Flags, _Index >, OtherDerived > ::Type | operator* (const MatrixBase< OtherDerived > &other) const |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & | operator*= (const Scalar &other) |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & | operator*= (const SparseMatrixBase< OtherDerived > &other) |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & | operator+= (const SparseMatrixBase< OtherDerived > &other) |
| const CwiseUnaryOp < internal::scalar_opposite_op < typename internal::traits < MappedSparseMatrix< _Scalar, _Flags, _Index > >::Scalar > , const MappedSparseMatrix < _Scalar, _Flags, _Index > > | operator- () const |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & | operator-= (const SparseMatrixBase< OtherDerived > &other) |
| const CwiseUnaryOp < internal::scalar_quotient1_op < typename internal::traits < MappedSparseMatrix< _Scalar, _Flags, _Index > >::Scalar > , const MappedSparseMatrix < _Scalar, _Flags, _Index > > | operator/ (const Scalar &scalar) const |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & | operator/= (const Scalar &other) |
| const Index * | outerIndexPtr () const |
| Index * | outerIndexPtr () |
| Index | outerSize () const |
| RealReturnType | real () const |
| NonConstRealReturnType | real () |
| SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, 1 > | row (Index i) |
| const SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, 1 > | row (Index i) const |
| Index | rows () const |
| const SparseSelfAdjointView < MappedSparseMatrix< _Scalar, _Flags, _Index >, UpLo > | selfadjointView () const |
| SparseSelfAdjointView < MappedSparseMatrix< _Scalar, _Flags, _Index >, UpLo > | selfadjointView () |
| Index | size () const |
| RealScalar | squaredNorm () const |
| SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, Dynamic > | subcols (Index start, Index size) |
| const SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, Dynamic > | subcols (Index start, Index size) const |
| SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, Dynamic > | subrows (Index start, Index size) |
| const SparseInnerVectorSet < MappedSparseMatrix< _Scalar, _Flags, _Index >, Dynamic > | subrows (Index start, Index size) const |
| void | subTo (Dest &dst) const |
| Scalar | sum () const |
| Matrix< Scalar, RowsAtCompileTime, ColsAtCompileTime > | toDense () const |
| Transpose< MappedSparseMatrix < _Scalar, _Flags, _Index > > | transpose () |
| const Transpose< const MappedSparseMatrix< _Scalar, _Flags, _Index > > | transpose () const |
| const SparseTriangularView < MappedSparseMatrix< _Scalar, _Flags, _Index >, Mode > | triangularView () const |
| SparseSymmetricPermutationProduct < MappedSparseMatrix< _Scalar, _Flags, _Index >, Upper|Lower > | twistedBy (const PermutationMatrix< Dynamic, Dynamic, Index > &perm) const |
| const CwiseUnaryOp < CustomUnaryOp, const MappedSparseMatrix< _Scalar, _Flags, _Index > > | unaryExpr (const CustomUnaryOp &func=CustomUnaryOp()) const |
| Apply a unary operator coefficient-wise. | |
| const CwiseUnaryView < CustomViewOp, const MappedSparseMatrix< _Scalar, _Flags, _Index > > | unaryViewExpr (const CustomViewOp &func=CustomViewOp()) const |
| const Scalar * | valuePtr () const |
| Scalar * | valuePtr () |
| ~MappedSparseMatrix () | |
Protected Types | |
| enum | { IsRowMajor } |
Protected Member Functions | |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & | assign (const OtherDerived &other) |
| void | assignGeneric (const OtherDerived &other) |
Protected Attributes | |
| Index * | m_innerIndices |
| Index | m_innerSize |
| bool | m_isRValue |
| Index | m_nnz |
| Index * | m_outerIndex |
| Index | m_outerSize |
| Scalar * | m_values |
Friends | |
| const ScalarMultipleReturnType | operator* (const Scalar &scalar, const StorageBaseType &matrix) |
| const CwiseUnaryOp < internal::scalar_multiple2_op < Scalar, std::complex< Scalar > >, const MappedSparseMatrix < _Scalar, _Flags, _Index > > | operator* (const std::complex< Scalar > &scalar, const StorageBaseType &matrix) |
| const SparseDiagonalProduct < OtherDerived, MappedSparseMatrix< _Scalar, _Flags, _Index > > | operator* (const DiagonalBase< OtherDerived > &lhs, const SparseMatrixBase &rhs) |
| const DenseSparseProductReturnType < OtherDerived, MappedSparseMatrix< _Scalar, _Flags, _Index > >::Type | operator* (const MatrixBase< OtherDerived > &lhs, const MappedSparseMatrix< _Scalar, _Flags, _Index > &rhs) |
| std::ostream & | operator<< (std::ostream &s, const SparseMatrixBase &m) |
Sparse matrix.
| _Scalar | the scalar type, i.e. the type of the coefficients |
See http://www.netlib.org/linalg/html_templates/node91.html for details on the storage scheme.
typedef internal::conditional<NumTraits<Scalar>::IsComplex, CwiseUnaryOp<internal::scalar_conjugate_op<Scalar>, Eigen::Transpose<const MappedSparseMatrix< _Scalar, _Flags, _Index > > >, Transpose<const MappedSparseMatrix< _Scalar, _Flags, _Index > > >::type AdjointReturnType [inherited] |
typedef EigenBase<MappedSparseMatrix< _Scalar, _Flags, _Index > > Base [inherited] |
typedef internal::traits<MappedSparseMatrix< _Scalar, _Flags, _Index > >::Index Index [inherited] |
Reimplemented from EigenBase< MappedSparseMatrix< _Scalar, _Flags, _Index > >.
typedef internal::add_const_on_value_type_if_arithmetic< typename internal::packet_traits<Scalar>::type >::type PacketReturnType [inherited] |
typedef internal::packet_traits<Scalar>::type PacketScalar [inherited] |
typedef SparseMatrix<Scalar, Flags&RowMajorBit ? RowMajor : ColMajor> PlainObject [inherited] |
typedef internal::traits<MappedSparseMatrix< _Scalar, _Flags, _Index > >::Scalar Scalar [inherited] |
typedef SparseMatrixBase StorageBaseType [inherited] |
typedef internal::traits<MappedSparseMatrix< _Scalar, _Flags, _Index > >::StorageKind StorageKind [inherited] |
Reimplemented from EigenBase< MappedSparseMatrix< _Scalar, _Flags, _Index > >.
anonymous enum [inherited] |
| MappedSparseMatrix | ( | Index | rows, |
| Index | cols, | ||
| Index | nnz, | ||
| Index * | outerIndexPtr, | ||
| Index * | innerIndexPtr, | ||
| Scalar * | valuePtr | ||
| ) | [inline] |
| ~MappedSparseMatrix | ( | ) | [inline] |
Empty destructor
| void addTo | ( | Dest & | dst | ) | const [inline, inherited] |
| const AdjointReturnType adjoint | ( | ) | const [inline, inherited] |
| void applyThisOnTheLeft | ( | Dest & | dst | ) | const [inline, inherited] |
| void applyThisOnTheRight | ( | Dest & | dst | ) | const [inline, inherited] |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & assign | ( | const OtherDerived & | other | ) | [inline, protected, inherited] |
| void assignGeneric | ( | const OtherDerived & | other | ) | [inline, protected, inherited] |
| const CwiseBinaryOp<CustomBinaryOp, const MappedSparseMatrix< _Scalar, _Flags, _Index > , const OtherDerived> binaryExpr | ( | const Eigen::SparseMatrixBase< OtherDerived > & | other, |
| const CustomBinaryOp & | func = CustomBinaryOp() |
||
| ) | const [inline, inherited] |
The template parameter CustomBinaryOp is the type of the functor of the custom operator (see class CwiseBinaryOp for an example)
Here is an example illustrating the use of custom functors:
#include <Eigen/Core> #include <iostream> using namespace Eigen; using namespace std; // define a custom template binary functor template<typename Scalar> struct MakeComplexOp { EIGEN_EMPTY_STRUCT_CTOR(MakeComplexOp) typedef complex<Scalar> result_type; complex<Scalar> operator()(const Scalar& a, const Scalar& b) const { return complex<Scalar>(a,b); } }; int main(int, char**) { Matrix4d m1 = Matrix4d::Random(), m2 = Matrix4d::Random(); cout << m1.binaryExpr(m2, MakeComplexOp<double>()) << endl; return 0; }
Output:
(0.68,0.271) (0.823,-0.967) (-0.444,-0.687) (-0.27,0.998) (-0.211,0.435) (-0.605,-0.514) (0.108,-0.198) (0.0268,-0.563) (0.566,-0.717) (-0.33,-0.726) (-0.0452,-0.74) (0.904,0.0259) (0.597,0.214) (0.536,0.608) (0.258,-0.782) (0.832,0.678)
| internal::cast_return_type<MappedSparseMatrix< _Scalar, _Flags, _Index > ,const CwiseUnaryOp<internal::scalar_cast_op<typename internal::traits<MappedSparseMatrix< _Scalar, _Flags, _Index > >::Scalar, NewType>, const MappedSparseMatrix< _Scalar, _Flags, _Index > > >::type cast | ( | ) | const [inline, inherited] |
The template parameter NewScalar is the type we are casting the scalars to.
| SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,1> col | ( | Index | j | ) | [inherited] |
*this. For column-major matrix only. | const SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,1> col | ( | Index | j | ) | const [inherited] |
*this. For column-major matrix only. (read-only version) | Index cols | ( | void | ) | const [inline] |
Reimplemented from SparseMatrixBase< MappedSparseMatrix< _Scalar, _Flags, _Index > >.
| ConjugateReturnType conjugate | ( | ) | const [inline, inherited] |
*this.| MappedSparseMatrix< _Scalar, _Flags, _Index > & const_cast_derived | ( | ) | const [inline, inherited] |
| const MappedSparseMatrix< _Scalar, _Flags, _Index > & const_derived | ( | ) | const [inline, inherited] |
| const CwiseUnaryOp<internal::scalar_abs_op<Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > > cwiseAbs | ( | ) | const [inline, inherited] |
*this Example:
MatrixXd m(2,3); m << 2, -4, 6, -5, 1, 0; cout << m.cwiseAbs() << endl;
Output:
2 4 6 5 1 0
| const CwiseUnaryOp<internal::scalar_abs2_op<Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > > cwiseAbs2 | ( | ) | const [inline, inherited] |
*this Example:
MatrixXd m(2,3); m << 2, -4, 6, -5, 1, 0; cout << m.cwiseAbs2() << endl;
Output:
4 16 36 25 1 0
| const CwiseBinaryOp | ( | operator- | ) | const [inline, inherited] |
*this and other | const CwiseBinaryOp | ( | operator+ | ) | const [inline, inherited] |
*this and other | const CwiseBinaryOp<std::equal_to<Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > , const OtherDerived> cwiseEqual | ( | const Eigen::SparseMatrixBase< OtherDerived > & | other | ) | const [inline, inherited] |
Example:
MatrixXi m(2,2); m << 1, 0, 1, 1; cout << "Comparing m with identity matrix:" << endl; cout << m.cwiseEqual(MatrixXi::Identity(2,2)) << endl; int count = m.cwiseEqual(MatrixXi::Identity(2,2)).count(); cout << "Number of coefficients that are equal: " << count << endl;
Output:
Comparing m with identity matrix: 1 1 0 1 Number of coefficients that are equal: 3
| const CwiseUnaryOp<std::binder1st<std::equal_to<Scalar> >, const MappedSparseMatrix< _Scalar, _Flags, _Index > > cwiseEqual | ( | const Scalar & | s | ) | const [inline, inherited] |
*this and a scalar s | const CwiseUnaryOp<internal::scalar_inverse_op<Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > > cwiseInverse | ( | ) | const [inline, inherited] |
Example:
MatrixXd m(2,3); m << 2, 0.5, 1, 3, 0.25, 1; cout << m.cwiseInverse() << endl;
Output:
0.5 2 1 0.333 4 1
| const CwiseBinaryOp<internal::scalar_max_op<Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > , const OtherDerived> cwiseMax | ( | const Eigen::SparseMatrixBase< OtherDerived > & | other | ) | const [inline, inherited] |
Example:
Vector3d v(2,3,4), w(4,2,3); cout << v.cwiseMax(w) << endl;
Output:
4 3 4
| const CwiseBinaryOp<internal::scalar_max_op<Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > , const ConstantReturnType> cwiseMax | ( | const Scalar & | other | ) | const [inline, inherited] |
| const CwiseBinaryOp<internal::scalar_min_op<Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > , const OtherDerived> cwiseMin | ( | const Eigen::SparseMatrixBase< OtherDerived > & | other | ) | const [inline, inherited] |
Example:
Vector3d v(2,3,4), w(4,2,3); cout << v.cwiseMin(w) << endl;
Output:
2 2 3
| const CwiseBinaryOp<internal::scalar_min_op<Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > , const ConstantReturnType> cwiseMin | ( | const Scalar & | other | ) | const [inline, inherited] |
| const CwiseBinaryOp<std::not_equal_to<Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > , const OtherDerived> cwiseNotEqual | ( | const Eigen::SparseMatrixBase< OtherDerived > & | other | ) | const [inline, inherited] |
Example:
MatrixXi m(2,2); m << 1, 0, 1, 1; cout << "Comparing m with identity matrix:" << endl; cout << m.cwiseNotEqual(MatrixXi::Identity(2,2)) << endl; int count = m.cwiseNotEqual(MatrixXi::Identity(2,2)).count(); cout << "Number of coefficients that are not equal: " << count << endl;
Output:
Comparing m with identity matrix: 0 0 1 0 Number of coefficients that are not equal: 1
| const CwiseBinaryOp< internal::scalar_product_op< typename internal::traits< MappedSparseMatrix< _Scalar, _Flags, _Index > >::Scalar, typename internal::traits< OtherDerived >::Scalar >, const MappedSparseMatrix< _Scalar, _Flags, _Index > , const OtherDerived > cwiseProduct | ( | const Eigen::SparseMatrixBase< OtherDerived > & | other | ) | const [inline, inherited] |
Example:
Matrix3i a = Matrix3i::Random(), b = Matrix3i::Random(); Matrix3i c = a.cwiseProduct(b); cout << "a:\n" << a << "\nb:\n" << b << "\nc:\n" << c << endl;
Output:
a: 7 6 -3 -2 9 6 6 -6 -5 b: 1 -3 9 0 0 3 3 9 5 c: 7 -18 -27 0 0 18 18 -54 -25
| const EIGEN_SPARSE_CWISE_PRODUCT_RETURN_TYPE cwiseProduct | ( | const MatrixBase< OtherDerived > & | other | ) | const [inline, inherited] |
| const CwiseBinaryOp<internal::scalar_quotient_op<Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > , const OtherDerived> cwiseQuotient | ( | const Eigen::SparseMatrixBase< OtherDerived > & | other | ) | const [inline, inherited] |
Example:
Vector3d v(2,3,4), w(4,2,3); cout << v.cwiseQuotient(w) << endl;
Output:
0.5 1.5 1.33
| const CwiseUnaryOp<internal::scalar_sqrt_op<Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > > cwiseSqrt | ( | ) | const [inline, inherited] |
Example:
Vector3d v(1,2,4); cout << v.cwiseSqrt() << endl;
Output:
1 1.41 2
| MappedSparseMatrix< _Scalar, _Flags, _Index > & derived | ( | ) | [inline, inherited] |
| const MappedSparseMatrix< _Scalar, _Flags, _Index > & derived | ( | ) | const [inline, inherited] |
| Scalar dot | ( | const MatrixBase< OtherDerived > & | other | ) | const [inherited] |
| Scalar dot | ( | const SparseMatrixBase< OtherDerived > & | other | ) | const [inherited] |
| const internal::eval<MappedSparseMatrix< _Scalar, _Flags, _Index > >::type eval | ( | ) | const [inline, inherited] |
Notice that in the case of a plain matrix or vector (not an expression) this function just returns a const reference, in order to avoid a useless copy.
| void evalTo | ( | Dest & | dst | ) | const [inline, inherited] |
| void evalTo | ( | MatrixBase< DenseDerived > & | dst | ) | const [inline, inherited] |
| const ImagReturnType imag | ( | ) | const [inline, inherited] |
*this.| NonConstImagReturnType imag | ( | ) | [inline, inherited] |
*this.| const Index* innerIndexPtr | ( | ) | const [inline] |
| Index* innerIndexPtr | ( | ) | [inline] |
| Index innerSize | ( | ) | const [inline] |
Reimplemented from SparseMatrixBase< MappedSparseMatrix< _Scalar, _Flags, _Index > >.
| SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,1> innerVector | ( | Index | outer | ) | [inherited] |
*this if *this is col-major (resp. row-major). | const SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,1> innerVector | ( | Index | outer | ) | const [inherited] |
*this if *this is col-major (resp. row-major). Read-only. | SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,Dynamic> innerVectors | ( | Index | outerStart, |
| Index | outerSize | ||
| ) | [inherited] |
*this if *this is col-major (resp. row-major). | const SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,Dynamic> innerVectors | ( | Index | outerStart, |
| Index | outerSize | ||
| ) | const [inherited] |
*this if *this is col-major (resp. row-major). Read-only. | bool isApprox | ( | const SparseMatrixBase< OtherDerived > & | other, |
| RealScalar | prec = NumTraits<Scalar>::dummy_precision() |
||
| ) | const [inline, inherited] |
| bool isApprox | ( | const MatrixBase< OtherDerived > & | other, |
| RealScalar | prec = NumTraits<Scalar>::dummy_precision() |
||
| ) | const [inline, inherited] |
| bool isRValue | ( | ) | const [inline, inherited] |
| bool isVector | ( | ) | const [inline, inherited] |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & markAsRValue | ( | ) | [inline, inherited] |
| SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,Dynamic> middleCols | ( | Index | start, |
| Index | size | ||
| ) | [inherited] |
*this. For column-major matrix only. | const SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,Dynamic> middleCols | ( | Index | start, |
| Index | size | ||
| ) | const [inherited] |
*this. For column-major matrix only. (read-only version) | SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,Dynamic> middleRows | ( | Index | start, |
| Index | size | ||
| ) | [inherited] |
*this. For row-major matrix only. | const SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,Dynamic> middleRows | ( | Index | start, |
| Index | size | ||
| ) | const [inherited] |
*this. For row-major matrix only. (read-only version) | Index nonZeros | ( | ) | const [inline] |
Reimplemented from SparseMatrixBase< MappedSparseMatrix< _Scalar, _Flags, _Index > >.
| RealScalar norm | ( | ) | const [inherited] |
| const ScalarMultipleReturnType operator* | ( | const Scalar & | scalar | ) | const [inline, inherited] |
*this scaled by the scalar factor scalar | const ScalarMultipleReturnType operator* | ( | const RealScalar & | scalar | ) | const [inherited] |
| const CwiseUnaryOp<internal::scalar_multiple2_op<Scalar,std::complex<Scalar> >, const MappedSparseMatrix< _Scalar, _Flags, _Index > > operator* | ( | const std::complex< Scalar > & | scalar | ) | const [inline, inherited] |
Overloaded for efficient real matrix times complex scalar value
| const SparseSparseProductReturnType<MappedSparseMatrix< _Scalar, _Flags, _Index > ,OtherDerived>::Type operator* | ( | const SparseMatrixBase< OtherDerived > & | other | ) | const [inherited] |
C = (A*B).pruned(); // supress numerical zeros (exact)
C = (A*B).pruned(ref);
C = (A*B).pruned(ref,epsilon);
ref is a meaningful non zero reference value. | const SparseDiagonalProduct<MappedSparseMatrix< _Scalar, _Flags, _Index > ,OtherDerived> operator* | ( | const DiagonalBase< OtherDerived > & | other | ) | const [inherited] |
| const SparseDenseProductReturnType<MappedSparseMatrix< _Scalar, _Flags, _Index > ,OtherDerived>::Type operator* | ( | const MatrixBase< OtherDerived > & | other | ) | const [inherited] |
sparse * dense (returns a dense object unless it is an outer product)
| MappedSparseMatrix< _Scalar, _Flags, _Index > & operator*= | ( | const Scalar & | other | ) | [inherited] |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & operator*= | ( | const SparseMatrixBase< OtherDerived > & | other | ) | [inherited] |
| MappedSparseMatrix< _Scalar, _Flags, _Index > & operator+= | ( | const SparseMatrixBase< OtherDerived > & | other | ) | [inherited] |
| const CwiseUnaryOp<internal::scalar_opposite_op<typename internal::traits<MappedSparseMatrix< _Scalar, _Flags, _Index > >::Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > > operator- | ( | ) | const [inline, inherited] |
*this | MappedSparseMatrix< _Scalar, _Flags, _Index > & operator-= | ( | const SparseMatrixBase< OtherDerived > & | other | ) | [inherited] |
| const CwiseUnaryOp<internal::scalar_quotient1_op<typename internal::traits<MappedSparseMatrix< _Scalar, _Flags, _Index > >::Scalar>, const MappedSparseMatrix< _Scalar, _Flags, _Index > > operator/ | ( | const Scalar & | scalar | ) | const [inline, inherited] |
*this divided by the scalar value scalar | MappedSparseMatrix< _Scalar, _Flags, _Index > & operator/= | ( | const Scalar & | other | ) | [inherited] |
| const Index* outerIndexPtr | ( | ) | const [inline] |
| Index* outerIndexPtr | ( | ) | [inline] |
| Index outerSize | ( | ) | const [inline] |
Reimplemented from SparseMatrixBase< MappedSparseMatrix< _Scalar, _Flags, _Index > >.
| RealReturnType real | ( | ) | const [inline, inherited] |
*this.| NonConstRealReturnType real | ( | ) | [inline, inherited] |
*this.| SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,1> row | ( | Index | i | ) | [inherited] |
*this. For row-major matrix only. | const SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,1> row | ( | Index | i | ) | const [inherited] |
*this. For row-major matrix only. (read-only version) | Index rows | ( | void | ) | const [inline] |
Reimplemented from SparseMatrixBase< MappedSparseMatrix< _Scalar, _Flags, _Index > >.
| const SparseSelfAdjointView<MappedSparseMatrix< _Scalar, _Flags, _Index > , UpLo> selfadjointView | ( | ) | const [inline, inherited] |
| SparseSelfAdjointView<MappedSparseMatrix< _Scalar, _Flags, _Index > , UpLo> selfadjointView | ( | ) | [inline, inherited] |
| Index size | ( | ) | const [inline, inherited] |
Reimplemented from EigenBase< MappedSparseMatrix< _Scalar, _Flags, _Index > >.
| RealScalar squaredNorm | ( | ) | const [inherited] |
| SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,Dynamic> subcols | ( | Index | start, |
| Index | size | ||
| ) | [inherited] |
| const SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,Dynamic> subcols | ( | Index | start, |
| Index | size | ||
| ) | const [inherited] |
| SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,Dynamic> subrows | ( | Index | start, |
| Index | size | ||
| ) | [inherited] |
| const SparseInnerVectorSet<MappedSparseMatrix< _Scalar, _Flags, _Index > ,Dynamic> subrows | ( | Index | start, |
| Index | size | ||
| ) | const [inherited] |
| void subTo | ( | Dest & | dst | ) | const [inline, inherited] |
| Scalar sum | ( | ) | const [inherited] |
| Transpose<MappedSparseMatrix< _Scalar, _Flags, _Index > > transpose | ( | ) | [inline, inherited] |
| const Transpose<const MappedSparseMatrix< _Scalar, _Flags, _Index > > transpose | ( | ) | const [inline, inherited] |
| const SparseTriangularView<MappedSparseMatrix< _Scalar, _Flags, _Index > , Mode> triangularView | ( | ) | const [inline, inherited] |
| SparseSymmetricPermutationProduct<MappedSparseMatrix< _Scalar, _Flags, _Index > ,Upper|Lower> twistedBy | ( | const PermutationMatrix< Dynamic, Dynamic, Index > & | perm | ) | const [inline, inherited] |
| const CwiseUnaryOp<CustomUnaryOp, const MappedSparseMatrix< _Scalar, _Flags, _Index > > unaryExpr | ( | const CustomUnaryOp & | func = CustomUnaryOp() | ) | const [inline, inherited] |
Apply a unary operator coefficient-wise.
| [in] | func | Functor implementing the unary operator |
| CustomUnaryOp | Type of func |
The function ptr_fun() from the C++ standard library can be used to make functors out of normal functions.
Example:
#include <Eigen/Core> #include <iostream> using namespace Eigen; using namespace std; // define function to be applied coefficient-wise double ramp(double x) { if (x > 0) return x; else return 0; } int main(int, char**) { Matrix4d m1 = Matrix4d::Random(); cout << m1 << endl << "becomes: " << endl << m1.unaryExpr(ptr_fun(ramp)) << endl; return 0; }
Output:
0.68 0.823 -0.444 -0.27
-0.211 -0.605 0.108 0.0268
0.566 -0.33 -0.0452 0.904
0.597 0.536 0.258 0.832
becomes:
0.68 0.823 0 0
0 0 0.108 0.0268
0.566 0 0 0.904
0.597 0.536 0.258 0.832
Genuine functors allow for more possibilities, for instance it may contain a state.
Example:
#include <Eigen/Core> #include <iostream> using namespace Eigen; using namespace std; // define a custom template unary functor template<typename Scalar> struct CwiseClampOp { CwiseClampOp(const Scalar& inf, const Scalar& sup) : m_inf(inf), m_sup(sup) {} const Scalar operator()(const Scalar& x) const { return x<m_inf ? m_inf : (x>m_sup ? m_sup : x); } Scalar m_inf, m_sup; }; int main(int, char**) { Matrix4d m1 = Matrix4d::Random(); cout << m1 << endl << "becomes: " << endl << m1.unaryExpr(CwiseClampOp<double>(-0.5,0.5)) << endl; return 0; }
Output:
0.68 0.823 -0.444 -0.27
-0.211 -0.605 0.108 0.0268
0.566 -0.33 -0.0452 0.904
0.597 0.536 0.258 0.832
becomes:
0.5 0.5 -0.444 -0.27
-0.211 -0.5 0.108 0.0268
0.5 -0.33 -0.0452 0.5
0.5 0.5 0.258 0.5
| const CwiseUnaryView<CustomViewOp, const MappedSparseMatrix< _Scalar, _Flags, _Index > > unaryViewExpr | ( | const CustomViewOp & | func = CustomViewOp() | ) | const [inline, inherited] |
The template parameter CustomUnaryOp is the type of the functor of the custom unary operator.
Example:
#include <Eigen/Core> #include <iostream> using namespace Eigen; using namespace std; // define a custom template unary functor template<typename Scalar> struct CwiseClampOp { CwiseClampOp(const Scalar& inf, const Scalar& sup) : m_inf(inf), m_sup(sup) {} const Scalar operator()(const Scalar& x) const { return x<m_inf ? m_inf : (x>m_sup ? m_sup : x); } Scalar m_inf, m_sup; }; int main(int, char**) { Matrix4d m1 = Matrix4d::Random(); cout << m1 << endl << "becomes: " << endl << m1.unaryExpr(CwiseClampOp<double>(-0.5,0.5)) << endl; return 0; }
Output:
0.68 0.823 -0.444 -0.27
-0.211 -0.605 0.108 0.0268
0.566 -0.33 -0.0452 0.904
0.597 0.536 0.258 0.832
becomes:
0.5 0.5 -0.444 -0.27
-0.211 -0.5 0.108 0.0268
0.5 -0.33 -0.0452 0.5
0.5 0.5 0.258 0.5
| const Scalar* valuePtr | ( | ) | const [inline] |
| Scalar* valuePtr | ( | ) | [inline] |
| const ScalarMultipleReturnType operator* | ( | const Scalar & | scalar, |
| const StorageBaseType & | matrix | ||
| ) | [friend, inherited] |
| const CwiseUnaryOp<internal::scalar_multiple2_op<Scalar,std::complex<Scalar> >, const MappedSparseMatrix< _Scalar, _Flags, _Index > > operator* | ( | const std::complex< Scalar > & | scalar, |
| const StorageBaseType & | matrix | ||
| ) | [friend, inherited] |
| const SparseDiagonalProduct<OtherDerived,MappedSparseMatrix< _Scalar, _Flags, _Index > > operator* | ( | const DiagonalBase< OtherDerived > & | lhs, |
| const SparseMatrixBase< MappedSparseMatrix< _Scalar, _Flags, _Index > > & | rhs | ||
| ) | [friend, inherited] |
| const DenseSparseProductReturnType<OtherDerived,MappedSparseMatrix< _Scalar, _Flags, _Index > >::Type operator* | ( | const MatrixBase< OtherDerived > & | lhs, |
| const MappedSparseMatrix< _Scalar, _Flags, _Index > & | rhs | ||
| ) | [friend, inherited] |
dense * sparse (return a dense object unless it is an outer product)
| std::ostream& operator<< | ( | std::ostream & | s, |
| const SparseMatrixBase< MappedSparseMatrix< _Scalar, _Flags, _Index > > & | m | ||
| ) | [friend, inherited] |
Index* m_innerIndices [protected] |
Index m_innerSize [protected] |
bool m_isRValue [protected, inherited] |
Index* m_outerIndex [protected] |
Index m_outerSize [protected] |
1.7.5.1