|
ADOL-C: Automatic Differentiation in C/C++ 2.7.3
|
Cached sparse Jacobian recovery data stored on a tape. More...
#include <sparseinfos.h>

Public Member Functions | |
| ~SparseJacInfos () | |
| SparseJacInfos () | |
| SparseJacInfos (const SparseJacInfos &)=delete | |
| SparseJacInfos (SparseJacInfos &&other) noexcept | |
| SparseJacInfos & | operator= (const SparseJacInfos &)=delete |
| SparseJacInfos & | operator= (SparseJacInfos &&other) noexcept |
| void | setJP (std::vector< uint * > &&JPIn) |
| Replace the cached sparsity pattern. | |
| std::vector< uint * > & | getJP () |
| Access the cached CRS Jacobian pattern. | |
| void | initColoring (int dimOut, int dimIn) |
| Initialize ColPack coloring state for the given matrix shape. | |
| void | generateSeedJac (const std::string &coloringVariant) |
| Generate and cache a Jacobian seed matrix. | |
| void | recoverRowFormatUserMem (SparseMatrix &sparseJac) const |
Recover row-compressed sparse Jacobian entries into SparseMatrix. | |
| void | recoverRowFormat (SparseMatrix &sparseJac) const |
| Resize and recover a row-compressed sparse Jacobian. | |
| void | recoverColFormatUserMem (SparseMatrix &sparseJac) const |
Recover column-compressed sparse Jacobian entries into SparseMatrix. | |
| void | recoverColFormat (SparseMatrix &sparseJac) const |
| Resize and recover a column-compressed sparse Jacobian. | |
| void | recoverANFUserMem (SparseANF &sparseANF, int indep, int numSwitches) const |
| Split the recovered extended Jacobian into caller-sized ANF blocks. | |
| void | recoverANF (SparseANF &sparseANF, int indep, int numSwitches) const |
| Split the recovered extended Jacobian into abs-normal blocks. | |
Public Attributes | |
| std::unique_ptr< Impl > | pimpl_ |
| double * | y_ {nullptr} |
| double ** | Seed_ {nullptr} |
| double ** | B_ {nullptr} |
| std::vector< uint * > | JP_ |
| int | depen_ {0} |
| int | nnzIn_ {0} |
| int | seedClms_ {0} |
| int | seedRows_ {0} |
Cached sparse Jacobian recovery data stored on a tape.
This helper owns the ColPack graph/coloring objects and all temporary buffers required to recover sparse Jacobians from compressed directional evaluations.
| ADOLC::Sparse::SparseJacInfos::~SparseJacInfos | ( | ) |
| ADOLC::Sparse::SparseJacInfos::SparseJacInfos | ( | ) |
|
delete |
|
noexcept |
| void ADOLC::Sparse::SparseJacInfos::generateSeedJac | ( | const std::string & | coloringVariant | ) |
Generate and cache a Jacobian seed matrix.
|
inline |
Access the cached CRS Jacobian pattern.
| void ADOLC::Sparse::SparseJacInfos::initColoring | ( | int | dimOut, |
| int | dimIn | ||
| ) |
Initialize ColPack coloring state for the given matrix shape.
|
delete |
|
noexcept |
| void ADOLC::Sparse::SparseJacInfos::recoverANF | ( | SparseANF & | sparseANF, |
| int | indep, | ||
| int | numSwitches | ||
| ) | const |
Split the recovered extended Jacobian into abs-normal blocks.
The recovered matrix is interpreted as [Y J; Z L] with rows [y ; z] and columns [x ; |z|]. The four sparse blocks are resized automatically and filled with block-local coordinates.
| void ADOLC::Sparse::SparseJacInfos::recoverANFUserMem | ( | SparseANF & | sparseANF, |
| int | indep, | ||
| int | numSwitches | ||
| ) | const |
Split the recovered extended Jacobian into caller-sized ANF blocks.
sparseANF.Y, sparseANF.J, sparseANF.Z, and sparseANF.L must already contain exactly the number of entries required by the cached abs-normal sparsity pattern. Recovered entries use block-local coordinates.
| void ADOLC::Sparse::SparseJacInfos::recoverColFormat | ( | SparseMatrix & | sparseJac | ) | const |
Resize and recover a column-compressed sparse Jacobian.
| void ADOLC::Sparse::SparseJacInfos::recoverColFormatUserMem | ( | SparseMatrix & | sparseJac | ) | const |
Recover column-compressed sparse Jacobian entries into SparseMatrix.
JacobianRecovery1D::RecoverD2Cln_CoordinateFormat_usermem to work with an array of row-column-value triplets (aka. CoordinateFormatTripled) rather than separate arrays for rows, columns, and values. | void ADOLC::Sparse::SparseJacInfos::recoverRowFormat | ( | SparseMatrix & | sparseJac | ) | const |
Resize and recover a row-compressed sparse Jacobian.
| void ADOLC::Sparse::SparseJacInfos::recoverRowFormatUserMem | ( | SparseMatrix & | sparseJac | ) | const |
Recover row-compressed sparse Jacobian entries into SparseMatrix.
JacobianRecovery1D::RecoverD2Row_CoordinateFormat_usermem to work with an array of row-column-value triplets (aka. CoordinateFormatTripled) rather than separate arrays for rows, columns, and values.
|
inline |
Replace the cached sparsity pattern.
Existing CRS rows are deleted before the new storage is adopted.
| JPIn | New CRS sparsity rows. |
| double** ADOLC::Sparse::SparseJacInfos::B_ {nullptr} |
| int ADOLC::Sparse::SparseJacInfos::depen_ {0} |
| std::vector<uint *> ADOLC::Sparse::SparseJacInfos::JP_ |
| int ADOLC::Sparse::SparseJacInfos::nnzIn_ {0} |
| std::unique_ptr<Impl> ADOLC::Sparse::SparseJacInfos::pimpl_ |
| double** ADOLC::Sparse::SparseJacInfos::Seed_ {nullptr} |
| int ADOLC::Sparse::SparseJacInfos::seedClms_ {0} |
| int ADOLC::Sparse::SparseJacInfos::seedRows_ {0} |
| double* ADOLC::Sparse::SparseJacInfos::y_ {nullptr} |