ccgsl 2.7.2
C++wrappersforGnuScientificLibrary
gsl::matrix_ulong Class Reference

This class handles matrix_ulong objects as shared handles. More...

#include <matrix_ulong.hpp>

Collaboration diagram for gsl::matrix_ulong:
Collaboration graph

Classes

class  const_iterator_t
 A class template for the const iterators. More...
 
class  iterator_base
 We create a suitable class for iterator types here. More...
 
class  iterator_t
 A class template for the two non-const iterators. More...
 
struct  vector_ulong_ptr
 This is a pointer-like type for iterator return values. More...
 

Public Types

typedef const_iterator_t< false > const_iterator
 The const_iterator type. More...
 
typedef iterator_t< false > iterator
 The iterator type. More...
 
typedef const_iterator_t< true > const_reverse_iterator
 The const_reverse_t type. More...
 
typedef iterator_t< true > reverse_iterator
 The reverse_iterator type. More...
 
typedef size_t size_type
 A container must have a size_type. More...
 

Public Member Functions

 matrix_ulong ()
 The default constructor is only really useful for assigning to. More...
 
 matrix_ulong (size_t const n1, size_t const n2)
 This constructor creates a new matrix_ulong with n1 rows and n2 columns. More...
 
 matrix_ulong (gsl_matrix_ulong *v)
 Could construct from a gsl_matrix_ulong. More...
 
 matrix_ulong (std::initializer_list< std::initializer_list< unsigned long > > initializer_list)
 Could construct from a std::initializer_list in C++11. More...
 
 matrix_ulong (matrix_ulong const &v)
 The copy constructor. More...
 
matrix_ulongoperator= (matrix_ulong const &v)
 The assignment operator. More...
 
matrix_ulong clone () const
 The clone function. More...
 
 ~matrix_ulong ()
 The destructor only deletes the pointers if count reaches zero. More...
 
void wrap_gsl_matrix_ulong_without_ownership (gsl_matrix_ulong *v)
 This function is intended mainly for internal use. More...
 
void reset ()
 Stop sharing ownership of the shared pointer. More...
 
 matrix_ulong (matrix_ulong &&v)
 Move constructor. More...
 
matrix_ulongoperator= (matrix_ulong &&v)
 Move operator. More...
 
iterator begin ()
 Get iterator pointing to first vector_ulong element. More...
 
const_iterator begin () const
 Get iterator pointing to first vector_ulong element. More...
 
iterator end ()
 Get iterator pointing beyond last vector_ulong element. More...
 
const_iterator end () const
 Get iterator pointing beyond last vector_ulong element. More...
 
reverse_iterator rbegin ()
 Get iterator pointing to first vector_ulong element. More...
 
const_reverse_iterator rbegin () const
 Get iterator pointing to first vector_ulong element. More...
 
reverse_iterator rend ()
 Get iterator pointing beyond last vector_ulong element. More...
 
const_reverse_iterator rend () const
 Get iterator pointing beyond last vector_ulong element. More...
 
size_t size1 () const
 The number of rows of the matrix_ulong. More...
 
size_t size2 () const
 The number of columns of the matrix_ulong. More...
 
unsigned long * data ()
 Give access to the data block_ulong. More...
 
unsigned long const * data () const
 Give access to the data block_ulong. More...
 
void swap (matrix_ulong &m)
 Swap two matrix_ulong objects. More...
 
void tricpy (CBLAS_UPLO_t Uplo, CBLAS_DIAG_t Diag, matrix_ulong const &src)
 Copy the upper or lower triangular part of matrix src to this. More...
 
void transpose_tricpy (CBLAS_UPLO_t Uplo, CBLAS_DIAG_t Diag, matrix_ulong const &src)
 Copy the upper or lower triangular part of matrix src to this. More...
 
matrix_ulong submatrix (size_t const i, size_t const j, size_t const n1, size_t const n2)
 C++ version of gsl_matrix_ulong_submatrix(). More...
 
vector_ulong row (size_t const i)
 C++ version of gsl_matrix_ulong_row(). More...
 
vector_ulong column (size_t const j)
 C++ version of gsl_matrix_ulong_column(). More...
 
vector_ulong diagonal ()
 C++ version of gsl_matrix_ulong_diagonal(). More...
 
vector_ulong subdiagonal (size_t const k)
 C++ version of gsl_matrix_ulong_subdiagonal(). More...
 
vector_ulong superdiagonal (size_t const k)
 C++ version of gsl_matrix_ulong_superdiagonal(). More...
 
vector_ulong subrow (size_t const i, size_t const offset, size_t const n)
 C++ version of gsl_matrix_ulong_subrow(). More...
 
vector_ulong subcolumn (size_t const j, size_t const offset, size_t const n)
 C++ version of gsl_matrix_ulong_subcolumn(). More...
 
matrix_ulong const const_submatrix (size_t const i, size_t const j, size_t const n1, size_t const n2) const
 C++ version of gsl_matrix_ulong_const_submatrix(). More...
 
vector_ulong const const_row (size_t const i) const
 C++ version of gsl_matrix_ulong_const_row(). More...
 
vector_ulong const const_column (size_t const j) const
 C++ version of gsl_matrix_ulong_const_column(). More...
 
vector_ulong const const_diagonal () const
 C++ version of gsl_matrix_ulong_const_diagonal(). More...
 
vector_ulong const const_subdiagonal (size_t const k) const
 C++ version of gsl_matrix_ulong_const_subdiagonal(). More...
 
vector_ulong const const_superdiagonal (size_t const k) const
 C++ version of gsl_matrix_ulong_const_superdiagonal(). More...
 
vector_ulong const const_subrow (size_t const i, size_t const offset, size_t const n) const
 C++ version of gsl_matrix_ulong_const_subrow(). More...
 
vector_ulong const const_subcolumn (size_t const j, size_t const offset, size_t const n) const
 C++ version of gsl_matrix_ulong_const_subcolumn(). More...
 
matrix_ulong const submatrix (size_t const i, size_t const j, size_t const n1, size_t const n2) const
 Another C++ version of gsl_matrix_ulong_const_submatrix(). More...
 
vector_ulong const row (size_t const i) const
 Another C++ version of gsl_matrix_ulong_const_row(). More...
 
vector_ulong const column (size_t const j) const
 Another C++ version of gsl_matrix_ulong_const_column(). More...
 
vector_ulong const diagonal () const
 Another C++ version of gsl_matrix_ulong_const_diagonal(). More...
 
vector_ulong const subdiagonal (size_t const k) const
 Another C++ version of gsl_matrix_ulong_const_subdiagonal(). More...
 
vector_ulong const superdiagonal (size_t const k) const
 Another C++ version of gsl_matrix_ulong_const_superdiagonal(). More...
 
vector_ulong const subrow (size_t const i, size_t const offset, size_t const n) const
 Another C++ version of gsl_matrix_ulong_const_subrow(). More...
 
vector_ulong const subcolumn (size_t const j, size_t const offset, size_t const n) const
 Another C++ version of gsl_matrix_ulong_const_subcolumn(). More...
 
gsl_matrix_ulong * get ()
 Get the gsl_matrix_ulong. More...
 
gsl_matrix_ulong const * get () const
 Get the gsl_matrix_ulong. More...
 
bool unique () const
 Find if this is the only object sharing the gsl_matrix_ulong. More...
 
size_t use_count () const
 Find how many matrix_ulong objects share this pointer. More...
 
 operator bool () const
 Allow conversion to bool. More...
 
void set_zero ()
 C++ version of gsl_matrix_ulong_set_zero(). More...
 
void set_all (unsigned long x)
 C++ version of gsl_matrix_ulong_set_all(). More...
 
int memcpy (matrix_ulong const &src)
 C++ version of gsl_matrix_ulong_memcpy(). More...
 
unsigned long max () const
 C++ version of gsl_matrix_ulong_max(). More...
 
unsigned long min () const
 C++ version of gsl_matrix_ulong_min(). More...
 
void minmax (unsigned long *min_out, unsigned long *max_out) const
 C++ version of gsl_matrix_ulong_minmax(). More...
 
void minmax (unsigned long &min_out, unsigned long &max_out) const
 C++ version of gsl_matrix_ulong_minmax(). More...
 
int add (matrix_ulong const &b)
 C++ version of gsl_matrix_ulong_add(). More...
 
int sub (matrix_ulong const &b)
 C++ version of gsl_matrix_ulong_sub(). More...
 
int scale (unsigned long const x)
 C++ version of gsl_matrix_ulong_scale(). More...
 
int add_constant (unsigned long const x)
 C++ version of gsl_matrix_ulong_add_constant(). More...
 
int isnull () const
 C++ version of gsl_matrix_ulong_isnull(). More...
 
int ispos () const
 C++ version of gsl_matrix_ulong_ispos(). More...
 
int isneg () const
 C++ version of gsl_matrix_ulong_isneg(). More...
 
int isnonneg () const
 C++ version of gsl_matrix_ulong_isnonneg(). More...
 
unsigned long get (size_t const i, size_t const j) const
 C++ version of gsl_matrix_ulong_get(). More...
 
void set (size_t const i, size_t const j, unsigned long x)
 C++ version of gsl_matrix_ulong_set(). More...
 
unsigned long * ptr (size_t const i, size_t const j)
 C++ version of gsl_matrix_ulong_ptr(). More...
 
unsigned long const * const_ptr (size_t const i, size_t const j) const
 C++ version of gsl_matrix_ulong_const_ptr(). More...
 
int fread (FILE *stream)
 C++ version of gsl_matrix_ulong_fread(). More...
 
int fwrite (FILE *stream) const
 C++ version of gsl_matrix_ulong_fwrite(). More...
 
int fscanf (FILE *stream)
 C++ version of gsl_matrix_ulong_fscanf(). More...
 
int fprintf (FILE *stream, char const *format) const
 C++ version of gsl_matrix_ulong_fprintf(). More...
 
 matrix_ulong (block_ulong &b, size_t const offset, size_t const n1, size_t const n2, size_t const d2)
 C++ version of gsl_matrix_ulong_alloc_from_block(). More...
 
 matrix_ulong (matrix_ulong &m, size_t const k1, size_t const k2, size_t const n1, size_t const n2)
 C++ version of gsl_matrix_ulong_alloc_from_matrix(). More...
 
void set_identity ()
 C++ version of gsl_matrix_ulong_set_identity(). More...
 
int swap_rows (size_t const i, size_t const j)
 C++ version of gsl_matrix_ulong_swap_rows(). More...
 
int swap_columns (size_t const i, size_t const j)
 C++ version of gsl_matrix_ulong_swap_columns(). More...
 
int swap_rowcol (size_t const i, size_t const j)
 C++ version of gsl_matrix_ulong_swap_rowcol(). More...
 
int transpose ()
 C++ version of gsl_matrix_ulong_transpose(). More...
 
int transpose_memcpy (matrix_ulong const &src)
 C++ version of gsl_matrix_ulong_transpose_memcpy(). More...
 
void max_index (size_t &imax, size_t &jmax) const
 C++ version of gsl_matrix_ulong_max_index(). More...
 
void min_index (size_t &imin, size_t &jmin) const
 C++ version of gsl_matrix_ulong_min_index(). More...
 
void minmax_index (size_t &imin, size_t &jmin, size_t &imax, size_t &jmax) const
 C++ version of gsl_matrix_ulong_minmax_index(). More...
 
int mul_elements (matrix_ulong const &b)
 C++ version of gsl_matrix_ulong_mul_elements(). More...
 
int div_elements (matrix_ulong const &b)
 C++ version of gsl_matrix_ulong_div_elements(). More...
 
unsigned long norm1 () const
 C++ version of gsl_matrix_ulong_norm1(). More...
 
int scale_rows (vector_ulong const &x)
 C++ version of gsl_matrix_ulong_scale_rows(). More...
 
int scale_columns (vector_ulong const &x)
 C++ version of gsl_matrix_ulong_scale_columns(). More...
 
int add_diagonal (unsigned long const x)
 C++ version of gsl_matrix_ulong_add_diagonal(). More...
 
int get_row (vector_ulong &v, size_t const i) const
 C++ version of gsl_matrix_ulong_get_row(). More...
 
int get_col (vector_ulong &v, size_t const j) const
 C++ version of gsl_matrix_ulong_get_col(). More...
 
int set_row (size_t const i, vector_ulong const &v)
 C++ version of gsl_matrix_ulong_set_row(). More...
 
int set_col (size_t const j, vector_ulong const &v)
 C++ version of gsl_matrix_ulong_set_col(). More...
 
vector_ulong operator[] (size_t const i)
 This function allows us to use a matrix_ulong like an array. More...
 
vector_ulong const operator[] (size_t const i) const
 This function allows us to use a matrix_ulong like an array. More...
 
int permute (permutation &p)
 Permute the columns of this by permutation p. More...
 

Static Public Member Functions

static matrix_ulong view_array (unsigned long *base, size_t const n1, size_t const n2)
 C++ version of gsl_matrix_ulong_view_array(). More...
 
static matrix_ulong view_array_with_tda (unsigned long *base, size_t const n1, size_t const n2, size_t const tda)
 C++ version of gsl_matrix_ulong_view_array_with_tda(). More...
 
static matrix_ulong view_vector (vector_ulong &v, size_t const n1, size_t const n2)
 C++ version of gsl_matrix_ulong_view_vector(). More...
 
static matrix_ulong view_vector_with_tda (vector_ulong &v, size_t const n1, size_t const n2, size_t const tda)
 C++ version of gsl_matrix_ulong_view_vector_with_tda(). More...
 
static matrix_ulong const const_view_array (unsigned long const *base, size_t const n1, size_t const n2)
 C++ version of gsl_matrix_ulong_const_view_array(). More...
 
static matrix_ulong const const_view_array_with_tda (unsigned long const *base, size_t const n1, size_t const n2, size_t const tda)
 C++ version of gsl_matrix_ulong_const_view_array_with_tda(). More...
 
static matrix_ulong const const_view_vector (vector_ulong const &v, size_t const n1, size_t const n2)
 C++ version of gsl_matrix_ulong_const_view_vector(). More...
 
static matrix_ulong const const_view_vector_with_tda (vector_ulong const &v, size_t const n1, size_t const n2, size_t const tda)
 C++ version of gsl_matrix_ulong_const_view_vector_with_tda(). More...
 
static matrix_ulong const view_array (unsigned long const *base, size_t const n1, size_t const n2)
 Another C++ version of gsl_matrix_ulong_const_view_array(). More...
 
static matrix_ulong const view_array_with_tda (unsigned long const *base, size_t const n1, size_t const n2, size_t const tda)
 Another C++ version of gsl_matrix_ulong_const_view_array_with_tda(). More...
 
static matrix_ulong const view_vector (vector_ulong const &v, size_t const n1, size_t const n2)
 Another C++ version of gsl_matrix_ulong_const_view_vector(). More...
 
static matrix_ulong const view_vector_with_tda (vector_ulong const &v, size_t const n1, size_t const n2, size_t const tda)
 Another C++ version of gsl_matrix_ulong_const_view_vector_with_tda(). More...
 
static matrix_ulong calloc (size_t const n1, size_t const n2)
 C++ version of gsl_matrix_ulong_calloc(). More...
 

Private Attributes

bool owns_data
 Used to allow a vector that does not own its data. More...
 
gsl_matrix_ulong * ccgsl_pointer
 The shared pointer. More...
 
size_t * count
 The shared reference count. More...
 

Detailed Description

This class handles matrix_ulong objects as shared handles.

It models a random access container so that STL functions work with matrix_ulong.

Note that matrix_ulong_views are implemented as matrix_ulong objects here.

Note that in C++11 it is possible to iterate over the rows of a matrix_ulong using

for( auto row : matrix_ulong ){ ... }
This class handles matrix_ulong objects as shared handles.
vector_ulong row(size_t const i)
C++ version of gsl_matrix_ulong_row().

Otherwise,

...
}
A class template for the two non-const iterators.
iterator end()
Get iterator pointing beyond last vector_ulong element.
iterator begin()
Get iterator pointing to first vector_ulong element.
This class handles vector_ulong objects as shared handles.

will achieve the same effect. But if the element pointed to by i is used more than once, do not use

i-> ...

because each call of operator->() creates a new and different vector_ulong.

Definition at line 57 of file matrix_ulong.hpp.

Member Typedef Documentation

◆ const_iterator

The const_iterator type.

Definition at line 608 of file matrix_ulong.hpp.

◆ const_reverse_iterator

The const_reverse_t type.

Definition at line 616 of file matrix_ulong.hpp.

◆ iterator

The iterator type.

Definition at line 612 of file matrix_ulong.hpp.

◆ reverse_iterator

The reverse_iterator type.

Definition at line 620 of file matrix_ulong.hpp.

◆ size_type

A container must have a size_type.

Definition at line 624 of file matrix_ulong.hpp.

Constructor & Destructor Documentation

◆ matrix_ulong() [1/8]

gsl::matrix_ulong::matrix_ulong ( )
inline

◆ matrix_ulong() [2/8]

gsl::matrix_ulong::matrix_ulong ( size_t const  n1,
size_t const  n2 
)
inlineexplicit

This constructor creates a new matrix_ulong with n1 rows and n2 columns.

Parameters
n1The number of rows in the matrix_ulong
n2The number of columns in the matrix_ulong

Definition at line 74 of file matrix_ulong.hpp.

References ccgsl_pointer, and count.

◆ matrix_ulong() [3/8]

gsl::matrix_ulong::matrix_ulong ( gsl_matrix_ulong *  v)
inlineexplicit

Could construct from a gsl_matrix_ulong.

This is not usually a good idea. In this case you should not use gsl_matrix_ulong_free() to deallocate the memory.

Parameters
vThe matrix_ulong

Definition at line 92 of file matrix_ulong.hpp.

References ccgsl_pointer, and count.

◆ matrix_ulong() [4/8]

gsl::matrix_ulong::matrix_ulong ( std::initializer_list< std::initializer_list< unsigned long > >  initializer_list)
inline

Could construct from a std::initializer_list in C++11.

Parameters
initializer_listThe initializer_list.

Definition at line 103 of file matrix_ulong.hpp.

References ccgsl_pointer, count, gsl::exception::GSL_EBADLEN, row(), and set().

◆ matrix_ulong() [5/8]

gsl::matrix_ulong::matrix_ulong ( matrix_ulong const &  v)
inline

The copy constructor.

This shares the matrix_ulong. Use clone() if you want a full copy.

Parameters
vThe matrix_ulong to copy.

Definition at line 136 of file matrix_ulong.hpp.

References count.

◆ ~matrix_ulong()

gsl::matrix_ulong::~matrix_ulong ( )
inline

The destructor only deletes the pointers if count reaches zero.

Definition at line 176 of file matrix_ulong.hpp.

References ccgsl_pointer, count, and owns_data.

◆ matrix_ulong() [6/8]

gsl::matrix_ulong::matrix_ulong ( matrix_ulong &&  v)
inline

Move constructor.

Parameters
vThe matrix_ulong to move.

Definition at line 218 of file matrix_ulong.hpp.

References count.

◆ matrix_ulong() [7/8]

gsl::matrix_ulong::matrix_ulong ( block_ulong b,
size_t const  offset,
size_t const  n1,
size_t const  n2,
size_t const  d2 
)
inline

C++ version of gsl_matrix_ulong_alloc_from_block().

Parameters
bThe block_ulong
offsetThe offset within the block_ulong
n1The number of rows in the matrix_ulong
n2The number of columns in the matrix_ulong
d2undocumented

Definition at line 1370 of file matrix_ulong.hpp.

References gsl::sf::mathieu::b(), ccgsl_pointer, and count.

◆ matrix_ulong() [8/8]

gsl::matrix_ulong::matrix_ulong ( matrix_ulong m,
size_t const  k1,
size_t const  k2,
size_t const  n1,
size_t const  n2 
)
inline

C++ version of gsl_matrix_ulong_alloc_from_matrix().

Parameters
mThe matrix_ulong
k1the row of m to take as row zero
k2the column of m to take as column zero
n1The number of rows in the matrix_ulong
n2The number of columns in the matrix_ulong

Definition at line 1388 of file matrix_ulong.hpp.

References ccgsl_pointer, count, and get().

Member Function Documentation

◆ add()

int gsl::matrix_ulong::add ( matrix_ulong const &  b)
inline

C++ version of gsl_matrix_ulong_add().

Parameters
bmatrix_ulong to add to this
Returns
error code on failure

Definition at line 1268 of file matrix_ulong.hpp.

References gsl::sf::mathieu::b(), and get().

◆ add_constant()

int gsl::matrix_ulong::add_constant ( unsigned long const  x)
inline

C++ version of gsl_matrix_ulong_add_constant().

Parameters
xconstant to add to each element of this
Returns
error code on failure

Definition at line 1286 of file matrix_ulong.hpp.

References get().

◆ add_diagonal()

int gsl::matrix_ulong::add_diagonal ( unsigned long const  x)
inline

C++ version of gsl_matrix_ulong_add_diagonal().

Parameters
xA constant
Returns
error code on failure

Definition at line 1526 of file matrix_ulong.hpp.

References get().

◆ begin() [1/2]

iterator gsl::matrix_ulong::begin ( )
inline

Get iterator pointing to first vector_ulong element.

Returns
iterator pointing to first vector_ulong element

Definition at line 630 of file matrix_ulong.hpp.

◆ begin() [2/2]

const_iterator gsl::matrix_ulong::begin ( ) const
inline

Get iterator pointing to first vector_ulong element.

Returns
iterator pointing to first vector_ulong element

Definition at line 637 of file matrix_ulong.hpp.

◆ calloc()

static matrix_ulong gsl::matrix_ulong::calloc ( size_t const  n1,
size_t const  n2 
)
inlinestatic

C++ version of gsl_matrix_ulong_calloc().

This constructs a matrix_ulong object with entries initialised to zero.

Parameters
n1The number of rows in the matrix_ulong
n2The number of columns in the matrix_ulong
Returns
A matrix_ulong initialised to zero

Definition at line 1223 of file matrix_ulong.hpp.

References matrix_ulong().

◆ clone()

matrix_ulong gsl::matrix_ulong::clone ( ) const
inline

The clone function.

Use this if you want a copy of the block_ulong that does not share the underlying data.

Returns
a new copy of this.

Definition at line 165 of file matrix_ulong.hpp.

References get(), size1(), and size2().

◆ column() [1/2]

vector_ulong gsl::matrix_ulong::column ( size_t const  j)
inline

C++ version of gsl_matrix_ulong_column().

Parameters
jA column index
Returns
A column as a vector_ulong

Definition at line 785 of file matrix_ulong.hpp.

References get().

◆ column() [2/2]

vector_ulong const gsl::matrix_ulong::column ( size_t const  j) const
inline

Another C++ version of gsl_matrix_ulong_const_column().

Parameters
jA column index
Returns
A column as a vector_ulong

Definition at line 1008 of file matrix_ulong.hpp.

References get().

◆ const_column()

vector_ulong const gsl::matrix_ulong::const_column ( size_t const  j) const
inline

C++ version of gsl_matrix_ulong_const_column().

Parameters
jA column index
Returns
A column as a vector_ulong

Definition at line 922 of file matrix_ulong.hpp.

References get().

◆ const_diagonal()

vector_ulong const gsl::matrix_ulong::const_diagonal ( ) const
inline

C++ version of gsl_matrix_ulong_const_diagonal().

Returns
The principal diagonal as a vector_ulong

Definition at line 931 of file matrix_ulong.hpp.

References get().

◆ const_ptr()

unsigned long const * gsl::matrix_ulong::const_ptr ( size_t const  i,
size_t const  j 
) const
inline

C++ version of gsl_matrix_ulong_const_ptr().

Parameters
iindex of row
jindex of column
Returns
pointer to element

Definition at line 1334 of file matrix_ulong.hpp.

References get().

◆ const_row()

vector_ulong const gsl::matrix_ulong::const_row ( size_t const  i) const
inline

C++ version of gsl_matrix_ulong_const_row().

Parameters
iA row index
Returns
A row as a vector_ulong

Definition at line 912 of file matrix_ulong.hpp.

References get().

◆ const_subcolumn()

vector_ulong const gsl::matrix_ulong::const_subcolumn ( size_t const  j,
size_t const  offset,
size_t const  n 
) const
inline

C++ version of gsl_matrix_ulong_const_subcolumn().

Parameters
jA column index
offsetA row offset
nThe number of elements
Returns
A subcolumn as a vector_ulong

Definition at line 975 of file matrix_ulong.hpp.

References get(), and gsl::rstat::n().

◆ const_subdiagonal()

vector_ulong const gsl::matrix_ulong::const_subdiagonal ( size_t const  k) const
inline

C++ version of gsl_matrix_ulong_const_subdiagonal().

Parameters
kAn index
Returns
Subdiagonal k as a vector_ulong

Definition at line 941 of file matrix_ulong.hpp.

References get().

◆ const_submatrix()

matrix_ulong const gsl::matrix_ulong::const_submatrix ( size_t const  i,
size_t const  j,
size_t const  n1,
size_t const  n2 
) const
inline

C++ version of gsl_matrix_ulong_const_submatrix().

Parameters
iIndex in this of first row of submatrix
jIndex in this of first column of submatrix
n1Number of rows of submatrix
n2Number of columns of submatrix
Returns
The submatrix

Definition at line 902 of file matrix_ulong.hpp.

References get(), and matrix_ulong().

◆ const_subrow()

vector_ulong const gsl::matrix_ulong::const_subrow ( size_t const  i,
size_t const  offset,
size_t const  n 
) const
inline

C++ version of gsl_matrix_ulong_const_subrow().

Parameters
iA row index
offsetA column offset
nThe number of elements
Returns
A subrow as a vector_ulong

Definition at line 963 of file matrix_ulong.hpp.

References get(), and gsl::rstat::n().

◆ const_superdiagonal()

vector_ulong const gsl::matrix_ulong::const_superdiagonal ( size_t const  k) const
inline

C++ version of gsl_matrix_ulong_const_superdiagonal().

Parameters
kAn index
Returns
Subdiagonal k as a vector_ulong

Definition at line 951 of file matrix_ulong.hpp.

References get().

◆ const_view_array()

static matrix_ulong const gsl::matrix_ulong::const_view_array ( unsigned long const *  base,
size_t const  n1,
size_t const  n2 
)
inlinestatic

C++ version of gsl_matrix_ulong_const_view_array().

Parameters
baseAn array of type unsigned long
n1The number of rows
n2The number of columns
Returns
A matrix_ulong

Definition at line 1073 of file matrix_ulong.hpp.

References matrix_ulong().

◆ const_view_array_with_tda()

static matrix_ulong const gsl::matrix_ulong::const_view_array_with_tda ( unsigned long const *  base,
size_t const  n1,
size_t const  n2,
size_t const  tda 
)
inlinestatic

C++ version of gsl_matrix_ulong_const_view_array_with_tda().

Parameters
baseAn array of type unsigned long
n1The number of rows
n2The number of columns
tdaThe number of columns in memory
Returns
A matrix_ulong

Definition at line 1087 of file matrix_ulong.hpp.

References matrix_ulong().

◆ const_view_vector()

static matrix_ulong const gsl::matrix_ulong::const_view_vector ( vector_ulong const &  v,
size_t const  n1,
size_t const  n2 
)
inlinestatic

C++ version of gsl_matrix_ulong_const_view_vector().

Parameters
vA vector_ulong
n1The number of rows
n2The number of columns
Returns
A matrix_ulong

Definition at line 1099 of file matrix_ulong.hpp.

References gsl::vector_ulong::get(), and matrix_ulong().

◆ const_view_vector_with_tda()

static matrix_ulong const gsl::matrix_ulong::const_view_vector_with_tda ( vector_ulong const &  v,
size_t const  n1,
size_t const  n2,
size_t const  tda 
)
inlinestatic

C++ version of gsl_matrix_ulong_const_view_vector_with_tda().

Parameters
vA vector_ulong
n1The number of rows
n2The number of columns
tdaThe number of columns in memory
Returns
A matrix_ulong

Definition at line 1113 of file matrix_ulong.hpp.

References gsl::vector_ulong::get(), and matrix_ulong().

◆ data() [1/2]

unsigned long * gsl::matrix_ulong::data ( )
inline

Give access to the data block_ulong.

The data() and size() functions mimic the functions of std::array<T> and std::vector<T>. This function can throw an exception or produce a GSL error if the matrix_ulong size2 and tda are not equal. However, new matrix_ulong objects are always initialised to have tda and size2 equal.

Returns
The data block_ulong.

Definition at line 708 of file matrix_ulong.hpp.

References ccgsl_pointer.

◆ data() [2/2]

unsigned long const * gsl::matrix_ulong::data ( ) const
inline

Give access to the data block_ulong.

The data() and size() functions mimic the functions of std::array<T> and std::vector<T>. This function can throw an exception or produce a GSL error if the matrix_ulong size1 and tda are not equal. However, new matrix_ulong objects are always initialised to have tda and size2 equal.

Returns
The data block_ulong.

Definition at line 722 of file matrix_ulong.hpp.

References ccgsl_pointer.

◆ diagonal() [1/2]

vector_ulong gsl::matrix_ulong::diagonal ( )
inline

C++ version of gsl_matrix_ulong_diagonal().

Returns
The principal diagonal as a vector_ulong

Definition at line 795 of file matrix_ulong.hpp.

References get().

◆ diagonal() [2/2]

vector_ulong const gsl::matrix_ulong::diagonal ( ) const
inline

Another C++ version of gsl_matrix_ulong_const_diagonal().

Returns
The principal diagonal as a vector_ulong

Definition at line 1017 of file matrix_ulong.hpp.

References get().

◆ div_elements()

int gsl::matrix_ulong::div_elements ( matrix_ulong const &  b)
inline

C++ version of gsl_matrix_ulong_div_elements().

Divide each element of this by the corrsponding element of b

Parameters
bAnother matrix_ulong
Returns
error code on failure

Definition at line 1499 of file matrix_ulong.hpp.

References gsl::sf::mathieu::b(), and get().

◆ end() [1/2]

iterator gsl::matrix_ulong::end ( )
inline

Get iterator pointing beyond last vector_ulong element.

Returns
iterator pointing beyond last vector_ulong element

Definition at line 645 of file matrix_ulong.hpp.

References ccgsl_pointer, and size1().

◆ end() [2/2]

const_iterator gsl::matrix_ulong::end ( ) const
inline

Get iterator pointing beyond last vector_ulong element.

Returns
iterator pointing beyond last vector_ulong element

Definition at line 653 of file matrix_ulong.hpp.

References ccgsl_pointer, and size1().

◆ fprintf()

int gsl::matrix_ulong::fprintf ( FILE *  stream,
char const *  format 
) const
inline

C++ version of gsl_matrix_ulong_fprintf().

Parameters
streamA C file stream
formatd, e, f or g
Returns
error code on failure

Definition at line 1360 of file matrix_ulong.hpp.

References get().

◆ fread()

int gsl::matrix_ulong::fread ( FILE *  stream)
inline

C++ version of gsl_matrix_ulong_fread().

Parameters
streamA C file stream
Returns
error code on failure

Definition at line 1341 of file matrix_ulong.hpp.

References get().

◆ fscanf()

int gsl::matrix_ulong::fscanf ( FILE *  stream)
inline

C++ version of gsl_matrix_ulong_fscanf().

Parameters
streamA C file stream
Returns
error code on failure

Definition at line 1353 of file matrix_ulong.hpp.

References get().

◆ fwrite()

int gsl::matrix_ulong::fwrite ( FILE *  stream) const
inline

C++ version of gsl_matrix_ulong_fwrite().

Parameters
streamA C file stream
Returns
error code on failure

Definition at line 1347 of file matrix_ulong.hpp.

References get().

◆ get() [1/3]

◆ get() [2/3]

gsl_matrix_ulong const * gsl::matrix_ulong::get ( ) const
inline

Get the gsl_matrix_ulong.

Returns
the gsl_matrix_ulong

Definition at line 1194 of file matrix_ulong.hpp.

References ccgsl_pointer.

◆ get() [3/3]

unsigned long gsl::matrix_ulong::get ( size_t const  i,
size_t const  j 
) const
inline

C++ version of gsl_matrix_ulong_get().

Parameters
iindex of row
jindex of column
Returns
value of element

Definition at line 1313 of file matrix_ulong.hpp.

References get().

Referenced by get().

◆ get_col()

int gsl::matrix_ulong::get_col ( vector_ulong v,
size_t const  j 
) const
inline

C++ version of gsl_matrix_ulong_get_col().

Parameters
vA vector_ulong
jThe index of the column
Returns
error code on failure

Definition at line 1542 of file matrix_ulong.hpp.

References get(), and gsl::vector_ulong::get().

◆ get_row()

int gsl::matrix_ulong::get_row ( vector_ulong v,
size_t const  i 
) const
inline

C++ version of gsl_matrix_ulong_get_row().

Parameters
vA vector_ulong
iThe index of the row
Returns
error code on failure

Definition at line 1534 of file matrix_ulong.hpp.

References get(), and gsl::vector_ulong::get().

◆ isneg()

int gsl::matrix_ulong::isneg ( ) const
inline

C++ version of gsl_matrix_ulong_isneg().

Returns
+1 or 0 according as elements are all negative or not

Definition at line 1301 of file matrix_ulong.hpp.

References get().

◆ isnonneg()

int gsl::matrix_ulong::isnonneg ( ) const
inline

C++ version of gsl_matrix_ulong_isnonneg().

Returns
+1 or 0 according as elements are all nonnegative or not

Definition at line 1306 of file matrix_ulong.hpp.

References get().

◆ isnull()

int gsl::matrix_ulong::isnull ( ) const
inline

C++ version of gsl_matrix_ulong_isnull().

Returns
+1 or 0 according as elements are all zero or not

Definition at line 1291 of file matrix_ulong.hpp.

References get().

◆ ispos()

int gsl::matrix_ulong::ispos ( ) const
inline

C++ version of gsl_matrix_ulong_ispos().

Returns
+1 or 0 according as elements are all positive or not

Definition at line 1296 of file matrix_ulong.hpp.

References get().

◆ max()

unsigned long gsl::matrix_ulong::max ( ) const
inline

C++ version of gsl_matrix_ulong_max().

Returns
maximum element of matrix_ulong

Definition at line 1243 of file matrix_ulong.hpp.

References get().

◆ max_index()

void gsl::matrix_ulong::max_index ( size_t &  imax,
size_t &  jmax 
) const
inline

C++ version of gsl_matrix_ulong_max_index().

Parameters
imaxrow index of the first maximum element in the matrix_ulong
jmaxcolumn index of the first maximum element in the matrix_ulong

Definition at line 1467 of file matrix_ulong.hpp.

References get().

◆ memcpy()

int gsl::matrix_ulong::memcpy ( matrix_ulong const &  src)
inline

C++ version of gsl_matrix_ulong_memcpy().

Parameters
srcsource matrix_ulong
Returns
error code on failure

Definition at line 1238 of file matrix_ulong.hpp.

References get().

◆ min()

unsigned long gsl::matrix_ulong::min ( ) const
inline

C++ version of gsl_matrix_ulong_min().

Returns
minimum element of matrix_ulong

Definition at line 1248 of file matrix_ulong.hpp.

References get().

◆ min_index()

void gsl::matrix_ulong::min_index ( size_t &  imin,
size_t &  jmin 
) const
inline

C++ version of gsl_matrix_ulong_min_index().

Parameters
iminrow index of the first minimum element in the matrix_ulong
jmincolumn index of the first minimum element in the matrix_ulong

Definition at line 1474 of file matrix_ulong.hpp.

References get().

◆ minmax() [1/2]

void gsl::matrix_ulong::minmax ( unsigned long &  min_out,
unsigned long &  max_out 
) const
inline

C++ version of gsl_matrix_ulong_minmax().

Parameters
min_outminimum element of matrix_ulong
max_outmaximum element of matrix_ulong

Definition at line 1261 of file matrix_ulong.hpp.

References get().

◆ minmax() [2/2]

void gsl::matrix_ulong::minmax ( unsigned long *  min_out,
unsigned long *  max_out 
) const
inline

C++ version of gsl_matrix_ulong_minmax().

Parameters
min_outminimum element of matrix_ulong
max_outmaximum element of matrix_ulong

Definition at line 1254 of file matrix_ulong.hpp.

References get().

◆ minmax_index()

void gsl::matrix_ulong::minmax_index ( size_t &  imin,
size_t &  jmin,
size_t &  imax,
size_t &  jmax 
) const
inline

C++ version of gsl_matrix_ulong_minmax_index().

Parameters
iminrow index of the first minimum element in the matrix_ulong
jmincolumn index of the first minimum element in the matrix_ulong
imaxrow index of the first maximum element in the matrix_ulong
jmaxcolumn index of the first maximum element in the matrix_ulong

Definition at line 1483 of file matrix_ulong.hpp.

References get().

◆ mul_elements()

int gsl::matrix_ulong::mul_elements ( matrix_ulong const &  b)
inline

C++ version of gsl_matrix_ulong_mul_elements().

Multiply matrices elementwise.

Parameters
bAnother matrix_ulong
Returns
error code on failure

Definition at line 1491 of file matrix_ulong.hpp.

References gsl::sf::mathieu::b(), and get().

◆ norm1()

unsigned long gsl::matrix_ulong::norm1 ( ) const
inline

C++ version of gsl_matrix_ulong_norm1().

Returns
1-norm of matrix

Definition at line 1505 of file matrix_ulong.hpp.

References get().

◆ operator bool()

gsl::matrix_ulong::operator bool ( ) const
inlineexplicit

Allow conversion to bool.

Returns
true or false according as this contains a pointer to a gsl_matrix_ulong

Definition at line 1214 of file matrix_ulong.hpp.

References ccgsl_pointer.

◆ operator=() [1/2]

matrix_ulong & gsl::matrix_ulong::operator= ( matrix_ulong &&  v)
inline

Move operator.

Parameters
vThe matrix_ulong to move.
Returns
A reference to this.

Definition at line 228 of file matrix_ulong.hpp.

References matrix_ulong().

◆ operator=() [2/2]

matrix_ulong & gsl::matrix_ulong::operator= ( matrix_ulong const &  v)
inline

The assignment operator.

This makes a shared copy.

Parameters
vThe matrix_ulong to copy

Definition at line 145 of file matrix_ulong.hpp.

References ccgsl_pointer, count, and owns_data.

◆ operator[]() [1/2]

vector_ulong gsl::matrix_ulong::operator[] ( size_t const  i)
inline

This function allows us to use a matrix_ulong like an array.

Use with caution. Although matrix_ulong[i][j] is possible, it is less efficient than matrix_ulong::set(). The effect is the same as row().

Parameters
iThe index of the row
Returns
A vector_ulong representing a row

Definition at line 1568 of file matrix_ulong.hpp.

References ccgsl_pointer, gsl::exception::GSL_EFAULT, gsl::exception::GSL_EINVAL, size1(), and gsl::vector_ulong::wrap_gsl_vector_ulong_without_ownership().

◆ operator[]() [2/2]

vector_ulong const gsl::matrix_ulong::operator[] ( size_t const  i) const
inline

This function allows us to use a matrix_ulong like an array.

Use with caution. Although matrix_ulong[i][j] is possible, it is much less efficient than matrix_ulong::set(). The effect is the same as row()

Parameters
iThe index of the row
Returns
A vector_ulong representing a row

Definition at line 1602 of file matrix_ulong.hpp.

References ccgsl_pointer, gsl::exception::GSL_EFAULT, and gsl::vector_ulong::wrap_gsl_vector_ulong_without_ownership().

◆ permute()

int gsl::matrix_ulong::permute ( permutation p)
inline

Permute the columns of this by permutation p.

Parameters
pThe permutation
Returns
Error code on failure

Definition at line 1619 of file matrix_ulong.hpp.

References get(), and gsl::permutation::get().

◆ ptr()

unsigned long * gsl::matrix_ulong::ptr ( size_t const  i,
size_t const  j 
)
inline

C++ version of gsl_matrix_ulong_ptr().

Parameters
iindex of row
jindex of column
Returns
pointer to element

Definition at line 1327 of file matrix_ulong.hpp.

References get().

Referenced by gsl::matrix_ulong::iterator_base< container, content, reverse_t >::operator->().

◆ rbegin() [1/2]

reverse_iterator gsl::matrix_ulong::rbegin ( )
inline

Get iterator pointing to first vector_ulong element.

Returns
iterator pointing to first vector_ulong element

Definition at line 662 of file matrix_ulong.hpp.

References ccgsl_pointer, and size1().

◆ rbegin() [2/2]

const_reverse_iterator gsl::matrix_ulong::rbegin ( ) const
inline

Get iterator pointing to first vector_ulong element.

Returns
iterator pointing to first vector_ulong element

Definition at line 670 of file matrix_ulong.hpp.

References ccgsl_pointer, and size1().

◆ rend() [1/2]

reverse_iterator gsl::matrix_ulong::rend ( )
inline

Get iterator pointing beyond last vector_ulong element.

Returns
iterator pointing beyond last vector_ulong element

Definition at line 679 of file matrix_ulong.hpp.

◆ rend() [2/2]

const_reverse_iterator gsl::matrix_ulong::rend ( ) const
inline

Get iterator pointing beyond last vector_ulong element.

Returns
iterator pointing beyond last vector_ulong element

Definition at line 686 of file matrix_ulong.hpp.

◆ reset()

void gsl::matrix_ulong::reset ( )
inline

Stop sharing ownership of the shared pointer.

Definition at line 212 of file matrix_ulong.hpp.

References matrix_ulong().

◆ row() [1/2]

vector_ulong gsl::matrix_ulong::row ( size_t const  i)
inline

C++ version of gsl_matrix_ulong_row().

Parameters
iA row index
Returns
A row as a vector_ulong

Definition at line 775 of file matrix_ulong.hpp.

References get().

Referenced by matrix_ulong().

◆ row() [2/2]

vector_ulong const gsl::matrix_ulong::row ( size_t const  i) const
inline

Another C++ version of gsl_matrix_ulong_const_row().

Parameters
iA row index
Returns
A row as a vector_ulong

Definition at line 998 of file matrix_ulong.hpp.

References get().

◆ scale()

int gsl::matrix_ulong::scale ( unsigned long const  x)
inline

C++ version of gsl_matrix_ulong_scale().

Parameters
xconstant to multiply this by
Returns
error code on failure

Definition at line 1280 of file matrix_ulong.hpp.

References get().

◆ scale_columns()

int gsl::matrix_ulong::scale_columns ( vector_ulong const &  x)
inline

C++ version of gsl_matrix_ulong_scale_columns().

Parameters
xA scalar
Returns
Error code on failure

Definition at line 1519 of file matrix_ulong.hpp.

References get(), and gsl::vector_ulong::get().

◆ scale_rows()

int gsl::matrix_ulong::scale_rows ( vector_ulong const &  x)
inline

C++ version of gsl_matrix_ulong_scale_rows().

Parameters
xA scalar
Returns
Error code on failure

Definition at line 1512 of file matrix_ulong.hpp.

References get(), and gsl::vector_ulong::get().

◆ set()

void gsl::matrix_ulong::set ( size_t const  i,
size_t const  j,
unsigned long  x 
)
inline

C++ version of gsl_matrix_ulong_set().

Parameters
iindex of row
jindex of column
xnew value for element

Definition at line 1320 of file matrix_ulong.hpp.

References get().

Referenced by matrix_ulong().

◆ set_all()

void gsl::matrix_ulong::set_all ( unsigned long  x)
inline

C++ version of gsl_matrix_ulong_set_all().

Parameters
xThe value to which all elements are set

Definition at line 1232 of file matrix_ulong.hpp.

References get().

◆ set_col()

int gsl::matrix_ulong::set_col ( size_t const  j,
vector_ulong const &  v 
)
inline

C++ version of gsl_matrix_ulong_set_col().

Parameters
jThe index of the column
vA vector_ulong
Returns
error code on failure

Definition at line 1558 of file matrix_ulong.hpp.

References get(), and gsl::vector_ulong::get().

◆ set_identity()

void gsl::matrix_ulong::set_identity ( )
inline

C++ version of gsl_matrix_ulong_set_identity().

Definition at line 1402 of file matrix_ulong.hpp.

References get().

◆ set_row()

int gsl::matrix_ulong::set_row ( size_t const  i,
vector_ulong const &  v 
)
inline

C++ version of gsl_matrix_ulong_set_row().

Parameters
iThe index of the row
vA vector_ulong
Returns
error code on failure

Definition at line 1550 of file matrix_ulong.hpp.

References get(), and gsl::vector_ulong::get().

◆ set_zero()

void gsl::matrix_ulong::set_zero ( )
inline

C++ version of gsl_matrix_ulong_set_zero().

Definition at line 1227 of file matrix_ulong.hpp.

References get().

◆ size1()

size_t gsl::matrix_ulong::size1 ( ) const
inline

◆ size2()

size_t gsl::matrix_ulong::size2 ( ) const
inline

The number of columns of the matrix_ulong.

Returns
The number of columns of the matrix_ulong

Definition at line 700 of file matrix_ulong.hpp.

References ccgsl_pointer.

Referenced by clone().

◆ sub()

int gsl::matrix_ulong::sub ( matrix_ulong const &  b)
inline

C++ version of gsl_matrix_ulong_sub().

Parameters
bmatrix_ulong to subtract from this
Returns
error code on failure

Definition at line 1274 of file matrix_ulong.hpp.

References gsl::sf::mathieu::b(), and get().

◆ subcolumn() [1/2]

vector_ulong gsl::matrix_ulong::subcolumn ( size_t const  j,
size_t const  offset,
size_t const  n 
)
inline

C++ version of gsl_matrix_ulong_subcolumn().

Parameters
jA column index
offsetA row offset
nThe number of elements
Returns
A subcolumn as a vector_ulong

Definition at line 838 of file matrix_ulong.hpp.

References get(), and gsl::rstat::n().

◆ subcolumn() [2/2]

vector_ulong const gsl::matrix_ulong::subcolumn ( size_t const  j,
size_t const  offset,
size_t const  n 
) const
inline

Another C++ version of gsl_matrix_ulong_const_subcolumn().

Parameters
jA column index
offsetA row offset
nThe number of elements
Returns
A subcolumn as a vector_ulong

Definition at line 1061 of file matrix_ulong.hpp.

References get(), and gsl::rstat::n().

◆ subdiagonal() [1/2]

vector_ulong gsl::matrix_ulong::subdiagonal ( size_t const  k)
inline

C++ version of gsl_matrix_ulong_subdiagonal().

Parameters
kAn index
Returns
Subdiagonal k as a vector_ulong

Definition at line 804 of file matrix_ulong.hpp.

References get().

◆ subdiagonal() [2/2]

vector_ulong const gsl::matrix_ulong::subdiagonal ( size_t const  k) const
inline

Another C++ version of gsl_matrix_ulong_const_subdiagonal().

Parameters
kAn index
Returns
Subdiagonal k as a vector_ulong

Definition at line 1027 of file matrix_ulong.hpp.

References get().

◆ submatrix() [1/2]

matrix_ulong gsl::matrix_ulong::submatrix ( size_t const  i,
size_t const  j,
size_t const  n1,
size_t const  n2 
)
inline

C++ version of gsl_matrix_ulong_submatrix().

Parameters
iIndex in this of first row of submatrix
jIndex in this of first column of submatrix
n1Number of rows of submatrix
n2Number of columns of submatrix
Returns
The submatrix

Definition at line 765 of file matrix_ulong.hpp.

References get(), and matrix_ulong().

◆ submatrix() [2/2]

matrix_ulong const gsl::matrix_ulong::submatrix ( size_t const  i,
size_t const  j,
size_t const  n1,
size_t const  n2 
) const
inline

Another C++ version of gsl_matrix_ulong_const_submatrix().

Parameters
iIndex in this of first row of submatrix
jIndex in this of first column of submatrix
n1Number of rows of submatrix
n2Number of columns of submatrix
Returns
The submatrix

Definition at line 988 of file matrix_ulong.hpp.

References get(), and matrix_ulong().

◆ subrow() [1/2]

vector_ulong gsl::matrix_ulong::subrow ( size_t const  i,
size_t const  offset,
size_t const  n 
)
inline

C++ version of gsl_matrix_ulong_subrow().

Parameters
iA row index
offsetA column offset
nThe number of elements
Returns
A subrow as a vector_ulong

Definition at line 826 of file matrix_ulong.hpp.

References get(), and gsl::rstat::n().

◆ subrow() [2/2]

vector_ulong const gsl::matrix_ulong::subrow ( size_t const  i,
size_t const  offset,
size_t const  n 
) const
inline

Another C++ version of gsl_matrix_ulong_const_subrow().

Parameters
iA row index
offsetA column offset
nThe number of elements
Returns
A subrow as a vector_ulong

Definition at line 1049 of file matrix_ulong.hpp.

References get(), and gsl::rstat::n().

◆ superdiagonal() [1/2]

vector_ulong gsl::matrix_ulong::superdiagonal ( size_t const  k)
inline

C++ version of gsl_matrix_ulong_superdiagonal().

Parameters
kAn index
Returns
Subdiagonal k as a vector_ulong

Definition at line 814 of file matrix_ulong.hpp.

References get().

◆ superdiagonal() [2/2]

vector_ulong const gsl::matrix_ulong::superdiagonal ( size_t const  k) const
inline

Another C++ version of gsl_matrix_ulong_const_superdiagonal().

Parameters
kAn index
Returns
Subdiagonal k as a vector_ulong

Definition at line 1037 of file matrix_ulong.hpp.

References get().

◆ swap()

void gsl::matrix_ulong::swap ( matrix_ulong m)
inline

Swap two matrix_ulong objects.

This works even if the matrix_ulong objects have different sizes because it swaps pointers.

Parameters
mThe matrix_ulong to swap with this.

Definition at line 734 of file matrix_ulong.hpp.

References ccgsl_pointer, and count.

◆ swap_columns()

int gsl::matrix_ulong::swap_columns ( size_t const  i,
size_t const  j 
)
inline

C++ version of gsl_matrix_ulong_swap_columns().

Parameters
iIndex of first column
jIndex of second column
Returns
error code on failure

Definition at line 1416 of file matrix_ulong.hpp.

References get().

◆ swap_rowcol()

int gsl::matrix_ulong::swap_rowcol ( size_t const  i,
size_t const  j 
)
inline

C++ version of gsl_matrix_ulong_swap_rowcol().

Swap row and column in place. Matrix must be square.

Parameters
iindex of row
jindex of column
Returns
error code on failure

Definition at line 1424 of file matrix_ulong.hpp.

References get().

◆ swap_rows()

int gsl::matrix_ulong::swap_rows ( size_t const  i,
size_t const  j 
)
inline

C++ version of gsl_matrix_ulong_swap_rows().

Parameters
iIndex of first row
jIndex of second row
Returns
error code on failure

Definition at line 1409 of file matrix_ulong.hpp.

References get().

◆ transpose()

int gsl::matrix_ulong::transpose ( )
inline

C++ version of gsl_matrix_ulong_transpose().

Returns
error code on failure.

Definition at line 1429 of file matrix_ulong.hpp.

References get().

◆ transpose_memcpy()

int gsl::matrix_ulong::transpose_memcpy ( matrix_ulong const &  src)
inline

C++ version of gsl_matrix_ulong_transpose_memcpy().

Parameters
srcmatrix_ulong whose transpose it to be copied to this
Returns
error code on failure

Definition at line 1435 of file matrix_ulong.hpp.

References get().

◆ transpose_tricpy()

void gsl::matrix_ulong::transpose_tricpy ( CBLAS_UPLO_t  Uplo,
CBLAS_DIAG_t  Diag,
matrix_ulong const &  src 
)
inline

Copy the upper or lower triangular part of matrix src to this.

Parameters
UploUpper or lower triangle: CblasUpper or CBlasLower
DiagDiagonal type
srcThe matrix to copy from

Definition at line 753 of file matrix_ulong.hpp.

References get().

◆ tricpy()

void gsl::matrix_ulong::tricpy ( CBLAS_UPLO_t  Uplo,
CBLAS_DIAG_t  Diag,
matrix_ulong const &  src 
)
inline

Copy the upper or lower triangular part of matrix src to this.

Parameters
UploUpper or lower triangle: CblasUpper or CBlasLower
DiagDiagonal type
srcThe matrix to copy from

Definition at line 744 of file matrix_ulong.hpp.

References get().

◆ unique()

bool gsl::matrix_ulong::unique ( ) const
inline

Find if this is the only object sharing the gsl_matrix_ulong.

Returns
true or falses according as this is the only matrix_ulong object sharing the gsl_matrix_ulong

Definition at line 1200 of file matrix_ulong.hpp.

References count.

◆ use_count()

size_t gsl::matrix_ulong::use_count ( ) const
inline

Find how many matrix_ulong objects share this pointer.

Returns
the number of matrix_ulong objects that share this pointer

Definition at line 1205 of file matrix_ulong.hpp.

References count.

◆ view_array() [1/2]

static matrix_ulong gsl::matrix_ulong::view_array ( unsigned long *  base,
size_t const  n1,
size_t const  n2 
)
inlinestatic

C++ version of gsl_matrix_ulong_view_array().

Parameters
baseAn array of type unsigned long
n1The number of rows
n2The number of columns
Returns
A matrix_ulong

Definition at line 850 of file matrix_ulong.hpp.

References matrix_ulong().

◆ view_array() [2/2]

static matrix_ulong const gsl::matrix_ulong::view_array ( unsigned long const *  base,
size_t const  n1,
size_t const  n2 
)
inlinestatic

Another C++ version of gsl_matrix_ulong_const_view_array().

Parameters
baseAn array of type unsigned long
n1The number of rows
n2The number of columns
Returns
A matrix_ulong

Definition at line 1125 of file matrix_ulong.hpp.

References matrix_ulong().

◆ view_array_with_tda() [1/2]

static matrix_ulong gsl::matrix_ulong::view_array_with_tda ( unsigned long *  base,
size_t const  n1,
size_t const  n2,
size_t const  tda 
)
inlinestatic

C++ version of gsl_matrix_ulong_view_array_with_tda().

Parameters
baseAn array of type unsigned long
n1The number of rows
n2The number of columns
tdaThe number of columns in memory
Returns
A matrix_ulong

Definition at line 863 of file matrix_ulong.hpp.

References matrix_ulong().

◆ view_array_with_tda() [2/2]

static matrix_ulong const gsl::matrix_ulong::view_array_with_tda ( unsigned long const *  base,
size_t const  n1,
size_t const  n2,
size_t const  tda 
)
inlinestatic

Another C++ version of gsl_matrix_ulong_const_view_array_with_tda().

Parameters
baseAn array of type unsigned long
n1The number of rows
n2The number of columns
tdaThe number of columns in memory
Returns
A matrix_ulong

Definition at line 1139 of file matrix_ulong.hpp.

References matrix_ulong().

◆ view_vector() [1/2]

static matrix_ulong gsl::matrix_ulong::view_vector ( vector_ulong v,
size_t const  n1,
size_t const  n2 
)
inlinestatic

C++ version of gsl_matrix_ulong_view_vector().

Parameters
vA vector_ulong
n1The number of rows
n2The number of columns
Returns
A matrix_ulong

Definition at line 875 of file matrix_ulong.hpp.

References gsl::vector_ulong::get(), and matrix_ulong().

◆ view_vector() [2/2]

static matrix_ulong const gsl::matrix_ulong::view_vector ( vector_ulong const &  v,
size_t const  n1,
size_t const  n2 
)
inlinestatic

Another C++ version of gsl_matrix_ulong_const_view_vector().

Parameters
vA vector_ulong
n1The number of rows
n2The number of columns
Returns
A matrix_ulong

Definition at line 1151 of file matrix_ulong.hpp.

References gsl::vector_ulong::get(), and matrix_ulong().

◆ view_vector_with_tda() [1/2]

static matrix_ulong gsl::matrix_ulong::view_vector_with_tda ( vector_ulong v,
size_t const  n1,
size_t const  n2,
size_t const  tda 
)
inlinestatic

C++ version of gsl_matrix_ulong_view_vector_with_tda().

Parameters
vA vector_ulong
n1The number of rows
n2The number of columns
tdaThe number of columns in memory
Returns
A matrix_ulong

Definition at line 888 of file matrix_ulong.hpp.

References gsl::vector_ulong::get(), and matrix_ulong().

◆ view_vector_with_tda() [2/2]

static matrix_ulong const gsl::matrix_ulong::view_vector_with_tda ( vector_ulong const &  v,
size_t const  n1,
size_t const  n2,
size_t const  tda 
)
inlinestatic

Another C++ version of gsl_matrix_ulong_const_view_vector_with_tda().

Parameters
vA vector_ulong
n1The number of rows
n2The number of columns
tdaThe number of columns in memory
Returns
A matrix_ulong

Definition at line 1165 of file matrix_ulong.hpp.

References gsl::vector_ulong::get(), and matrix_ulong().

◆ wrap_gsl_matrix_ulong_without_ownership()

void gsl::matrix_ulong::wrap_gsl_matrix_ulong_without_ownership ( gsl_matrix_ulong *  v)
inline

This function is intended mainly for internal use.

It allows this to point to a gsl_matrix_ulong without the possibility deleting it when this is no longer in scope. It is the responsibility of the programmer to delete v. The function is used internally for converting a function that takes a gsl::matrix_ulong* argument to one that takes a gsl_matrix_ulong* argument.

Parameters
vThe gsl_matrix_ulong

Definition at line 196 of file matrix_ulong.hpp.

References ccgsl_pointer, count, and owns_data.

Member Data Documentation

◆ ccgsl_pointer

gsl_matrix_ulong* gsl::matrix_ulong::ccgsl_pointer
private

◆ count

size_t* gsl::matrix_ulong::count
private

The shared reference count.

Definition at line 1182 of file matrix_ulong.hpp.

Referenced by matrix_ulong(), operator=(), swap(), unique(), use_count(), wrap_gsl_matrix_ulong_without_ownership(), and ~matrix_ulong().

◆ owns_data

bool gsl::matrix_ulong::owns_data
private

Used to allow a vector that does not own its data.

Definition at line 1174 of file matrix_ulong.hpp.

Referenced by matrix_ulong(), operator=(), wrap_gsl_matrix_ulong_without_ownership(), and ~matrix_ulong().


The documentation for this class was generated from the following file: