QPALM 1.1.0
Proximal Augmented Lagrangian method for Quadratic Programs
Data Structures | Namespaces | Typedefs | Functions
sparse.hpp File Reference
#include <Eigen/Sparse>
#include <Eigen/src/Core/Map.h>
#include <Eigen/src/Core/Matrix.h>
#include <global_opts.h>
#include <ladel_constants.h>
#include <ladel_types.h>
#include <memory>
#include <qpalm_cxx-export.hpp>
+ Include dependency graph for sparse.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  qpalm::alloc::ladel_sparse_matrix_deleter
 

Namespaces

namespace  qpalm
 
namespace  qpalm::alloc
 RAII-based wrappers for the allocation and deallocation functions of the C API.
 

Typedefs

using qpalm::index_t = Eigen::Index
 Index types for vectors and matrices. More...
 
using qpalm::sp_index_t = ladel_int
 Index type for sparse matrices representation. More...
 
using qpalm::sparse_mat_t = Eigen::SparseMatrix< c_float, Eigen::ColMajor, sp_index_t >
 Owning sparse matrix type. More...
 
using qpalm::sparse_mat_view_t = Eigen::Map< const sparse_mat_t >
 Read-only view on a sparse matrix. More...
 
using qpalm::triplet_t = Eigen::Triplet< c_float, sp_index_t >
 Type for (row, column, value) triplets for initializing sparse matrices. More...
 
using qpalm::vec_t = Eigen::Matrix< c_float, Eigen::Dynamic, 1 >
 Owning dense vector type. More...
 
using qpalm::borrowed_vec_t = Eigen::Map< vec_t >
 Borrowed dense vector type (vector view). More...
 
using qpalm::const_borrowed_vec_t = Eigen::Map< const vec_t >
 Read-only borrowed dense vector type (vector view). More...
 
using qpalm::ref_vec_t = Eigen::Ref< vec_t >
 Reference to a dense vector (vector view). More...
 
using qpalm::const_ref_vec_t = Eigen::Ref< const vec_t >
 Read-only reference to a dense vector (vector view). More...
 
using qpalm::ladel_sparse_matrix_ptr = std::unique_ptr< ladel_sparse_matrix, alloc::ladel_sparse_matrix_deleter >
 Smart pointer that automatically cleans up an owning ladel_sparse_matrix object. More...
 

Functions

QPALM_CXX_EXPORT ladel_sparse_matrix qpalm::eigen_to_ladel (sparse_mat_t &mat, ladel_int symmetry=UNSYMMETRIC)
 Convert an Eigen sparse matrix to a LADEL sparse matrix, without creating a copy. More...
 
QPALM_CXX_EXPORT ladel_sparse_matrix_ptr qpalm::eigen_to_ladel_copy (const sparse_mat_t &mat)
 Similar to eigen_to_ladel, but creates a copy of all data, in such a way that the returned matrix is completely decoupled from mat, and such that it can be reallocated and deallocated by the ladel_sparse_free and similar functions. More...