---
name: "Math::GSL::SparseMatrix"
section: "3pm"
platform: "linux"
package: "libmath-gsl-perl"
version: "0.45-2+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Math::GSL::SparseMatrix"
---

# Math::GSL::SparseMatrix(3pm)

Sparse Matrices

## NAME

Math::GSL::SparseMatrix - Sparse Matrices

## SYNOPSIS

```
    use Math::GSL::SparseMatrix qw/:all/;
    use Math::GSL::Matrix qw/gsl_matrix_alloc/;
    my $sparse = gsl_spmatrix_alloc(100,100);
    my $status = gsl_spmatrix_set($sparse,50,50,42.42);
    my $value  = gsl_spmatrix_get($sparse,50,50);
    # multiply every element by 5
    $status = gsl_spmatrix_scale($sparse, 5);
    # get the number of non-zero elements
    my $nnz = gsl_spmatrix_nnz($sparse);
    # fine min and max values, other than zero elements
    ($status, $min, $max) = gsl_spmatrix_minmax($sparse);
    # set all elements to zero
    $status = gsl_spmatrix_set_zero($sparse);
    my $dense  = gsl_matrix_alloc(100,100);
    # convert a sparse matrix to a dense matrix
    $status = gsl_spmatrix_sp2d($dense, $sparse);
    # convert a dense matrix to a sparse matrix
    $status = gsl_spmatrix_d2sp($sparse, $dense);
```

## DESCRIPTION

NOTE: This module requires GSL 2.0 or higher.

For more information on the functions, we refer you to the GSL official documentation: \<http://www.gnu.org/software/gsl/manual/html\_node/\>

## AUTHORS

Jonathan "Duke" Leto \<jonathan@leto.net\> and Thierry Moisan \<thierry.moisan@gmail.com\>

## COPYRIGHT AND LICENSE

Copyright (C) 2008-2024 Jonathan "Duke" Leto and Thierry Moisan

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
