alpaqa 1.0.0a18
Nonconvex constrained optimization
Loading...
Searching...
No Matches
Namespaces | Classes | Typedefs | Enumerations | Functions
alpaqa::sparsity Namespace Reference

Namespaces

namespace  detail
 

Classes

struct  Dense
 Dense matrix structure. More...
 
struct  SparseCOO
 Sparse coordinate list structure (COO). More...
 
struct  SparseCSC
 Sparse compressed-column structure (CCS or CSC). More...
 
struct  Sparsity
 Stores any of the supported sparsity patterns. More...
 
struct  SparsityConversionRequest
 Additional options for the conversion performed by SparsityConverter. More...
 
struct  SparsityConversionRequest< Dense< Conf > >
 
struct  SparsityConversionRequest< SparseCOO< Conf, StorageIndex > >
 
struct  SparsityConversionRequest< SparseCSC< Conf, StorageIndex > >
 
struct  SparsityConverter
 Converts one matrix storage format to another. More...
 
struct  SparsityConverter< Dense< Conf >, Dense< Conf > >
 
struct  SparsityConverter< Dense< Conf >, SparseCOO< Conf, StorageIndex > >
 
struct  SparsityConverter< Dense< Conf >, SparseCSC< Conf, StorageIndex > >
 
struct  SparsityConverter< SparseCOO< Conf, StorageIndex >, Dense< Conf > >
 
struct  SparsityConverter< SparseCOO< Conf, StorageIndexFrom >, SparseCOO< Conf, StorageIndexTo > >
 
struct  SparsityConverter< SparseCOO< Conf, StorageIndexFrom >, SparseCSC< Conf, StorageIndexFromTo > >
 
struct  SparsityConverter< SparseCSC< Conf, StorageIndex >, Dense< Conf > >
 
struct  SparsityConverter< SparseCSC< Conf, StorageIndexFrom >, SparseCOO< Conf, StorageIndexTo > >
 
struct  SparsityConverter< SparseCSC< Conf, StorageIndexFrom >, SparseCSC< Conf, StorageIndexTo > >
 
struct  SparsityConverter< Sparsity< Conf >, To >
 Converts any supported matrix storage format to the given format. More...
 

Typedefs

template<class To >
using ConverterVariant = detail::ConverterVariantHelper< To, SparsityVariant< typename To::config_t > >::type
 
template<Config Conf>
using SparsityVariant = std::variant< Dense< Conf >, SparseCSC< Conf, int >, SparseCSC< Conf, long >, SparseCSC< Conf, long long >, SparseCOO< Conf, int >, SparseCOO< Conf, long >, SparseCOO< Conf, long long > >
 

Enumerations

enum class  Symmetry { Unsymmetric = 0 , Upper = 1 , Lower = 2 }
 Describes the symmetry of matrices. More...
 

Functions

template<Config Conf>
bool is_dense (const Sparsity< Conf > &sp)
 Returns true if the sparsity pattern represents a dense matrix.
 
template<Config Conf>
length_t< Confget_nnz (const Sparsity< Conf > &sp)
 Get the number of structurally nonzero elements.
 
template<Config Conf>
Symmetry get_symmetry (const Sparsity< Conf > &sp)
 Returns the symmetry of the sparsity pattern.
 

Class Documentation

◆ alpaqa::sparsity::Dense

struct alpaqa::sparsity::Dense
+ Collaboration diagram for Dense< Conf >:
Class Members
length_t rows = 0
length_t cols = 0
Symmetry symmetry = Symmetry::Unsymmetric

◆ alpaqa::sparsity::SparsityConversionRequest

struct alpaqa::sparsity::SparsityConversionRequest
+ Collaboration diagram for SparsityConversionRequest< To >:

◆ alpaqa::sparsity::SparsityConversionRequest< Dense< Conf > >

struct alpaqa::sparsity::SparsityConversionRequest< Dense< Conf > >
+ Collaboration diagram for SparsityConversionRequest< Dense< Conf > >:

◆ alpaqa::sparsity::SparsityConversionRequest< SparseCOO< Conf, StorageIndex > >

struct alpaqa::sparsity::SparsityConversionRequest< SparseCOO< Conf, StorageIndex > >
+ Collaboration diagram for SparsityConversionRequest< SparseCOO< Conf, StorageIndex > >:
Class Members
optional< StorageIndex > first_index = std::nullopt Convert the index offset (zero for C/C++, one for Fortran).

◆ alpaqa::sparsity::SparsityConversionRequest< SparseCSC< Conf, StorageIndex > >

struct alpaqa::sparsity::SparsityConversionRequest< SparseCSC< Conf, StorageIndex > >
+ Collaboration diagram for SparsityConversionRequest< SparseCSC< Conf, StorageIndex > >:
Class Members
Order > order = std::nullopt Sort the indices.

◆ alpaqa::sparsity::SparsityConverter

struct alpaqa::sparsity::SparsityConverter
+ Collaboration diagram for SparsityConverter< From, To >:

Typedef Documentation

◆ ConverterVariant

Definition at line 646 of file sparsity-conversions.hpp.

◆ SparsityVariant

Definition at line 93 of file sparsity.hpp.

Enumeration Type Documentation

◆ Symmetry

Describes the symmetry of matrices.

Enumerator
Unsymmetric 

No symmetry.

Upper 

Symmetric, upper-triangular part is stored.

Lower 

Symmetric, lower-triangular part is stored.

Definition at line 12 of file sparsity.hpp.

Function Documentation

◆ is_dense()

template<Config Conf>
bool is_dense ( const Sparsity< Conf > &  sp)

Returns true if the sparsity pattern represents a dense matrix.

Definition at line 122 of file sparsity.hpp.

◆ get_nnz()

template<Config Conf>
length_t< Conf > get_nnz ( const Sparsity< Conf > &  sp)

Get the number of structurally nonzero elements.

Definition at line 132 of file sparsity.hpp.

◆ get_symmetry()

template<Config Conf>
Symmetry get_symmetry ( const Sparsity< Conf > &  sp)

Returns the symmetry of the sparsity pattern.

Definition at line 142 of file sparsity.hpp.