dbl_dstruct.c File Reference

#include "config.h"
#include "dbl_iqsutil.h"
#include "dbl_dstruct.h"
#include "dbl_qsopt.h"
#include "dbl_lpdefs.h"

Include dependency graph for dbl_dstruct.c:

Go to the source code of this file.

Defines

#define dbl_DEBUG_HEAP   0
#define dbl_HEAP_D   3
#define dbl_HEAP_DOWN(x)   (((x)*dbl_HEAP_D)+1)
#define dbl_HEAP_UP(x)   (((x)-1)/dbl_HEAP_D)

Functions

int dbl_ILLheap_build (dbl_heap *const h, int const nelems, double *key)
void dbl_ILLheap_delete (dbl_heap *const h, int const ix)
int dbl_ILLheap_findmin (dbl_heap *const h)
void dbl_ILLheap_free (dbl_heap *const h)
void dbl_ILLheap_init (dbl_heap *const h)
void dbl_ILLheap_insert (dbl_heap *const h, int const ix)
void dbl_ILLheap_modify (dbl_heap *const h, int const ix)
void dbl_ILLmatrix_free (dbl_ILLmatrix *A)
void dbl_ILLmatrix_init (dbl_ILLmatrix *A)
void dbl_ILLmatrix_prt (EGioFile_t *fd, dbl_ILLmatrix *A)
int dbl_ILLsvector_alloc (dbl_svector *s, int nzcnt)
int dbl_ILLsvector_copy (const dbl_svector *s_in, dbl_svector *s_out)
void dbl_ILLsvector_free (dbl_svector *s)
void dbl_ILLsvector_init (dbl_svector *s)
static int dbl_maxchild (dbl_heap *h, int hloc)
static int dbl_siftdown (dbl_heap *h, int hloc, int ix)
static int dbl_siftup (dbl_heap *h, int hloc, int ix)

Variables

static int TRACE = 0


Define Documentation

#define dbl_DEBUG_HEAP   0

Definition at line 119 of file dbl_dstruct.c.

#define dbl_HEAP_D   3

Definition at line 121 of file dbl_dstruct.c.

#define dbl_HEAP_DOWN (  )     (((x)*dbl_HEAP_D)+1)

Definition at line 123 of file dbl_dstruct.c.

#define dbl_HEAP_UP (  )     (((x)-1)/dbl_HEAP_D)

Definition at line 122 of file dbl_dstruct.c.


Function Documentation

int dbl_ILLheap_build ( dbl_heap *const   h,
int const   nelems,
double *  key 
)

Definition at line 365 of file dbl_dstruct.c.

References dbl_ILLheap_free(), dbl_siftdown(), dbl_heap::entry, dbl_heap::hexist, ILL_IFTRACE, ILL_IFTRACE2, ILL_RETURN, ILL_SAFE_MALLOC, dbl_heap::key, dbl_heap::loc, dbl_heap::maxsize, and dbl_heap::size.

Here is the call graph for this function:

void dbl_ILLheap_delete ( dbl_heap *const   h,
int const   ix 
)

Definition at line 309 of file dbl_dstruct.c.

References dbl_siftdown(), dbl_siftup(), dbl_heap::entry, ILL_IFTRACE, dbl_heap::loc, and dbl_heap::size.

Here is the call graph for this function:

int dbl_ILLheap_findmin ( dbl_heap *const   h  ) 

Definition at line 348 of file dbl_dstruct.c.

References dbl_heap::entry, dbl_heap::hexist, and dbl_heap::size.

void dbl_ILLheap_free ( dbl_heap *const   h  ) 

Definition at line 413 of file dbl_dstruct.c.

References dbl_heap::entry, dbl_heap::hexist, ILL_IFFREE, dbl_heap::loc, dbl_heap::maxsize, and dbl_heap::size.

void dbl_ILLheap_init ( dbl_heap *const   h  ) 

Definition at line 356 of file dbl_dstruct.c.

References dbl_heap::entry, dbl_heap::hexist, dbl_heap::key, dbl_heap::loc, and NULL.

void dbl_ILLheap_insert ( dbl_heap *const   h,
int const   ix 
)

Definition at line 267 of file dbl_dstruct.c.

References dbl_siftup(), ILL_IFTRACE, dbl_heap::key, and dbl_heap::size.

Here is the call graph for this function:

void dbl_ILLheap_modify ( dbl_heap *const   h,
int const   ix 
)

Definition at line 286 of file dbl_dstruct.c.

References dbl_siftdown(), dbl_siftup(), ILL_IFTRACE, and dbl_heap::loc.

Here is the call graph for this function:

void dbl_ILLmatrix_free ( dbl_ILLmatrix A  ) 

Definition at line 456 of file dbl_dstruct.c.

References dbl_ILLmatrix_init(), ILL_IFFREE, dbl_ILLmatrix::matbeg, dbl_ILLmatrix::matcnt, dbl_ILLmatrix::matind, and dbl_ILLmatrix::matval.

Here is the call graph for this function:

void dbl_ILLmatrix_init ( dbl_ILLmatrix A  ) 

Definition at line 439 of file dbl_dstruct.c.

References dbl_ILLmatrix::matbeg, dbl_ILLmatrix::matcnt, dbl_ILLmatrix::matcols, dbl_ILLmatrix::matcolsize, dbl_ILLmatrix::matfree, dbl_ILLmatrix::matind, dbl_ILLmatrix::matrows, dbl_ILLmatrix::matsize, and dbl_ILLmatrix::matval.

void dbl_ILLmatrix_prt ( EGioFile_t *  fd,
dbl_ILLmatrix A 
)

Definition at line 470 of file dbl_dstruct.c.

References dbl_ILLmatrix::matrows, and NULL.

int dbl_ILLsvector_alloc ( dbl_svector s,
int  nzcnt 
)

Definition at line 63 of file dbl_dstruct.c.

References dbl_svector::coef, ILL_IFFREE, ILL_RETURN, ILL_SAFE_MALLOC, dbl_svector::indx, and dbl_svector::nzcnt.

int dbl_ILLsvector_copy ( const dbl_svector s_in,
dbl_svector s_out 
)

Definition at line 88 of file dbl_dstruct.c.

References dbl_svector::coef, dbl_ILLsvector_alloc(), ILL_CLEANUP_IF, ILL_RETURN, dbl_svector::indx, and dbl_svector::nzcnt.

Here is the call graph for this function:

void dbl_ILLsvector_free ( dbl_svector s  ) 

Definition at line 54 of file dbl_dstruct.c.

References dbl_svector::coef, ILL_IFFREE, dbl_svector::indx, and dbl_svector::nzcnt.

void dbl_ILLsvector_init ( dbl_svector s  ) 

Definition at line 46 of file dbl_dstruct.c.

References dbl_svector::coef, dbl_svector::indx, and dbl_svector::nzcnt.

static int dbl_maxchild ( dbl_heap h,
int  hloc 
)

Definition at line 191 of file dbl_dstruct.c.

References dbl_HEAP_D, dbl_ILL_MINDOUBLE, dbl_heap::entry, ILL_IFTRACE2, dbl_heap::key, and dbl_heap::size.

Referenced by dbl_siftdown().

static int dbl_siftdown ( dbl_heap h,
int  hloc,
int  ix 
)

Definition at line 163 of file dbl_dstruct.c.

References dbl_maxchild(), dbl_heap::entry, ILL_IFTRACE2, dbl_heap::key, and dbl_heap::loc.

Referenced by dbl_ILLheap_build(), dbl_ILLheap_delete(), and dbl_ILLheap_modify().

Here is the call graph for this function:

static int dbl_siftup ( dbl_heap h,
int  hloc,
int  ix 
) [static]

Definition at line 137 of file dbl_dstruct.c.

References dbl_HEAP_UP, dbl_heap::entry, ILL_IFTRACE2, dbl_heap::key, and dbl_heap::loc.

Referenced by dbl_ILLheap_delete(), dbl_ILLheap_insert(), and dbl_ILLheap_modify().


Variable Documentation

int TRACE = 0 [static]

Definition at line 24 of file dbl_dstruct.c.


Generated on Thu Mar 29 09:33:15 2012 for QSopt_ex by  doxygen 1.4.7