ldbl_dstruct.c File Reference

#include "config.h"
#include "ldbl_iqsutil.h"
#include "ldbl_dstruct.h"
#include "ldbl_qsopt.h"
#include "ldbl_lpdefs.h"

Include dependency graph for ldbl_dstruct.c:

Go to the source code of this file.

Defines

#define ldbl_DEBUG_HEAP   0
#define ldbl_HEAP_D   3
#define ldbl_HEAP_DOWN(x)   (((x)*ldbl_HEAP_D)+1)
#define ldbl_HEAP_UP(x)   (((x)-1)/ldbl_HEAP_D)

Functions

int ldbl_ILLheap_build (ldbl_heap *const h, int const nelems, long double *key)
void ldbl_ILLheap_delete (ldbl_heap *const h, int const ix)
int ldbl_ILLheap_findmin (ldbl_heap *const h)
void ldbl_ILLheap_free (ldbl_heap *const h)
void ldbl_ILLheap_init (ldbl_heap *const h)
void ldbl_ILLheap_insert (ldbl_heap *const h, int const ix)
void ldbl_ILLheap_modify (ldbl_heap *const h, int const ix)
void ldbl_ILLmatrix_free (ldbl_ILLmatrix *A)
void ldbl_ILLmatrix_init (ldbl_ILLmatrix *A)
void ldbl_ILLmatrix_prt (EGioFile_t *fd, ldbl_ILLmatrix *A)
int ldbl_ILLsvector_alloc (ldbl_svector *s, int nzcnt)
int ldbl_ILLsvector_copy (const ldbl_svector *s_in, ldbl_svector *s_out)
void ldbl_ILLsvector_free (ldbl_svector *s)
void ldbl_ILLsvector_init (ldbl_svector *s)
static int ldbl_maxchild (ldbl_heap *h, int hloc)
static int ldbl_siftdown (ldbl_heap *h, int hloc, int ix)
static int ldbl_siftup (ldbl_heap *h, int hloc, int ix)

Variables

static int TRACE = 0


Define Documentation

#define ldbl_DEBUG_HEAP   0

Definition at line 119 of file ldbl_dstruct.c.

#define ldbl_HEAP_D   3

Definition at line 121 of file ldbl_dstruct.c.

#define ldbl_HEAP_DOWN (  )     (((x)*ldbl_HEAP_D)+1)

Definition at line 123 of file ldbl_dstruct.c.

#define ldbl_HEAP_UP (  )     (((x)-1)/ldbl_HEAP_D)

Definition at line 122 of file ldbl_dstruct.c.


Function Documentation

int ldbl_ILLheap_build ( ldbl_heap *const   h,
int const   nelems,
long double *  key 
)

Definition at line 365 of file ldbl_dstruct.c.

References ldbl_heap::entry, ldbl_heap::hexist, ILL_IFTRACE, ILL_IFTRACE2, ILL_RETURN, ILL_SAFE_MALLOC, ldbl_heap::key, ldbl_ILLheap_free(), ldbl_siftdown(), ldbl_heap::loc, ldbl_heap::maxsize, and ldbl_heap::size.

Referenced by ldbl_ILLprice_build_heap().

Here is the call graph for this function:

void ldbl_ILLheap_delete ( ldbl_heap *const   h,
int const   ix 
)

Definition at line 309 of file ldbl_dstruct.c.

References ldbl_heap::entry, ILL_IFTRACE, ldbl_siftdown(), ldbl_siftup(), ldbl_heap::loc, and ldbl_heap::size.

Here is the call graph for this function:

int ldbl_ILLheap_findmin ( ldbl_heap *const   h  ) 

Definition at line 348 of file ldbl_dstruct.c.

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

void ldbl_ILLheap_free ( ldbl_heap *const   h  ) 

Definition at line 413 of file ldbl_dstruct.c.

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

Referenced by ldbl_ILLheap_build(), and ldbl_ILLprice_free_heap().

void ldbl_ILLheap_init ( ldbl_heap *const   h  ) 

Definition at line 356 of file ldbl_dstruct.c.

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

void ldbl_ILLheap_insert ( ldbl_heap *const   h,
int const   ix 
)

Definition at line 267 of file ldbl_dstruct.c.

References ILL_IFTRACE, ldbl_heap::key, ldbl_siftup(), and ldbl_heap::size.

Here is the call graph for this function:

void ldbl_ILLheap_modify ( ldbl_heap *const   h,
int const   ix 
)

Definition at line 286 of file ldbl_dstruct.c.

References ILL_IFTRACE, ldbl_siftdown(), ldbl_siftup(), and ldbl_heap::loc.

Here is the call graph for this function:

void ldbl_ILLmatrix_free ( ldbl_ILLmatrix A  ) 

Definition at line 456 of file ldbl_dstruct.c.

References ILL_IFFREE, ldbl_ILLmatrix_init(), ldbl_ILLmatrix::matbeg, ldbl_ILLmatrix::matcnt, ldbl_ILLmatrix::matind, and ldbl_ILLmatrix::matval.

Referenced by ldbl_add_col(), ldbl_add_row(), ldbl_ILLlp_sinfo_free(), and ldbl_ILLlpdata_free().

Here is the call graph for this function:

void ldbl_ILLmatrix_init ( ldbl_ILLmatrix A  ) 

Definition at line 439 of file ldbl_dstruct.c.

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

Referenced by ldbl_add_col(), ldbl_add_row(), ldbl_ILLlp_sinfo_init(), ldbl_ILLlpdata_init(), and ldbl_ILLmatrix_free().

void ldbl_ILLmatrix_prt ( EGioFile_t *  fd,
ldbl_ILLmatrix A 
)

Definition at line 470 of file ldbl_dstruct.c.

References ldbl_ILLmatrix::matrows, and NULL.

Referenced by ldbl_convert_rawlpdata_to_lpdata().

int ldbl_ILLsvector_alloc ( ldbl_svector s,
int  nzcnt 
)

Definition at line 63 of file ldbl_dstruct.c.

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

int ldbl_ILLsvector_copy ( const ldbl_svector s_in,
ldbl_svector s_out 
)

Definition at line 88 of file ldbl_dstruct.c.

References ldbl_svector::coef, ILL_CLEANUP_IF, ILL_RETURN, ldbl_svector::indx, ldbl_ILLsvector_alloc(), and ldbl_svector::nzcnt.

Here is the call graph for this function:

void ldbl_ILLsvector_free ( ldbl_svector s  ) 

Definition at line 54 of file ldbl_dstruct.c.

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

Referenced by ldbl_free_internal_lpinfo(), ldbl_ILLbasis_tableau_row(), ldbl_ILLfactor_free_factor_work(), ldbl_ILLprice_build_dsteep_norms(), ldbl_ILLprice_build_psteep_norms(), ldbl_ILLprice_get_dsteep_norms(), ldbl_ILLprice_get_newnorms(), and ldbl_ILLsimplex().

void ldbl_ILLsvector_init ( ldbl_svector s  ) 

Definition at line 46 of file ldbl_dstruct.c.

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

static int ldbl_maxchild ( ldbl_heap h,
int  hloc 
)

Definition at line 191 of file ldbl_dstruct.c.

References ldbl_heap::entry, ILL_IFTRACE2, ldbl_heap::key, ldbl_HEAP_D, ldbl_ILL_MINDOUBLE, and ldbl_heap::size.

Referenced by ldbl_siftdown().

static int ldbl_siftdown ( ldbl_heap h,
int  hloc,
int  ix 
)

Definition at line 163 of file ldbl_dstruct.c.

References ldbl_heap::entry, ILL_IFTRACE2, ldbl_heap::key, ldbl_maxchild(), and ldbl_heap::loc.

Referenced by ldbl_ILLheap_build(), ldbl_ILLheap_delete(), and ldbl_ILLheap_modify().

Here is the call graph for this function:

static int ldbl_siftup ( ldbl_heap h,
int  hloc,
int  ix 
) [static]

Definition at line 137 of file ldbl_dstruct.c.

References ldbl_heap::entry, ILL_IFTRACE2, ldbl_heap::key, ldbl_HEAP_UP, and ldbl_heap::loc.

Referenced by ldbl_ILLheap_delete(), ldbl_ILLheap_insert(), and ldbl_ILLheap_modify().


Variable Documentation

int TRACE = 0 [static]

Definition at line 24 of file ldbl_dstruct.c.


Generated on Thu Mar 29 09:39:32 2012 for QSopt_ex by  doxygen 1.4.7