10 #ifndef EIGEN_SKYLINE_STORAGE_H 11 #define EIGEN_SKYLINE_STORAGE_H 21 template<
typename Scalar>
88 Index newAllocatedSize = size + upperSize +
lowerSize;
90 reallocate(size, upperProfileSize, lowerProfileSize, upperSize, lowerSize);
100 reallocate(diagSize, upperProfileSize, lowerProfileSize, upperSize +
Index(reserveSizeFactor * upperSize), lowerSize +
Index(reserveSizeFactor * lowerSize));
197 void prune(
Scalar reference, RealScalar epsilon = dummy_precision<RealScalar>()) {
221 memcpy(upperProfile,
m_upperProfile, copyUpperProfileSize *
sizeof (Index));
222 memcpy(lowerProfile,
m_lowerProfile, copyLowerProfileSize *
sizeof (Index));
259 #endif // EIGEN_COMPRESSED_STORAGE_H
SkylineStorage(const SkylineStorage &other)
const Scalar & diag(Index i) const
Index allocatedSize() const
void prune(Scalar reference, RealScalar epsilon=dummy_precision< RealScalar >())
static constexpr size_t size(Tuple< Args... > &)
Provides access to the number of elements in a tuple as a compile-time constant expression.
Holds information about the various numeric (i.e. scalar) types allowed by Eigen. ...
SkylineStorage & operator=(const SkylineStorage &other)
void reallocate(Index diagSize, Index upperProfileSize, Index lowerProfileSize, Index upperSize, Index lowerSize)
NumTraits< Scalar >::Real RealScalar
const Scalar & lower(Index i) const
int EIGEN_BLAS_FUNC() swap(int *n, RealScalar *px, int *incx, RealScalar *py, int *incy)
void reserve(Index size, Index upperProfileSize, Index lowerProfileSize, Index upperSize, Index lowerSize)
const Index & lowerProfile(Index i) const
void swap(SkylineStorage &other)
Index upperProfileSize() const
const Index & upperProfile(Index i) const
void resize(Index diagSize, Index upperProfileSize, Index lowerProfileSize, Index upperSize, Index lowerSize, float reserveSizeFactor=0)
const Scalar & upper(Index i) const
Index lowerProfileSize() const
Index & upperProfile(Index i)
Index & lowerProfile(Index i)
static SkylineStorage Map(Index *upperProfile, Index *lowerProfile, Scalar *diag, Scalar *upper, Scalar *lower, Index size, Index upperSize, Index lowerSize)