WPILibC++ 2023.4.3
SparseCore module

This module provides a sparse matrix representation, and basic associated matrix manipulations and operations. More...

Classes

class  Eigen::SparseMapBase< Derived, ReadOnlyAccessors >
 class SparseMapBase More...
 
class  Eigen::SparseMapBase< Derived, WriteAccessors >
 class SparseMapBase More...
 
class  Eigen::Map< SparseMatrix< MatScalar, MatOptions, MatIndex >, Options, StrideType >
 Specialization of class Map for SparseMatrix-like storage. More...
 
class  Eigen::TriangularViewImpl< MatrixType, Mode, Sparse >
 Base class for a triangular part in a sparse matrix. More...
 
class  Eigen::Ref< SparseMatrix< MatScalar, MatOptions, MatIndex >, Options, StrideType >
 A sparse matrix expression referencing an existing sparse expression. More...
 
class  Eigen::Ref< SparseVector< MatScalar, MatOptions, MatIndex >, Options, StrideType >
 A sparse vector expression referencing an existing sparse vector expression. More...
 
class  Eigen::SparseMatrixBase< Derived >
 Base class of any sparse matrices or sparse expressions. More...
 
class  Eigen::SparseView< MatrixType >
 Expression of a dense or sparse matrix with zero or too small values removed. More...
 
class  Eigen::SparseCompressedBase< Derived >
 Common base class for sparse [compressed]-{row|column}-storage format. More...
 
class  Eigen::SparseVector< _Scalar, _Options, _StorageIndex >
 a sparse vector class More...
 
class  Eigen::SparseSelfAdjointView< MatrixType, _Mode >
 Pseudo expression to manipulate a triangular sparse matrix as a selfadjoint matrix. More...
 
class  Eigen::Triplet< Scalar, StorageIndex >
 A small structure to hold a non zero as a triplet (i,j,value). More...
 
class  Eigen::SparseMatrix< _Scalar, _Options, _StorageIndex >
 A versatible sparse matrix representation. More...
 
class  Eigen::SparseSolverBase< Derived >
 A base class for sparse solvers. More...
 

Functions

const SparseView< Derived > Eigen::MatrixBase< Derived >::sparseView (const Scalar &m_reference=Scalar(0), const typename NumTraits< Scalar >::Real &m_epsilon=NumTraits< Scalar >::dummy_precision()) const
 

Detailed Description

This module provides a sparse matrix representation, and basic associated matrix manipulations and operations.

See the Sparse tutorial

This module depends on: Core.

Function Documentation

◆ sparseView()

template<typename Derived >
const SparseView< Derived > Eigen::MatrixBase< Derived >::sparseView ( const Scalar reference = Scalar(0),
const typename NumTraits< Scalar >::Real &  epsilon = NumTraits<Scalar>::dummy_precision() 
) const
Returns
a sparse expression of the dense expression *this with values smaller than reference * epsilon removed.

This method is typically used when prototyping to convert a quickly assembled dense Matrix D to a SparseMatrix S:

MatrixXd D(n,m);
S = D.sparseView(); // suppress numerical zeros (exact)
S = D.sparseView(reference);
S = D.sparseView(reference,epsilon);
A versatible sparse matrix representation.
Definition: SparseMatrix.h:98
#define S(label, offset, message)
Definition: Errors.h:118

where reference is a meaningful non zero reference value, and epsilon is a tolerance factor defaulting to NumTraits<Scalar>::dummy_precision().

See also
SparseMatrixBase::pruned(), class SparseView