NEURON
OcSparseMatrix Class Reference

#include <ocmatrix.h>

Inheritance diagram for OcSparseMatrix:
OcMatrix

Public Member Functions

 OcSparseMatrix (int, int)
 
virtual ~OcSparseMatrix ()
 
virtual double * mep (int, int)
 
virtual double * pelm (int, int)
 
virtual int nrow ()
 
virtual int ncol ()
 
virtual double getval (int, int)
 
virtual void ident (void)
 
virtual void mulv (Vect *in, Vect *out)
 
virtual void solv (Vect *vin, Vect *vout, bool use_lu)
 
virtual void setrow (int, Vect *in)
 
virtual void setcol (int, Vect *in)
 
virtual void setdiag (int, Vect *in)
 
virtual void setrow (int, double in)
 
virtual void setcol (int, double in)
 
virtual void setdiag (int, double in)
 
virtual void nonzeros (vector< int > &m, vector< int > &n)
 
virtual int sprowlen (int)
 
virtual double spgetrowval (int i, int jindx, int *j)
 
virtual void zero ()
 
- Public Member Functions inherited from OcMatrix
virtual ~OcMatrix ()
 
double & operator() (int i, int j)
 
virtual void resize (int, int)
 
OcFullMatrixfull ()
 
void mulv (Vect &in, Vect &out)
 
virtual void mulm (Matrix *in, Matrix *out)
 
virtual void muls (double, Matrix *out)
 
virtual void add (Matrix *, Matrix *out)
 
virtual void getrow (int, Vect *out)
 
virtual void getcol (int, Vect *out)
 
virtual void getdiag (int, Vect *out)
 
virtual void exp (Matrix *out)
 
virtual void pow (int, Matrix *out)
 
virtual void inverse (Matrix *out)
 
virtual void copy (Matrix *out)
 
virtual void bcopy (Matrix *mout, int i0, int j0, int n0, int m0, int i1, int j1)
 
virtual void transpose (Matrix *out)
 
virtual void symmeigen (Matrix *mout, Vect *vout)
 
virtual void svd1 (Matrix *u, Matrix *v, Vect *d)
 
virtual double det (int *e)
 
void unimp ()
 
Object ** temp_objvar ()
 

Private Attributes

SPMATm_
 
SPMATlu_factor_
 
PERMlu_pivot_
 

Additional Inherited Members

- Public Types inherited from OcMatrix
enum  { MFULL =1, MSPARSE, MBAND }
 
- Static Public Member Functions inherited from OcMatrix
static OcMatrixinstance (int nrow, int ncol, int type=MFULL)
 
- Public Attributes inherited from OcMatrix
Objectobj_
 
- Protected Member Functions inherited from OcMatrix
 OcMatrix (int type)
 

Detailed Description

Definition at line 120 of file ocmatrix.h.

Constructor & Destructor Documentation

◆ OcSparseMatrix()

OcSparseMatrix::OcSparseMatrix ( int  nrow,
int  ncol 
)

Definition at line 354 of file ocmatrix.cpp.

◆ ~OcSparseMatrix()

OcSparseMatrix::~OcSparseMatrix ( )
virtual

Definition at line 364 of file ocmatrix.cpp.

Member Function Documentation

◆ getval()

double OcSparseMatrix::getval ( int  i,
int  j 
)
virtual

Reimplemented from OcMatrix.

Definition at line 400 of file ocmatrix.cpp.

◆ ident()

void OcSparseMatrix::ident ( void  )
virtual

Reimplemented from OcMatrix.

Definition at line 527 of file ocmatrix.cpp.

◆ mep()

double * OcSparseMatrix::mep ( int  i,
int  j 
)
virtual

Reimplemented from OcMatrix.

Definition at line 383 of file ocmatrix.cpp.

◆ mulv()

void OcSparseMatrix::mulv ( Vect in,
Vect out 
)
virtual

Reimplemented from OcMatrix.

Definition at line 409 of file ocmatrix.cpp.

◆ ncol()

int OcSparseMatrix::ncol ( )
virtual

Reimplemented from OcMatrix.

Definition at line 406 of file ocmatrix.cpp.

◆ nonzeros()

void OcSparseMatrix::nonzeros ( vector< int > &  m,
vector< int > &  n 
)
virtual

Reimplemented from OcMatrix.

Definition at line 74 of file ocmatrix.cpp.

◆ nrow()

int OcSparseMatrix::nrow ( )
virtual

Reimplemented from OcMatrix.

Definition at line 403 of file ocmatrix.cpp.

◆ pelm()

double * OcSparseMatrix::pelm ( int  i,
int  j 
)
virtual

Definition at line 373 of file ocmatrix.cpp.

◆ setcol() [1/2]

void OcSparseMatrix::setcol ( int  k,
Vect in 
)
virtual

Reimplemented from OcMatrix.

Definition at line 456 of file ocmatrix.cpp.

◆ setcol() [2/2]

void OcSparseMatrix::setcol ( int  k,
double  in 
)
virtual

Reimplemented from OcMatrix.

Definition at line 520 of file ocmatrix.cpp.

◆ setdiag() [1/2]

void OcSparseMatrix::setdiag ( int  k,
Vect in 
)
virtual

Reimplemented from OcMatrix.

Definition at line 476 of file ocmatrix.cpp.

◆ setdiag() [2/2]

void OcSparseMatrix::setdiag ( int  k,
double  in 
)
virtual

Reimplemented from OcMatrix.

Definition at line 531 of file ocmatrix.cpp.

◆ setrow() [1/2]

void OcSparseMatrix::setrow ( int  k,
Vect in 
)
virtual

Reimplemented from OcMatrix.

Definition at line 436 of file ocmatrix.cpp.

◆ setrow() [2/2]

void OcSparseMatrix::setrow ( int  k,
double  in 
)
virtual

Reimplemented from OcMatrix.

Definition at line 513 of file ocmatrix.cpp.

◆ solv()

void OcSparseMatrix::solv ( Vect vin,
Vect vout,
bool  use_lu 
)
virtual

Reimplemented from OcMatrix.

Definition at line 416 of file ocmatrix.cpp.

◆ spgetrowval()

double OcSparseMatrix::spgetrowval ( int  i,
int  jindx,
int j 
)
virtual

Reimplemented from OcMatrix.

Definition at line 550 of file ocmatrix.cpp.

◆ sprowlen()

int OcSparseMatrix::sprowlen ( int  i)
virtual

Reimplemented from OcMatrix.

Definition at line 546 of file ocmatrix.cpp.

◆ zero()

void OcSparseMatrix::zero ( )
virtual

Reimplemented from OcMatrix.

Definition at line 396 of file ocmatrix.cpp.

Member Data Documentation

◆ lu_factor_

SPMAT* OcSparseMatrix::lu_factor_
private

Definition at line 150 of file ocmatrix.h.

◆ lu_pivot_

PERM* OcSparseMatrix::lu_pivot_
private

Definition at line 151 of file ocmatrix.h.

◆ m_

SPMAT* OcSparseMatrix::m_
private

Definition at line 149 of file ocmatrix.h.


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