208 #define CONSYS_MTX ((flags) 1<<0)
209 #define CONSYS_ROW ((flags) 1<<1)
210 #define CONSYS_COL ((flags) 1<<2)
211 #define CONSYS_OBJ ((flags) 1<<3)
212 #define CONSYS_VUB ((flags) 1<<4)
213 #define CONSYS_VLB ((flags) 1<<5)
214 #define CONSYS_RHS ((flags) 1<<6)
215 #define CONSYS_CUB ((flags) 1<<7)
216 #define CONSYS_CLB ((flags) 1<<8)
217 #define CONSYS_RHSLOW ((flags) 1<<9)
218 #define CONSYS_VTYP ((flags) 1<<10)
219 #define CONSYS_CTYP ((flags) 1<<11)
220 #define CONSYS_COLHDR ((flags) 1<<12)
221 #define CONSYS_ROWHDR ((flags) 1<<13)
222 #define CONSYS_RSCALE ((flags) 1<<14)
223 #define CONSYS_CSCALE ((flags) 1<<15)
228 #define CONSYS_ROWVEC \
229 (CONSYS_OBJ|CONSYS_VUB|CONSYS_VLB|CONSYS_VTYP|CONSYS_CSCALE| \
230 CONSYS_COLHDR|CONSYS_ROW)
232 #define CONSYS_COLVEC \
233 (CONSYS_RHS|CONSYS_RHSLOW|CONSYS_CUB|CONSYS_CLB|CONSYS_CTYP|CONSYS_RSCALE| \
234 CONSYS_ROWHDR|CONSYS_COL)
240 #define VALID_ATTVTYPE(zz_vectype_zz) \
241 (zz_vectype_zz == CONSYS_OBJ || \
242 zz_vectype_zz == CONSYS_VUB || zz_vectype_zz == CONSYS_VLB || \
243 zz_vectype_zz == CONSYS_RHS || zz_vectype_zz == CONSYS_RHSLOW || \
244 zz_vectype_zz == CONSYS_CUB || zz_vectype_zz == CONSYS_CUB || \
245 zz_vectype_zz == CONSYS_VTYP || zz_vectype_zz == CONSYS_CTYP || \
246 zz_vectype_zz == CONSYS_RSCALE || zz_vectype_zz == CONSYS_CSCALE || \
247 zz_vectype_zz == CONSYS_ROW || zz_vectype_zz == CONSYS_COL)
341 #define VALID_CONTYPE(zz_ctyp_zz) \
342 (zz_ctyp_zz == contypGE || zz_ctyp_zz == contypEQ || \
343 zz_ctyp_zz == contypLE || zz_ctyp_zz == contypRNG)
357 #define VALID_VARTYPE(zz_vtyp_zz) \
358 (zz_vtyp_zz == vartypCON || \
359 zz_vtyp_zz == vartypINT || \
360 zz_vtyp_zz == vartypBIN)
362 #define INT_VARTYPE(zz_vtyp_zz) \
363 (zz_vtyp_zz == vartypINT || \
364 zz_vtyp_zz == vartypBIN)
394 #define CONSYS_LVARS ((flags) 1<<0)
395 #define CONSYS_WRNZERO ((flags) 1<<1)
396 #define CONSYS_WRNATT ((flags) 1<<2)
397 #define CONSYS_FININF ((flags) 1<<3)
398 #define CONSYS_CORRUPT ((flags) 1<<4)
506 int concnt,
int varcnt,
double infinity) ;
518 double obj,
double vlb,
double vub),
520 const char **nme,
double *excol,
521 double obj,
double vlb,
double vub),
524 double rhs,
double rhslow,
537 int rowndx,
int colndx,
double val) ;
564 double scalar,
double *vec) ;
572 double **rowscale,
double **colscale),
574 double **rowscale,
double **colscale),
576 double *rowscale,
double *colscale) ;
603 int ndx,
const char *newnme) ;
625 #define CONSYS_MAXBUFLEN 32
627 char cv,
int ndx,
bool pfx,
char *clientbuf) ;
bool consys_getrow_ex(consys_struct *consys, int rowndx, double **vec)
double consys_getcoeff(consys_struct *consys, int rowndx, int colndx)
double consys_1normrow(consys_struct *consys, int rowndx)
char * consys_conbndnme(char bndlett, int cndx, conbnd_struct *bnd)
const char * consys_prtvartyp(vartyp_enum vartyp)
bool consys_mulaccumcol(consys_struct *consys, int colndx, double scalar, double *vec)
bool consys_delcol(consys_struct *consys, int colndx)
double consys_infnormrow(consys_struct *consys, int rowndx)
double consys_infnormcol(consys_struct *consys, int rowndx)
bool consys_accumcol(consys_struct *consys, int colndx, double *vec)
double consys_ssqcol(consys_struct *consys, int rowndx)
double consys_2normcol(consys_struct *consys, int rowndx)
void consys_prtcon(ioid chn, bool echo, consys_struct *consys, int i, const char *pfx)
bool consys_getcol_pk(consys_struct *consys, int colndx, pkvec_struct **pkvec)
struct rowhdr_struct_tag * rowhdr
bool consys_getcol_ex(consys_struct *consys, int colndx, double **vec)
bool consys_realloc(consys_struct *consys, char rowcol, int incr)
struct attvhdr_struct_tag attvhdr_struct
bool consys_dupsys(consys_struct *src, consys_struct **dst, flags dstvecs)
struct coeff_struct_tag coeff_struct
struct coeff_struct_tag * colnxt
struct colhdr_struct_tag * colhdr
bool consys_getrow_pk(consys_struct *consys, int rowndx, pkvec_struct **pkvec)
bool consys_attach(consys_struct *consys, flags what, int elsze, void **pvec)
bool consys_geomscale(consys_struct *consys, double **rowscale, double **colscale)
bool consys_addrow_pk(consys_struct *consys, char rowclass, contyp_enum contyp, pkvec_struct *pkrow, double rhs, double rhslow, conbnd_struct *cub, conbnd_struct *clb)
bool consys_delrow(consys_struct *consys, int rowndx)
struct rowhdr_struct_tag rowhdr_struct
bool consys_addcol_pk(consys_struct *consys, vartyp_enum vartyp, pkvec_struct *pkcol, double obj, double vlb, double vub)
void consys_chgnme(consys_struct *consys, char cv, int ndx, const char *newnme)
const char * consys_prtcontyp(contyp_enum contyp)
int consys_gcdrow(consys_struct *consys, int rowndx)
bool consys_equiscale(consys_struct *consys, double **rowscale, double **colscale)
bool consys_addcol_ex(consys_struct *consys, vartyp_enum vartyp, const char **nme, double *excol, double obj, double vlb, double vub)
struct coeff_struct_tag * rownxt
bool consys_detach(consys_struct *consys, void **pvec, bool all)
bool consys_setcoeff(consys_struct *consys, int rowndx, int colndx, double val)
bool consys_update(consys_struct *consys, void *oldvec, void *newvec)
double consys_1normcol(consys_struct *consys, int rowndx)
struct colhdr_struct_tag colhdr_struct
bool consys_logicals(consys_struct *consys)
double consys_dotrow(consys_struct *consys, int rowndx, double *vec)
const char * consys_nme(consys_struct *consys, char cv, int ndx, bool pfx, char *clientbuf)
char * consys_conbndval(conbnd_struct *bnd)
consys_struct * consys_create(const char *nme, flags parts, flags opts, int concnt, int varcnt, double infinity)
double consys_2normrow(consys_struct *consys, int rowndx)
struct attvhdr_struct_tag * nxt
void consys_free(consys_struct *consys)
bool consys_divrow(consys_struct *consys, int rowndx, double scalar)
bool consys_applyscale(consys_struct *consys, bool convctyp, double *rowscale, double *colscale)
double consys_ssqrow(consys_struct *consys, int rowndx)
char * consys_assocnme(consys_struct *consys, flags which)
bool consys_delrow_stable(consys_struct *consys, int rowndx)
double consys_dotcol(consys_struct *consys, int colndx, double *vec)
bool consys_mulrow(consys_struct *consys, int rowndx, double scalar)
bool consys_evalsys(consys_struct *consys, double *scm, int *gecnt)