NEURON
spfactor.cpp File Reference
#include "spconfig.h"
#include "spdefs.h"
#include "spmatrix.h"
#include <climits>

Go to the source code of this file.

Macros

#define spINSIDE_SPARSE
 

Functions

static void CreateInternalVectors (MatrixPtr Matrix)
 
static void CountMarkowitz (MatrixPtr Matrix, RealVector RHS, int Step)
 
static void MarkowitzProducts (MatrixPtr Matrix, int Step)
 
static ElementPtr SearchForPivot (MatrixPtr Matrix, int Step, int DiagPivoting)
 
static ElementPtr SearchForSingleton (MatrixPtr Matrix, int Step)
 
static ElementPtr QuicklySearchDiagonal (MatrixPtr Matrix, int Step)
 
static ElementPtr SearchDiagonal (MatrixPtr Matrix, int Step)
 
static ElementPtr SearchEntireMatrix (MatrixPtr Matrix, int Step)
 
static RealNumber FindLargestInCol (ElementPtr pElement)
 
static RealNumber FindBiggestInColExclude (MatrixPtr Matrix, ElementPtr pElement, int Step)
 
static void ExchangeRowsAndCols (MatrixPtr Matrix, ElementPtr pPivot, int Step)
 
static void ExchangeColElements (MatrixPtr Matrix, int Row1, ElementPtr Element1, int Row2, ElementPtr Element2, int Column)
 
static void ExchangeRowElements (MatrixPtr Matrix, int Col1, ElementPtr Element1, int Col2, ElementPtr Element2, int Row)
 
static void RealRowColElimination (MatrixPtr Matrix, ElementPtr pPivot)
 
static void UpdateMarkowitzNumbers (MatrixPtr Matrix, ElementPtr pPivot)
 
static ElementPtr CreateFillin (MatrixPtr Matrix, int Row, int Col)
 
static int MatrixIsSingular (MatrixPtr Matrix, int Step)
 
static int ZeroPivot (MatrixPtr Matrix, int Step)
 
ElementPtr spcFindElementInCol (MatrixPtr Matrix, ElementPtr *LastAddr, int Row, int Col, BOOLEAN CreateIfMissing)
 
void spcLinkRows (MatrixPtr)
 
ElementPtr spcCreateElement (MatrixPtr Matrix, int Row, int Col, ElementPtr *LastAddr, BOOLEAN Fillin)
 
int spOrderAndFactor (char *eMatrix, RealNumber *RHS, RealNumber RelThreshold, RealNumber AbsThreshold, BOOLEAN DiagPivoting)
 
int spFactor (char *eMatrix)
 
void spPartition (char *eMatrix, int Mode)
 
void spcRowExchange (MatrixPtr Matrix, int Row1, int Row2)
 
void spcColExchange (MatrixPtr Matrix, int Col1, int Col2)
 

Macro Definition Documentation

◆ spINSIDE_SPARSE

#define spINSIDE_SPARSE

Definition at line 57 of file spfactor.cpp.

Function Documentation

◆ CountMarkowitz()

static void CountMarkowitz ( MatrixPtr  Matrix,
RealVector  RHS,
int  Step 
)
static

Definition at line 606 of file spfactor.cpp.

◆ CreateFillin()

static ElementPtr CreateFillin ( MatrixPtr  Matrix,
int  Row,
int  Col 
)
static

Definition at line 2376 of file spfactor.cpp.

◆ CreateInternalVectors()

static void CreateInternalVectors ( MatrixPtr  Matrix)
static

Definition at line 539 of file spfactor.cpp.

◆ ExchangeColElements()

static void ExchangeColElements ( MatrixPtr  Matrix,
int  Row1,
ElementPtr  Element1,
int  Row2,
ElementPtr  Element2,
int  Column 
)
static

Definition at line 1970 of file spfactor.cpp.

◆ ExchangeRowElements()

static void ExchangeRowElements ( MatrixPtr  Matrix,
int  Col1,
ElementPtr  Element1,
int  Col2,
ElementPtr  Element2,
int  Row 
)
static

Definition at line 2092 of file spfactor.cpp.

◆ ExchangeRowsAndCols()

static void ExchangeRowsAndCols ( MatrixPtr  Matrix,
ElementPtr  pPivot,
int  Step 
)
static

Definition at line 1687 of file spfactor.cpp.

◆ FindBiggestInColExclude()

static RealNumber FindBiggestInColExclude ( MatrixPtr  Matrix,
ElementPtr  pElement,
int  Step 
)
static

Definition at line 1621 of file spfactor.cpp.

◆ FindLargestInCol()

static RealNumber FindLargestInCol ( ElementPtr  pElement)
static

Definition at line 1567 of file spfactor.cpp.

◆ MarkowitzProducts()

static void MarkowitzProducts ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 685 of file spfactor.cpp.

◆ MatrixIsSingular()

static int MatrixIsSingular ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 2423 of file spfactor.cpp.

◆ QuicklySearchDiagonal()

static ElementPtr QuicklySearchDiagonal ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 1204 of file spfactor.cpp.

◆ RealRowColElimination()

static void RealRowColElimination ( MatrixPtr  Matrix,
ElementPtr  pPivot 
)
static

Definition at line 2203 of file spfactor.cpp.

◆ SearchDiagonal()

static ElementPtr SearchDiagonal ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 1356 of file spfactor.cpp.

◆ SearchEntireMatrix()

static ElementPtr SearchEntireMatrix ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 1467 of file spfactor.cpp.

◆ SearchForPivot()

static ElementPtr SearchForPivot ( MatrixPtr  Matrix,
int  Step,
int  DiagPivoting 
)
static

Definition at line 755 of file spfactor.cpp.

◆ SearchForSingleton()

static ElementPtr SearchForSingleton ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 839 of file spfactor.cpp.

◆ spcColExchange()

void spcColExchange ( MatrixPtr  Matrix,
int  Col1,
int  Col2 
)

Definition at line 1880 of file spfactor.cpp.

◆ spcCreateElement()

ElementPtr spcCreateElement ( MatrixPtr  Matrix,
int  Row,
int  Col,
ElementPtr LastAddr,
BOOLEAN  Fillin 
)

Definition at line 487 of file spbuild.cpp.

◆ spcFindElementInCol()

ElementPtr spcFindElementInCol ( MatrixPtr  Matrix,
ElementPtr LastAddr,
int  Row,
int  Col,
BOOLEAN  CreateIfMissing 
)

Definition at line 232 of file spbuild.cpp.

◆ spcLinkRows()

void spcLinkRows ( MatrixPtr  Matrix)

Definition at line 608 of file spbuild.cpp.

◆ spcRowExchange()

void spcRowExchange ( MatrixPtr  Matrix,
int  Row1,
int  Row2 
)

Definition at line 1797 of file spfactor.cpp.

◆ spFactor()

int spFactor ( char *  eMatrix)

Definition at line 307 of file spfactor.cpp.

◆ spOrderAndFactor()

int spOrderAndFactor ( char *  eMatrix,
RealNumber RHS,
RealNumber  RelThreshold,
RealNumber  AbsThreshold,
BOOLEAN  DiagPivoting 
)

Definition at line 182 of file spfactor.cpp.

◆ spPartition()

void spPartition ( char *  eMatrix,
int  Mode 
)

Definition at line 434 of file spfactor.cpp.

◆ UpdateMarkowitzNumbers()

static void UpdateMarkowitzNumbers ( MatrixPtr  Matrix,
ElementPtr  pPivot 
)
static

Definition at line 2301 of file spfactor.cpp.

◆ ZeroPivot()

static int ZeroPivot ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 2432 of file spfactor.cpp.