CoinOslC.h File Reference

#include <math.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include "CoinHelperFunctions.hpp"
#include <stddef.h>
#include <assert.h>

Go to the source code of this file.

Defines

#define CLP_OSL   0
#define C_EKK_GO_SPARSE   200
#define SPARSE_UPDATE
#define NO_SHIFT
#define c_ekkscpy_0_1(s, ival, array)   CoinFillN(array,s,ival)
#define c_ekks1cpy(n, marr1, marr2)   CoinMemcpyN(marr1,n, marr2)
#define SLACK_VALUE   -1.0
#define C_EKK_REMOVE_LINK(hpiv, hin, link, ipivot)
#define C_EKK_ADD_LINK(hpiv, nzi, link, npr)
#define SHIFT_INDEX(limit)   (limit)
#define UNSHIFT_INDEX(limit)   (limit)
#define SHIFT_REF(arr, ind)   (arr)[ind]
#define NOT_ZERO(x)   ((x) != 0.0)
#define SWAP(type, _x, _y)   { type _tmp = (_x); (_x) = (_y); (_y) = _tmp;}
#define UNROLL_LOOP_BODY1(code)   {{code}}
#define UNROLL_LOOP_BODY2(code)   {{code} {code}}
#define UNROLL_LOOP_BODY4(code)   {{code} {code} {code} {code}}

Functions

int c_ekkbtrn (register const EKKfactinfo *fact, double *dwork1, int *mpt, int first_nonzero)
int c_ekkbtrn_ipivrw (register const EKKfactinfo *fact, double *dwork1, int *mpt, int ipivrw, int *spare)
int c_ekketsj (registerEKKfactinfo *fact, double *dwork1, int *mpt2, double dalpha, int orig_nincol, int npivot, int *nuspikp, const int ipivrw, int *spare)
int c_ekkftrn (register const EKKfactinfo *fact, double *dwork1, double *dpermu, int *mpt, int numberNonZero)
int c_ekkftrn_ft (register EKKfactinfo *fact, double *dwork1, int *mpt, int *nincolp)
void c_ekkftrn2 (register EKKfactinfo *fact, double *dwork1, double *dpermu1, int *mpt1, int *nincolp, double *dwork1_ft, int *mpt_ft, int *nincolp_ft)
int c_ekklfct (register EKKfactinfo *fact)
int c_ekkslcf (register const EKKfactinfo *fact)
void c_ekkscpy (int n, const int *marr1, int *marr2)
void c_ekkdcpy (int n, const double *marr1, double *marr2)
int c_ekk_IsSet (const int *array, int bit)
void c_ekk_Set (int *array, int bit)
void c_ekk_Unset (int *array, int bit)
void c_ekkzero (int length, int n, void *array)
void c_ekkdzero (int n, double *marray)
void c_ekkizero (int n, int *marray)
void c_ekkczero (int n, char *marray)
void clp_setup_pointers (EKKfactinfo *fact)
void clp_memory (int type)
double * clp_double (int number_entries)
int * clp_int (int number_entries)
void * clp_malloc (int number_entries)
void clp_free (void *oldArray)

Define Documentation

#define CLP_OSL   0

Definition at line 12 of file CoinOslC.h.

#define C_EKK_GO_SPARSE   200

Definition at line 14 of file CoinOslC.h.

#define SPARSE_UPDATE

Definition at line 28 of file CoinOslC.h.

#define NO_SHIFT

Definition at line 29 of file CoinOslC.h.

#define c_ekkscpy_0_1 ( s,
ival,
array   )     CoinFillN(array,s,ival)

Definition at line 80 of file CoinOslC.h.

#define c_ekks1cpy ( n,
marr1,
marr2   )     CoinMemcpyN(marr1,n, marr2)

Definition at line 81 of file CoinOslC.h.

#define SLACK_VALUE   -1.0

Definition at line 89 of file CoinOslC.h.

#define C_EKK_REMOVE_LINK ( hpiv,
hin,
link,
ipivot   ) 
Value:
{                                               \
    int ipre = link[ipivot].pre;                \
    int isuc = link[ipivot].suc;                \
    if (ipre > 0) {                             \
      link[ipre].suc = isuc;                    \
    }                                           \
    if (ipre <= 0) {                            \
      hpiv[hin[ipivot]] = isuc;                 \
    }                                           \
    if (isuc > 0) {                             \
      link[isuc].pre = ipre;                    \
    }                                           \
  }

Definition at line 90 of file CoinOslC.h.

#define C_EKK_ADD_LINK ( hpiv,
nzi,
link,
npr   ) 
Value:
{                                               \
    int ifiri = hpiv[nzi];                      \
    hpiv[nzi] = npr;                            \
    link[npr].suc = ifiri;                      \
    link[npr].pre = 0;                          \
    if (ifiri != 0) {                           \
      link[ifiri].pre = npr;                    \
    }                                           \
  }

Definition at line 105 of file CoinOslC.h.

#define SHIFT_INDEX ( limit   )     (limit)

Definition at line 118 of file CoinOslC.h.

#define UNSHIFT_INDEX ( limit   )     (limit)

Definition at line 119 of file CoinOslC.h.

#define SHIFT_REF ( arr,
ind   )     (arr)[ind]

Definition at line 120 of file CoinOslC.h.

#define NOT_ZERO (  )     ((x) != 0.0)

Definition at line 133 of file CoinOslC.h.

#define SWAP ( type,
_x,
_y   )     { type _tmp = (_x); (_x) = (_y); (_y) = _tmp;}

Definition at line 136 of file CoinOslC.h.

#define UNROLL_LOOP_BODY1 ( code   )     {{code}}

Definition at line 138 of file CoinOslC.h.

#define UNROLL_LOOP_BODY2 ( code   )     {{code} {code}}

Definition at line 140 of file CoinOslC.h.

#define UNROLL_LOOP_BODY4 ( code   )     {{code} {code} {code} {code}}

Definition at line 142 of file CoinOslC.h.


Function Documentation

int c_ekkbtrn ( register const EKKfactinfo fact,
double *  dwork1,
int *  mpt,
int  first_nonzero 
)
int c_ekkbtrn_ipivrw ( register const EKKfactinfo fact,
double *  dwork1,
int *  mpt,
int  ipivrw,
int *  spare 
)
int c_ekketsj ( registerEKKfactinfo *  fact,
double *  dwork1,
int *  mpt2,
double  dalpha,
int  orig_nincol,
int  npivot,
int *  nuspikp,
const int  ipivrw,
int *  spare 
)
int c_ekkftrn ( register const EKKfactinfo fact,
double *  dwork1,
double *  dpermu,
int *  mpt,
int  numberNonZero 
)
int c_ekkftrn_ft ( register EKKfactinfo fact,
double *  dwork1,
int *  mpt,
int *  nincolp 
)
void c_ekkftrn2 ( register EKKfactinfo fact,
double *  dwork1,
double *  dpermu1,
int *  mpt1,
int *  nincolp,
double *  dwork1_ft,
int *  mpt_ft,
int *  nincolp_ft 
)
int c_ekklfct ( register EKKfactinfo fact  ) 
int c_ekkslcf ( register const EKKfactinfo fact  ) 
void c_ekkscpy ( int  n,
const int *  marr1,
int *  marr2 
) [inline]

Definition at line 61 of file CoinOslC.h.

void c_ekkdcpy ( int  n,
const double *  marr1,
double *  marr2 
) [inline]

Definition at line 63 of file CoinOslC.h.

int c_ekk_IsSet ( const int *  array,
int  bit 
)
void c_ekk_Set ( int *  array,
int  bit 
)
void c_ekk_Unset ( int *  array,
int  bit 
)
void c_ekkzero ( int  length,
int  n,
void *  array 
)
void c_ekkdzero ( int  n,
double *  marray 
) [inline]

Definition at line 70 of file CoinOslC.h.

void c_ekkizero ( int  n,
int *  marray 
) [inline]

Definition at line 72 of file CoinOslC.h.

void c_ekkczero ( int  n,
char *  marray 
) [inline]

Definition at line 74 of file CoinOslC.h.

void clp_setup_pointers ( EKKfactinfo fact  ) 
void clp_memory ( int  type  ) 
double* clp_double ( int  number_entries  ) 
int* clp_int ( int  number_entries  ) 
void* clp_malloc ( int  number_entries  ) 
void clp_free ( void *  oldArray  ) 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 28 Aug 2016 for CoinUtils by  doxygen 1.6.1