NEURON
spfactor.c File Reference
#include "spconfig.h"
#include "spmatrix.h"
#include "spdefs.h"

Go to the source code of this file.

Macros

#define spINSIDE_SPARSE
 
#define generic
 

Functions

static int FactorComplexMatrix ()
 
static void CreateInternalVectors ()
 
static void CountMarkowitz ()
 
static void MarkowitzProducts ()
 
static ElementPtr SearchForPivot ()
 
static ElementPtr SearchForSingleton ()
 
static ElementPtr QuicklySearchDiagonal ()
 
static ElementPtr SearchDiagonal ()
 
static ElementPtr SearchEntireMatrix ()
 
static RealNumber FindLargestInCol ()
 
static RealNumber FindBiggestInColExclude ()
 
static void ExchangeRowsAndCols ()
 
static void ExchangeColElements ()
 
static void ExchangeRowElements ()
 
static void RealRowColElimination ()
 
static void ComplexRowColElimination ()
 
static void UpdateMarkowitzNumbers ()
 
static ElementPtr CreateFillin ()
 
static int MatrixIsSingular ()
 
static int ZeroPivot ()
 
void spcLinkRows (MatrixPtr)
 
int spOrderAndFactor (char *eMatrix, RHS, RelThreshold, AbsThreshold, BOOLEAN DiagPivoting)
 
int spFactor (char *eMatrix)
 
static int FactorComplexMatrix (MatrixPtr Matrix)
 
void spPartition (char *eMatrix, int Mode)
 
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)
 
void spcRowExchange ()
 
void spcColExchange ()
 
static void ExchangeRowsAndCols (MatrixPtr Matrix, ElementPtr pPivot, int Step)
 
void spcRowExchange (MatrixPtr Matrix, int Row1, int Row2)
 
void spcColExchange (MatrixPtr Matrix, int Col1, int Col2)
 
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 ComplexRowColElimination (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)
 

Variables

static char copyright []
 
static char RCSid []
 

Macro Definition Documentation

◆ generic

#define generic

◆ spINSIDE_SPARSE

#define spINSIDE_SPARSE

Definition at line 71 of file spfactor.c.

Function Documentation

◆ ComplexRowColElimination() [1/2]

static void ComplexRowColElimination ( )
static

◆ ComplexRowColElimination() [2/2]

static void ComplexRowColElimination ( MatrixPtr  Matrix,
ElementPtr  pPivot 
)
static

Definition at line 2808 of file spfactor.c.

◆ CountMarkowitz() [1/2]

static void CountMarkowitz ( )
static

◆ CountMarkowitz() [2/2]

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

Definition at line 835 of file spfactor.c.

◆ CreateFillin() [1/2]

static ElementPtr CreateFillin ( )
static

◆ CreateFillin() [2/2]

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

Definition at line 2980 of file spfactor.c.

◆ CreateInternalVectors() [1/2]

static void CreateInternalVectors ( )
static

◆ CreateInternalVectors() [2/2]

static void CreateInternalVectors ( MatrixPtr  Matrix)
static

Definition at line 746 of file spfactor.c.

◆ ExchangeColElements() [1/2]

static void ExchangeColElements ( )
static

◆ ExchangeColElements() [2/2]

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

Definition at line 2442 of file spfactor.c.

◆ ExchangeRowElements() [1/2]

static void ExchangeRowElements ( )
static

◆ ExchangeRowElements() [2/2]

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

Definition at line 2584 of file spfactor.c.

◆ ExchangeRowsAndCols() [1/2]

static void ExchangeRowsAndCols ( )
static

◆ ExchangeRowsAndCols() [2/2]

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

Definition at line 2105 of file spfactor.c.

◆ FactorComplexMatrix() [1/2]

static int FactorComplexMatrix ( )
static

◆ FactorComplexMatrix() [2/2]

static int FactorComplexMatrix ( MatrixPtr  Matrix)
static

Definition at line 458 of file spfactor.c.

◆ FindBiggestInColExclude() [1/2]

static RealNumber FindBiggestInColExclude ( )
static

◆ FindBiggestInColExclude() [2/2]

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

Definition at line 2025 of file spfactor.c.

◆ FindLargestInCol() [1/2]

static RealNumber FindLargestInCol ( )
static

◆ FindLargestInCol() [2/2]

static RealNumber FindLargestInCol ( ElementPtr  pElement)
static

Definition at line 1959 of file spfactor.c.

◆ MarkowitzProducts() [1/2]

static void MarkowitzProducts ( )
static

◆ MarkowitzProducts() [2/2]

static void MarkowitzProducts ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 945 of file spfactor.c.

◆ MatrixIsSingular() [1/2]

static int MatrixIsSingular ( )
static

◆ MatrixIsSingular() [2/2]

static int MatrixIsSingular ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 3042 of file spfactor.c.

◆ QuicklySearchDiagonal() [1/2]

static ElementPtr QuicklySearchDiagonal ( )
static

◆ QuicklySearchDiagonal() [2/2]

static ElementPtr QuicklySearchDiagonal ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 1542 of file spfactor.c.

◆ RealRowColElimination() [1/2]

static void RealRowColElimination ( )
static

◆ RealRowColElimination() [2/2]

static void RealRowColElimination ( MatrixPtr  Matrix,
ElementPtr  pPivot 
)
static

Definition at line 2719 of file spfactor.c.

◆ SearchDiagonal() [1/2]

static ElementPtr SearchDiagonal ( )
static

◆ SearchDiagonal() [2/2]

static ElementPtr SearchDiagonal ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 1707 of file spfactor.c.

◆ SearchEntireMatrix() [1/2]

static ElementPtr SearchEntireMatrix ( )
static

◆ SearchEntireMatrix() [2/2]

static ElementPtr SearchEntireMatrix ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 1836 of file spfactor.c.

◆ SearchForPivot() [1/2]

static ElementPtr SearchForPivot ( )
static

◆ SearchForPivot() [2/2]

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

Definition at line 1032 of file spfactor.c.

◆ SearchForSingleton() [1/2]

static ElementPtr SearchForSingleton ( )
static

◆ SearchForSingleton() [2/2]

static ElementPtr SearchForSingleton ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 1133 of file spfactor.c.

◆ spcColExchange() [1/2]

void spcColExchange ( )

◆ spcColExchange() [2/2]

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

Definition at line 2335 of file spfactor.c.

◆ spcLinkRows()

void spcLinkRows ( MatrixPtr  Matrix)

Definition at line 869 of file spbuild.c.

◆ spcRowExchange() [1/2]

void spcRowExchange ( )

◆ spcRowExchange() [2/2]

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

Definition at line 2234 of file spfactor.c.

◆ spFactor()

int spFactor ( char *  eMatrix)

Definition at line 338 of file spfactor.c.

◆ spOrderAndFactor()

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

Definition at line 197 of file spfactor.c.

◆ spPartition()

void spPartition ( char *  eMatrix,
int  Mode 
)

Definition at line 597 of file spfactor.c.

◆ UpdateMarkowitzNumbers() [1/2]

static void UpdateMarkowitzNumbers ( )
static

◆ UpdateMarkowitzNumbers() [2/2]

static void UpdateMarkowitzNumbers ( MatrixPtr  Matrix,
ElementPtr  pPivot 
)
static

Definition at line 2892 of file spfactor.c.

◆ ZeroPivot() [1/2]

static int ZeroPivot ( )
static

◆ ZeroPivot() [2/2]

static int ZeroPivot ( MatrixPtr  Matrix,
int  Step 
)
static

Definition at line 3056 of file spfactor.c.

Variable Documentation

◆ copyright

char copyright[]
static
Initial value:
=
"Sparse1.3: Copyright (c) 1985,86,87,88 by Kenneth S. Kundert"

Definition at line 51 of file spfactor.c.

◆ RCSid

char RCSid[]
static
Initial value:
=
"@(#)$Header$"

Definition at line 53 of file spfactor.c.