#include "spconfig.h"
#include "spmatrix.h"
#include "spdefs.h"
Go to the source code of this file.
static void AllocateBlockOfAllocationList |
( |
| ) |
|
|
static |
static void AllocateBlockOfAllocationList |
( |
MatrixPtr |
Matrix | ) |
|
|
static |
Definition at line 588 of file spalloc.c.
608 ListPtr += ELEMENTS_PER_ALLOCATION;
609 for (I = ELEMENTS_PER_ALLOCATION; I > 0; I--)
#define ALLOC(type, number)
struct AllocationRecord * NextRecord
AllocationListPtr TopOfAllocationList
static void InitializeElementBlocks |
( |
| ) |
|
|
static |
static void InitializeElementBlocks |
( |
MatrixPtr |
Matrix, |
|
|
int |
InitialNumberOfElements, |
|
|
int |
NumberOfFillinsExpected |
|
) |
| |
|
static |
Definition at line 388 of file spalloc.c.
ElementPtr NextAvailFillin
#define ALLOC(type, number)
int NumberOfFillinsInList
struct FillinListNodeStruct * FirstFillinListNode
struct FillinListNodeStruct * LastFillinListNode
register ElementPtr pElement
ElementPtr NextAvailElement
static void RecordAllocation()
struct FillinListNodeStruct * Next
static void RecordAllocation |
( |
| ) |
|
|
static |
static void RecordAllocation |
( |
MatrixPtr |
Matrix, |
|
|
char * |
AllocatedPtr |
|
) |
| |
|
static |
Definition at line 531 of file spalloc.c.
541 if (AllocatedPtr ==
NULL)
550 {
FREE(AllocatedPtr);
static void AllocateBlockOfAllocationList()
AllocationListPtr TopOfAllocationList
Definition at line 327 of file spalloc.c.
#define ALLOC(type, number)
register ElementPtr pElement
ElementPtr NextAvailElement
static void RecordAllocation()
Definition at line 454 of file spalloc.c.
463 #if NOT STRIP OR LINT ElementPtr NextAvailFillin
#define ALLOC(type, number)
int NumberOfFillinsInList
struct FillinListNodeStruct * LastFillinListNode
ElementPtr spcGetElement(MatrixPtr Matrix)
static void RecordAllocation()
struct FillinListNodeStruct * Next
char* spCreate |
( |
int |
Size, |
|
|
BOOLEAN |
Complex, |
|
|
int * |
pError |
|
) |
| |
Definition at line 133 of file spalloc.c.
138 register unsigned SizePlusOne;
168 AllocatedSize =
MAX(
Size, MINIMUM_ALLOCATED_SIZE );
169 SizePlusOne = (unsigned)(AllocatedSize + 1);
182 Matrix->
Error = *pError;
255 for (I = 1; I <= AllocatedSize; I++)
270 for (I = 1; I <= AllocatedSize; I++)
280 SPACE_FOR_FILL_INS*AllocatedSize );
284 return (
char *)Matrix;
static void InitializeElementBlocks()
#define ALLOC(type, number)
void spDestroy(char *eMatrix)
ArrayOfElementPtrs FirstInRow
BOOLEAN PreviousMatrixWasComplex
BOOLEAN NumberOfInterchangesIsOdd
struct MatrixElement * NextInCol
#define CALLOC(ptr, type, number)
struct MatrixElement TrashCan
BOOLEAN InternalVectorsAllocated
static void RecordAllocation()
struct MatrixElement * NextInRow
ArrayOfElementPtrs FirstInCol
AllocationListPtr TopOfAllocationList
void spDestroy |
( |
char * |
eMatrix | ) |
|
Definition at line 649 of file spalloc.c.
678 while (ListPtr !=
NULL)
688 ListPtr = NextListPtr;
ArrayOfElementPtrs FirstInRow
#define IS_SPARSE(matrix)
ASSERT(IS_VALID(Matrix) AND IS_FACTORED(Matrix))
struct AllocationRecord * NextRecord
struct MatrixFrame * MatrixPtr
ArrayOfElementPtrs FirstInCol
AllocationListPtr TopOfAllocationList
int spElementCount |
( |
char * |
eMatrix | ) |
|
Definition at line 885 of file spalloc.c.
#define IS_SPARSE(matrix)
ASSERT(IS_VALID(Matrix) AND IS_FACTORED(Matrix))
int spError |
( |
char * |
eMatrix | ) |
|
Definition at line 713 of file spalloc.c.
ASSERT(IS_VALID(Matrix) AND IS_FACTORED(Matrix))
int spFillinCount |
( |
char * |
eMatrix | ) |
|
Definition at line 873 of file spalloc.c.
#define IS_SPARSE(matrix)
ASSERT(IS_VALID(Matrix) AND IS_FACTORED(Matrix))
int spGetSize |
( |
char * |
eMatrix, |
|
|
BOOLEAN |
External |
|
) |
| |
Definition at line 791 of file spalloc.c.
#define IS_SPARSE(matrix)
ASSERT(IS_VALID(Matrix) AND IS_FACTORED(Matrix))
struct MatrixFrame * MatrixPtr
void spSetComplex |
( |
char * |
eMatrix | ) |
|
Definition at line 842 of file spalloc.c.
#define IS_SPARSE(matrix)
ASSERT(IS_VALID(Matrix) AND IS_FACTORED(Matrix))
struct MatrixFrame * MatrixPtr
void spSetReal |
( |
char * |
eMatrix | ) |
|
Definition at line 829 of file spalloc.c.
#define IS_SPARSE(matrix)
ASSERT(IS_VALID(Matrix) AND IS_FACTORED(Matrix))
struct MatrixFrame * MatrixPtr
void spWhereSingular |
( |
char * |
eMatrix, |
|
|
int * |
pRow, |
|
|
int * |
pCol |
|
) |
| |
Definition at line 751 of file spalloc.c.
765 else *pRow = *pCol = 0;
#define IS_SPARSE(matrix)
ASSERT(IS_VALID(Matrix) AND IS_FACTORED(Matrix))
struct MatrixFrame * MatrixPtr