#include "qs_config.h"
#include "mpf_iqsutil.h"
#include "mpf_lpdefs.h"
#include "stddefs.h"
#include "mpf_basis.h"
#include "mpf_fct.h"
#include "mpf_price.h"
#include "mpf_ratio.h"
#include "mpf_dstruct.h"
Include dependency graph for mpf_fct.c:

Go to the source code of this file.
| #define mpf_C_VALUE | ( | a | ) | (1.0+(double)(a)/(PARAM_HEAP_RATIO*mpf_ILLutil_our_log2(a))) |
Referenced by mpf_ILLfct_init_counts().
| static void mpf_add_vectors | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | a, | |||
| mpf_svector * | b, | |||
| mpf_svector * | c, | |||
| const mpf_t | t | |||
| ) |
Definition at line 1677 of file mpf_fct.c.
References mpf_svector::coef, mpf_svector::indx, mpf_lpinfo::iwork, mpf_svector::nzcnt, and mpf_lpinfo::work.
Referenced by mpf_ILLfct_update_dIIfeas(), mpf_ILLfct_update_dpI_prices(), mpf_ILLfct_update_dpII_prices(), and mpf_ILLfct_update_ppI_prices().
| static int mpf_compute_zA1 | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | z, | |||
| mpf_svector * | zA, | |||
| mpf_t | ztoler | |||
| ) | [static] |
Definition at line 478 of file mpf_fct.c.
References mpf_svector::coef, mpf_svector::indx, mpf_lpinfo::matbeg, mpf_lpinfo::matcnt, mpf_lpinfo::matind, mpf_lpinfo::matval, mpf_lpinfo::nbaz, mpf_lpinfo::nnbasic, mpf_lpinfo::nrows, and mpf_svector::nzcnt.
Referenced by mpf_ILLfct_compute_zA().
| static int mpf_compute_zA3 | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | z, | |||
| mpf_svector * | zA, | |||
| mpf_t | ztoler | |||
| ) |
Definition at line 522 of file mpf_fct.c.
References mpf_svector::coef, mpf_svector::indx, mpf_lpinfo::iwork, mpf_svector::nzcnt, mpf_lpinfo::rowbeg, mpf_lpinfo::rowcnt, mpf_lpinfo::rowind, mpf_lpinfo::rowval, STAT_BASIC, mpf_lpinfo::vindex, mpf_lpinfo::vstat, and mpf_lpinfo::work.
Referenced by mpf_ILLfct_compute_zA().
| static int mpf_expand_phaseI_bounds | ( | mpf_lpinfo * | lp, | |
| int * | chgb | |||
| ) | [static] |
Definition at line 834 of file mpf_fct.c.
References mpf_lpinfo::baz, BOUND_LOWER, BOUND_UPPER, ILLutil_sprand(), mpf_tol_struct::ip_tol, mpf_lpinfo::lz, mpf_ILLfct_bound_shift(), mpf_INFTY, mpf_my_rand(), mpf_NINFTY, mpf_lpinfo::nrows, mpf_lpinfo::rstate, mpf_lpinfo::tol, mpf_lpinfo::uz, VARTIFICIAL, VFREE, mpf_lpinfo::vtype, and mpf_lpinfo::xbz.
Referenced by mpf_ILLfct_perturb_phaseI_bounds().
Here is the call graph for this function:

| static int mpf_expand_var_bounds | ( | mpf_lpinfo * | lp, | |
| mpf_t | ftol, | |||
| int * | chgb | |||
| ) |
Definition at line 772 of file mpf_fct.c.
References mpf_lpinfo::baz, BOUND_LOWER, BOUND_UPPER, ILLutil_sprand(), mpf_lpinfo::lz, mpf_ILLfct_bound_shift(), mpf_INFTY, mpf_my_rand(), mpf_NINFTY, mpf_lpinfo::nrows, mpf_lpinfo::rstate, mpf_lpinfo::uz, VARTIFICIAL, VFREE, mpf_lpinfo::vtype, and mpf_lpinfo::xbz.
Referenced by mpf_ILLfct_adjust_viol_bounds(), and mpf_ILLfct_perturb_bounds().
Here is the call graph for this function:

| static int mpf_expand_var_coefs | ( | mpf_lpinfo * | lp, | |
| mpf_t | ftol, | |||
| int * | chgc | |||
| ) |
Definition at line 1024 of file mpf_fct.c.
References mpf_lpinfo::cz, mpf_lpinfo::dz, ILLutil_sprand(), mpf_ILLfct_coef_shift(), mpf_my_rand(), mpf_lpinfo::nbaz, mpf_lpinfo::nnbasic, mpf_lpinfo::rstate, STAT_LOWER, STAT_UPPER, STAT_ZERO, VARTIFICIAL, VFIXED, mpf_lpinfo::vstat, and mpf_lpinfo::vtype.
Referenced by mpf_ILLfct_adjust_viol_coefs(), and mpf_ILLfct_perturb_coefs().
Here is the call graph for this function:

| int mpf_ILLfct_adjust_viol_bounds | ( | mpf_lpinfo * | lp | ) |
Definition at line 887 of file mpf_fct.c.
References mpf_expand_var_bounds(), mpf_tol_struct::pfeas_tol, and mpf_lpinfo::tol.
Here is the call graph for this function:

| int mpf_ILLfct_adjust_viol_coefs | ( | mpf_lpinfo * | lp | ) |
Definition at line 1102 of file mpf_fct.c.
References mpf_tol_struct::dfeas_tol, mpf_expand_var_coefs(), and mpf_lpinfo::tol.
Referenced by mpf_dual_phaseII_step().
Here is the call graph for this function:

| int mpf_ILLfct_bound_shift | ( | mpf_lpinfo * | lp, | |
| int | col, | |||
| int | bndtype, | |||
| mpf_t | newbnd | |||
| ) |
Definition at line 933 of file mpf_fct.c.
References mpf_lpinfo::bchanges, BOUND_LOWER, mpf_bndinfo::btype, mpf_bndinfo::cbound, ILL_IFTRACE, mpf_lpinfo::lz, mpf_ILLfct_free_bndinfo(), mpf_ILLfct_new_bndinfo(), mpf_lpinfo::nbchange, mpf_bndinfo::next, mpf_bndinfo::pbound, mpf_lpinfo::uz, mpf_bndinfo::varnum, VARTIFICIAL, VBOUNDED, VFIXED, and mpf_lpinfo::vtype.
Referenced by mpf_expand_phaseI_bounds(), mpf_expand_var_bounds(), and mpf_primal_phaseII_step().
Here is the call graph for this function:

| void mpf_ILLfct_check_dfeasible | ( | mpf_lpinfo * | lp, | |
| mpf_feas_info * | fs, | |||
| const mpf_t | ftol | |||
| ) |
Definition at line 1294 of file mpf_fct.c.
References mpf_lpinfo::dfeas, mpf_feas_info::dstatus, DUAL_FEASIBLE, mpf_lpinfo::dz, mpf_lpinfo::nbaz, mpf_lpinfo::nnbasic, STAT_LOWER, STAT_UPPER, STAT_ZERO, mpf_feas_info::totinfeas, VARTIFICIAL, VFIXED, mpf_lpinfo::vstat, and mpf_lpinfo::vtype.
Referenced by mpf_dual_phaseI_step(), mpf_dual_phaseII_step(), mpf_ILLbasis_get_cinitial(), mpf_ILLsimplex(), mpf_ILLsimplex_retest_dsolution(), mpf_ILLsimplex_retest_psolution(), mpf_monitor_iter(), and mpf_primal_phaseII_step().
| void mpf_ILLfct_check_pfeasible | ( | mpf_lpinfo * | lp, | |
| mpf_feas_info * | fs, | |||
| const mpf_t | ftol | |||
| ) |
Definition at line 1201 of file mpf_fct.c.
References mpf_lpinfo::baz, mpf_lpinfo::bfeas, ILL_IFTRACE, mpf_lpinfo::lz, mpf_INFTY, mpf_NINFTY, mpf_lpinfo::nrows, PRIMAL_FEASIBLE, mpf_feas_info::pstatus, QSE_WLVL, mpf_feas_info::totinfeas, mpf_lpinfo::uz, and mpf_lpinfo::xbz.
Referenced by mpf_dual_phaseII_step(), mpf_ILLbasis_get_cinitial(), mpf_ILLsimplex(), mpf_ILLsimplex_retest_dsolution(), mpf_ILLsimplex_retest_psolution(), mpf_primal_phaseI_step(), and mpf_primal_phaseII_step().
| void mpf_ILLfct_check_pIdfeasible | ( | mpf_lpinfo * | lp, | |
| mpf_feas_info * | fs, | |||
| mpf_t | ftol | |||
| ) |
Definition at line 1346 of file mpf_fct.c.
References mpf_feas_info::dstatus, DUAL_FEASIBLE, DUAL_INFEASIBLE, mpf_lpinfo::nbaz, mpf_lpinfo::nnbasic, mpf_lpinfo::pIdz, STAT_LOWER, STAT_UPPER, STAT_ZERO, VARTIFICIAL, VFIXED, mpf_lpinfo::vstat, and mpf_lpinfo::vtype.
Referenced by mpf_ILLsimplex_retest_psolution().
| void mpf_ILLfct_check_pIpfeasible | ( | mpf_lpinfo * | lp, | |
| mpf_feas_info * | fs, | |||
| mpf_t | ftol | |||
| ) |
Definition at line 1263 of file mpf_fct.c.
References mpf_lpinfo::baz, mpf_lpinfo::lz, mpf_INFTY, mpf_NINFTY, mpf_lpinfo::nrows, PRIMAL_FEASIBLE, mpf_feas_info::pstatus, mpf_feas_info::totinfeas, mpf_lpinfo::uz, and mpf_lpinfo::xbz.
Referenced by mpf_ILLsimplex_retest_dsolution().
| int mpf_ILLfct_coef_shift | ( | mpf_lpinfo * | lp, | |
| int | col, | |||
| mpf_t | newcoef | |||
| ) |
Definition at line 1135 of file mpf_fct.c.
References mpf_lpinfo::cchanges, mpf_coefinfo::ccoef, mpf_lpinfo::cz, mpf_lpinfo::dz, ILL_IFFREE, ILL_SAFE_MALLOC, mpf_lpinfo::ncchange, mpf_coefinfo::next, mpf_coefinfo::pcoef, mpf_coefinfo::varnum, and mpf_lpinfo::vindex.
Referenced by mpf_dual_phaseII_step(), and mpf_expand_var_coefs().
| void mpf_ILLfct_compute_binvrow | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | zz, | |||
| int | row, | |||
| mpf_t | ztoler | |||
| ) |
Definition at line 440 of file mpf_fct.c.
References mpf_svector::coef, mpf_lpinfo::f, mpf_svector::indx, mpf_ILLbasis_row_solve(), mpf_ILLfactor_set_factor_dparam(), mpf_SZERO_TOLER, mpf_svector::nzcnt, and QS_FACTOR_SZERO_TOL.
Referenced by mpf_ILLfct_compute_zz().
Here is the call graph for this function:

| void mpf_ILLfct_compute_dobj | ( | mpf_lpinfo * | lp | ) |
Definition at line 194 of file mpf_fct.c.
References mpf_lpinfo::bz, mpf_lpinfo::dobjval, mpf_lpinfo::dz, mpf_lpinfo::lz, mpf_lpinfo::nbaz, mpf_lpinfo::nnbasic, mpf_lpinfo::nrows, mpf_lpinfo::objval, mpf_lpinfo::piz, STAT_LOWER, STAT_UPPER, mpf_lpinfo::uz, and mpf_lpinfo::vstat.
Referenced by mpf_dual_phaseII_step(), mpf_ILLsimplex(), mpf_ILLsimplex_retest_dsolution(), and mpf_monitor_iter().
| void mpf_ILLfct_compute_dpIIy | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | srhs, | |||
| mpf_svector * | ssoln | |||
| ) |
Definition at line 2097 of file mpf_fct.c.
References mpf_ILLbasis_column_solve(), and mpf_svector::nzcnt.
Referenced by mpf_dual_phaseII_step().
Here is the call graph for this function:

| void mpf_ILLfct_compute_dpIy | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | srhs, | |||
| mpf_svector * | ssoln | |||
| ) |
Definition at line 1993 of file mpf_fct.c.
References mpf_ILLbasis_column_solve(), and mpf_svector::nzcnt.
Referenced by mpf_dual_phaseI_step().
Here is the call graph for this function:

| void mpf_ILLfct_compute_dsteep_upv | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | swz | |||
| ) |
Definition at line 471 of file mpf_fct.c.
References mpf_ILLbasis_column_solve(), and mpf_lpinfo::zz.
Referenced by mpf_dual_phaseI_step(), and mpf_dual_phaseII_step().
Here is the call graph for this function:

| void mpf_ILLfct_compute_dz | ( | mpf_lpinfo * | lp | ) |
Definition at line 293 of file mpf_fct.c.
References mpf_lpinfo::cz, mpf_lpinfo::dz, mpf_lpinfo::matbeg, mpf_lpinfo::matcnt, mpf_lpinfo::matind, mpf_lpinfo::matval, mpf_lpinfo::nbaz, mpf_lpinfo::nnbasic, and mpf_lpinfo::piz.
Referenced by mpf_dual_phaseI_step(), mpf_dual_phaseII_step(), mpf_ILLbasis_get_cinitial(), mpf_ILLfct_unroll_coef_change(), mpf_ILLsimplex(), mpf_ILLsimplex_retest_dsolution(), mpf_ILLsimplex_retest_psolution(), and mpf_primal_phaseII_step().
| void mpf_ILLfct_compute_phaseI_dz | ( | mpf_lpinfo * | lp | ) |
Definition at line 385 of file mpf_fct.c.
References ILL_IFTRACE, mpf_lpinfo::matbeg, mpf_lpinfo::matcnt, mpf_lpinfo::matind, mpf_lpinfo::matval, mpf_lpinfo::nbaz, mpf_lpinfo::nnbasic, mpf_lpinfo::pIdz, and mpf_lpinfo::pIpiz.
Referenced by mpf_ILLsimplex_retest_psolution(), and mpf_primal_phaseI_step().
| void mpf_ILLfct_compute_phaseI_piz | ( | mpf_lpinfo * | lp | ) |
Definition at line 360 of file mpf_fct.c.
References mpf_lpinfo::bfeas, mpf_svector::coef, mpf_svector::indx, mpf_lpinfo::nrows, mpf_lpinfo::pIpiz, mpf_lpinfo::srhs, and mpf_lpinfo::ssoln.
Referenced by mpf_ILLsimplex_retest_psolution(), and mpf_primal_phaseI_step().
| void mpf_ILLfct_compute_phaseI_xbz | ( | mpf_lpinfo * | lp | ) |
Definition at line 317 of file mpf_fct.c.
References mpf_svector::coef, mpf_lpinfo::dfeas, mpf_lpinfo::matbeg, mpf_lpinfo::matcnt, mpf_lpinfo::matind, mpf_lpinfo::matval, mpf_lpinfo::nbaz, mpf_lpinfo::nnbasic, mpf_lpinfo::nrows, mpf_lpinfo::srhs, mpf_lpinfo::ssoln, and mpf_lpinfo::xbz.
Referenced by mpf_dual_phaseI_step(), and mpf_ILLsimplex_retest_dsolution().
| void mpf_ILLfct_compute_piz | ( | mpf_lpinfo * | lp | ) |
Definition at line 269 of file mpf_fct.c.
References mpf_lpinfo::baz, mpf_svector::coef, mpf_lpinfo::cz, mpf_svector::indx, mpf_lpinfo::nrows, mpf_lpinfo::piz, mpf_lpinfo::srhs, and mpf_lpinfo::ssoln.
Referenced by mpf_dual_phaseI_step(), mpf_dual_phaseII_step(), mpf_ILLbasis_get_cinitial(), mpf_ILLfct_unroll_coef_change(), mpf_ILLsimplex(), mpf_ILLsimplex_retest_dsolution(), mpf_ILLsimplex_retest_psolution(), and mpf_primal_phaseII_step().
| void mpf_ILLfct_compute_pobj | ( | mpf_lpinfo * | lp | ) |
Definition at line 168 of file mpf_fct.c.
References mpf_lpinfo::baz, mpf_lpinfo::cz, mpf_lpinfo::lz, mpf_lpinfo::nbaz, mpf_lpinfo::nnbasic, mpf_lpinfo::nrows, mpf_lpinfo::objval, mpf_lpinfo::pobjval, STAT_LOWER, STAT_UPPER, mpf_lpinfo::uz, mpf_lpinfo::vstat, and mpf_lpinfo::xbz.
Referenced by mpf_ILLsimplex(), mpf_ILLsimplex_retest_psolution(), and mpf_primal_phaseII_step().
| void mpf_ILLfct_compute_ppIzz | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | srhs, | |||
| mpf_svector * | ssoln | |||
| ) |
Definition at line 1801 of file mpf_fct.c.
References ILL_IFTRACE, mpf_ILLbasis_row_solve(), and mpf_svector::nzcnt.
Referenced by mpf_primal_phaseI_step().
Here is the call graph for this function:

| void mpf_ILLfct_compute_psteep_upv | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | swz | |||
| ) |
Definition at line 464 of file mpf_fct.c.
References mpf_ILLbasis_row_solve(), and mpf_lpinfo::yjz.
Referenced by mpf_primal_phaseI_step(), and mpf_primal_phaseII_step().
Here is the call graph for this function:

| void mpf_ILLfct_compute_vA | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | v, | |||
| mpf_t * | vA | |||
| ) |
Definition at line 588 of file mpf_fct.c.
References mpf_svector::coef, mpf_svector::indx, mpf_SZERO_TOLER, mpf_lpinfo::ncols, mpf_svector::nzcnt, mpf_lpinfo::rowbeg, mpf_lpinfo::rowcnt, mpf_lpinfo::rowind, and mpf_lpinfo::rowval.
Referenced by mpf_ILLbasis_tableau_row().
| void mpf_ILLfct_compute_xbz | ( | mpf_lpinfo * | lp | ) |
Definition at line 220 of file mpf_fct.c.
References mpf_lpinfo::bz, mpf_svector::coef, mpf_svector::indx, mpf_lpinfo::lz, mpf_lpinfo::matbeg, mpf_lpinfo::matcnt, mpf_lpinfo::matind, mpf_lpinfo::matval, mpf_lpinfo::nbaz, mpf_lpinfo::nnbasic, mpf_lpinfo::nrows, mpf_lpinfo::srhs, mpf_lpinfo::ssoln, STAT_LOWER, STAT_UPPER, mpf_lpinfo::uz, mpf_lpinfo::vstat, and mpf_lpinfo::xbz.
Referenced by mpf_dual_phaseII_step(), mpf_ILLbasis_get_cinitial(), mpf_ILLfct_unroll_bound_change(), mpf_ILLsimplex(), mpf_ILLsimplex_retest_dsolution(), mpf_ILLsimplex_retest_psolution(), mpf_primal_phaseI_step(), and mpf_primal_phaseII_step().
| void mpf_ILLfct_compute_yz | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | yz, | |||
| mpf_svector * | updz, | |||
| int | col | |||
| ) |
Definition at line 412 of file mpf_fct.c.
References mpf_svector::coef, mpf_lpinfo::f, mpf_svector::indx, mpf_lpinfo::matbeg, mpf_lpinfo::matcnt, mpf_lpinfo::matind, mpf_lpinfo::matval, mpf_ILLbasis_column_solve(), mpf_ILLbasis_column_solve_update(), mpf_ILLfactor_set_factor_dparam(), mpf_PIVZ_TOLER, mpf_SZERO_TOLER, mpf_svector::nzcnt, and QS_FACTOR_SZERO_TOL.
Referenced by mpf_dual_phaseI_step(), mpf_dual_phaseII_step(), mpf_ILLprice_build_psteep_norms(), mpf_primal_phaseI_step(), and mpf_primal_phaseII_step().
Here is the call graph for this function:

| int mpf_ILLfct_compute_zA | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | z, | |||
| mpf_svector * | zA | |||
| ) |
Definition at line 576 of file mpf_fct.c.
References mpf_compute_zA1(), mpf_compute_zA3(), mpf_PIVZ_TOLER, mpf_lpinfo::nrows, and mpf_svector::nzcnt.
Referenced by mpf_dual_phaseI_step(), mpf_dual_phaseII_step(), mpf_ILLbasis_tableau_row(), mpf_ILLfct_update_ppI_prices(), mpf_primal_phaseI_step(), and mpf_primal_phaseII_step().
Here is the call graph for this function:

| void mpf_ILLfct_compute_zz | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | zz, | |||
| int | row | |||
| ) |
Definition at line 432 of file mpf_fct.c.
References mpf_ILLfct_compute_binvrow(), and mpf_PIVZ_TOLER.
Referenced by mpf_dual_phaseI_step(), mpf_dual_phaseII_step(), mpf_ILLbasis_tableau_row(), mpf_ILLprice_build_dsteep_norms(), mpf_ILLprice_get_dsteep_norms(), mpf_primal_phaseI_step(), and mpf_primal_phaseII_step().
Here is the call graph for this function:

| void mpf_ILLfct_dphaseI_simple_update | ( | mpf_lpinfo * | lp, | |
| mpf_t | ftol | |||
| ) |
Definition at line 1397 of file mpf_fct.c.
References mpf_lpinfo::dz, mpf_lpinfo::nbaz, mpf_lpinfo::nnbasic, STAT_LOWER, STAT_UPPER, VBOUNDED, mpf_lpinfo::vstat, and mpf_lpinfo::vtype.
| void mpf_ILLfct_dual_adjust | ( | mpf_lpinfo * | lp, | |
| const mpf_t | ftol | |||
| ) |
Definition at line 1377 of file mpf_fct.c.
References mpf_lpinfo::dz, mpf_lpinfo::lz, mpf_INFTY, mpf_NINFTY, mpf_lpinfo::nbaz, mpf_lpinfo::nnbasic, STAT_LOWER, STAT_UPPER, mpf_lpinfo::uz, and mpf_lpinfo::vstat.
Referenced by mpf_dual_phaseI_step(), mpf_dual_phaseII_step(), mpf_ILLbasis_get_cinitial(), and mpf_ILLsimplex().
| void mpf_ILLfct_free_bndinfo | ( | mpf_bndinfo * | binfo | ) |
Definition at line 54 of file mpf_fct.c.
References mpf_bndinfo::cbound, ILL_IFFREE, and mpf_bndinfo::pbound.
Referenced by mpf_ILLfct_bound_shift().
| void mpf_ILLfct_init_counts | ( | mpf_lpinfo * | lp | ) |
Definition at line 1491 of file mpf_fct.c.
References mpf_lpinfo::cnts, mpf_count_struct::dI_iter, mpf_count_struct::dII_iter, mpf_count_struct::dnorm_cnt, mpf_count_struct::dupv_cnt, ILL_IFTRACE, mpf_C_VALUE, mpf_lpinfo::nnbasic, mpf_lpinfo::nrows, mpf_count_struct::num_pi, mpf_count_struct::num_pi1, mpf_count_struct::num_up, mpf_count_struct::num_y, mpf_count_struct::num_z, mpf_count_struct::num_za, mpf_count_struct::pi1nz_cnt, mpf_count_struct::pI_iter, mpf_count_struct::pII_iter, mpf_count_struct::pinz_cnt, mpf_count_struct::pivdI, mpf_count_struct::pivdII, mpf_count_struct::pivpI, mpf_count_struct::pivpII, mpf_count_struct::pnorm_cnt, mpf_count_struct::pupv_cnt, mpf_count_struct::tot_iter, mpf_count_struct::upnz_cnt, mpf_count_struct::y_ravg, mpf_count_struct::ynz_cnt, mpf_count_struct::za_ravg, mpf_count_struct::zanz_cnt, and mpf_count_struct::znz_cnt.
| void mpf_ILLfct_load_workvector | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | s | |||
| ) |
Definition at line 105 of file mpf_fct.c.
References mpf_svector::coef, mpf_svector::indx, mpf_svector::nzcnt, and mpf_lpinfo::work.
Referenced by mpf_ILLprice_update_dsteep_norms(), and mpf_ILLprice_update_psteep_norms().
| mpf_bndinfo* mpf_ILLfct_new_bndinfo | ( | void | ) |
Definition at line 39 of file mpf_fct.c.
References mpf_bndinfo::cbound, and mpf_bndinfo::pbound.
Referenced by mpf_ILLfct_bound_shift().
| int mpf_ILLfct_perturb_bounds | ( | mpf_lpinfo * | lp | ) |
Definition at line 905 of file mpf_fct.c.
References mpf_tol_struct::ip_tol, mpf_expand_var_bounds(), and mpf_lpinfo::tol.
Referenced by mpf_monitor_iter().
Here is the call graph for this function:

| int mpf_ILLfct_perturb_coefs | ( | mpf_lpinfo * | lp | ) |
Definition at line 1121 of file mpf_fct.c.
References mpf_tol_struct::id_tol, mpf_expand_var_coefs(), and mpf_lpinfo::tol.
Referenced by mpf_monitor_iter().
Here is the call graph for this function:

| int mpf_ILLfct_perturb_phaseI_bounds | ( | mpf_lpinfo * | lp | ) |
Definition at line 919 of file mpf_fct.c.
References mpf_expand_phaseI_bounds().
Here is the call graph for this function:

| void mpf_ILLfct_print_counts | ( | mpf_lpinfo * | lp | ) |
Definition at line 1646 of file mpf_fct.c.
References mpf_lpinfo::cnts, mpf_count_struct::dI_iter, mpf_count_struct::dII_iter, mpf_count_struct::dnorm_cnt, mpf_lpinfo::nnbasic, mpf_lpinfo::nrows, mpf_count_struct::num_pi, mpf_count_struct::num_pi1, mpf_count_struct::num_up, mpf_count_struct::num_y, mpf_count_struct::num_z, mpf_count_struct::num_za, mpf_lpinfo::O, mpf_count_struct::pi1nz_cnt, mpf_count_struct::pI_iter, mpf_count_struct::pII_iter, mpf_count_struct::pinz_cnt, mpf_count_struct::pivdI, mpf_count_struct::pivdII, mpf_count_struct::pivpI, mpf_count_struct::pivpII, mpf_count_struct::pnorm_cnt, mpf_ILLlpdata::probname, mpf_count_struct::tot_iter, mpf_count_struct::upnz_cnt, mpf_count_struct::ynz_cnt, mpf_count_struct::zanz_cnt, and mpf_count_struct::znz_cnt.
Referenced by mpf_ILLsimplex().
| void mpf_ILLfct_set_status_values | ( | mpf_lpinfo * | lp, | |
| int | pstatus, | |||
| int | dstatus, | |||
| int | ptype, | |||
| int | dtype | |||
| ) |
Definition at line 1416 of file mpf_fct.c.
References mpf_lpinfo::basisstat, mpf_lp_status_info::dual_feasible, DUAL_FEASIBLE, DUAL_INFEASIBLE, mpf_lp_status_info::dual_infeasible, mpf_lp_status_info::dual_unbounded, DUAL_UNBOUNDED, mpf_lpinfo::nbchange, mpf_lpinfo::ncchange, mpf_lp_status_info::optimal, PHASEI, PHASEII, mpf_lp_status_info::primal_feasible, PRIMAL_FEASIBLE, PRIMAL_INFEASIBLE, mpf_lp_status_info::primal_infeasible, mpf_lp_status_info::primal_unbounded, PRIMAL_UNBOUNDED, and mpf_lpinfo::probstat.
Referenced by mpf_dual_phaseI_step(), mpf_dual_phaseII_step(), mpf_ILLsimplex(), mpf_monitor_iter(), mpf_primal_phaseI_step(), mpf_primal_phaseII_step(), and mpf_terminate_simplex().
| void mpf_ILLfct_set_variable_type | ( | mpf_lpinfo * | lp | ) |
Definition at line 129 of file mpf_fct.c.
References CLASS_LOGICAL, CLASS_STRUCT, mpf_lpinfo::lz, mpf_lpinfo::matbeg, mpf_lpinfo::matcnt, mpf_lpinfo::matind, mpf_INFTY, mpf_NINFTY, mpf_lpinfo::ncols, mpf_lpinfo::O, mpf_ILLlpdata::rowmap, mpf_lpinfo::uz, VARTIFICIAL, VBOUNDED, mpf_lpinfo::vclass, VFIXED, VFREE, VLOWER, mpf_lpinfo::vtype, and VUPPER.
Referenced by mpf_ILLsimplex().
| int mpf_ILLfct_test_pivot | ( | mpf_lpinfo * | lp, | |
| int | indx, | |||
| int | indxtype, | |||
| mpf_t | piv_val | |||
| ) |
Definition at line 2147 of file mpf_fct.c.
References mpf_svector::coef, mpf_svector::indx, mpf_svector::nzcnt, ROW_PIVOT, and mpf_lpinfo::yjz.
Referenced by mpf_dual_phaseI_step(), and mpf_dual_phaseII_step().
| void mpf_ILLfct_unroll_bound_change | ( | mpf_lpinfo * | lp | ) |
Definition at line 978 of file mpf_fct.c.
References mpf_lpinfo::bchanges, BOUND_LOWER, BOUND_UPPER, mpf_bndinfo::btype, mpf_bndinfo::cbound, ILL_IFFREE, ILL_IFTRACE, mpf_lpinfo::lz, mpf_ILLfct_compute_xbz(), mpf_lpinfo::nbchange, mpf_bndinfo::next, mpf_bndinfo::pbound, STAT_BASIC, STAT_LOWER, STAT_UPPER, mpf_lpinfo::uz, mpf_bndinfo::varnum, VARTIFICIAL, VBOUNDED, VFIXED, mpf_lpinfo::vstat, and mpf_lpinfo::vtype.
Referenced by mpf_ILLsimplex(), mpf_primal_phaseII_step(), and mpf_terminate_simplex().
Here is the call graph for this function:

| void mpf_ILLfct_unroll_coef_change | ( | mpf_lpinfo * | lp | ) |
Definition at line 1167 of file mpf_fct.c.
References mpf_lpinfo::cchanges, mpf_coefinfo::ccoef, mpf_lpinfo::cz, mpf_lpinfo::dz, ILL_IFFREE, mpf_ILLfct_compute_dz(), mpf_ILLfct_compute_piz(), mpf_lpinfo::ncchange, mpf_coefinfo::next, mpf_coefinfo::pcoef, STAT_BASIC, mpf_coefinfo::varnum, mpf_lpinfo::vindex, and mpf_lpinfo::vstat.
Referenced by mpf_dual_phaseII_step(), mpf_ILLsimplex(), mpf_monitor_iter(), and mpf_terminate_simplex().
Here is the call graph for this function:

| void mpf_ILLfct_update_basis_info | ( | mpf_lpinfo * | lp, | |
| int | eindex, | |||
| int | lindex, | |||
| int | lvstat | |||
| ) |
Definition at line 629 of file mpf_fct.c.
References mpf_lpinfo::basisid, mpf_lpinfo::baz, mpf_lpinfo::nbaz, STAT_BASIC, STAT_LOWER, STAT_UPPER, mpf_lpinfo::vindex, and mpf_lpinfo::vstat.
Referenced by mpf_dual_phaseI_step(), mpf_dual_phaseII_step(), mpf_ILLbasis_factor(), mpf_primal_phaseI_step(), and mpf_primal_phaseII_step().
| void mpf_ILLfct_update_counts | ( | mpf_lpinfo * | lp, | |
| int | f, | |||
| int | upi, | |||
| const mpf_t | upd | |||
| ) |
Definition at line 1572 of file mpf_fct.c.
References CNT_DIIPIV, CNT_DIPIV, CNT_DPHASE1ITER, CNT_DPHASE2ITER, CNT_P1PINZ, CNT_PIIPIV, CNT_PINZ, CNT_PIPIV, CNT_PPHASE1ITER, CNT_PPHASE2ITER, CNT_UPNZ, CNT_YNZ, CNT_YRAVG, CNT_ZANZ, CNT_ZARAVG, mpf_lpinfo::cnts, mpf_count_struct::dI_iter, mpf_count_struct::dII_iter, DUAL_PHASEI, DUAL_PHASEII, ILL_IFTRACE, mpf_update_piv_values(), mpf_count_struct::num_pi, mpf_count_struct::num_pi1, mpf_count_struct::num_up, mpf_count_struct::num_y, mpf_count_struct::num_za, mpf_count_struct::pi1nz_cnt, mpf_count_struct::pI_iter, mpf_count_struct::pII_iter, mpf_count_struct::pinz_cnt, PRIMAL_PHASEI, PRIMAL_PHASEII, mpf_count_struct::tot_iter, mpf_count_struct::upnz_cnt, mpf_count_struct::y_ravg, mpf_count_struct::ynz_cnt, mpf_count_struct::za_ravg, and mpf_count_struct::zanz_cnt.
Referenced by mpf_dual_phaseI_step(), mpf_dual_phaseII_step(), mpf_ILLfct_update_dpI_prices(), mpf_ILLfct_update_dpII_prices(), mpf_ILLfct_update_ppI_prices(), mpf_ILLratio_dI_test(), mpf_ILLratio_dII_test(), mpf_ILLratio_longdII_test(), mpf_ILLratio_pI_test(), mpf_ILLratio_pII_test(), mpf_primal_phaseI_step(), and mpf_primal_phaseII_step().
Here is the call graph for this function:

| void mpf_ILLfct_update_dfeas | ( | mpf_lpinfo * | lp, | |
| int | eindex, | |||
| mpf_svector * | srhs | |||
| ) |
Definition at line 1887 of file mpf_fct.c.
References BSKIP, mpf_svector::coef, mpf_lpinfo::dfeas, mpf_pI_uinfo::dty, mpf_lpinfo::dz, mpf_tol_struct::id_tol, mpf_svector::indx, mpf_lpinfo::iwork, mpf_pI_uinfo::ix, mpf_lpinfo::matbeg, mpf_lpinfo::matcnt, mpf_lpinfo::matind, mpf_lpinfo::matval, mpf_lpinfo::nbaz, mpf_lpinfo::nrows, mpf_svector::nzcnt, mpf_pI_uinfo::perm, STAT_LOWER, STAT_UPPER, STAT_ZERO, mpf_pI_uinfo::t, t, mpf_pI_uinfo::tctr, mpf_lpinfo::tol, mpf_pI_uinfo::tz, mpf_lpinfo::upd, mpf_lpinfo::vstat, mpf_lpinfo::vtype, mpf_lpinfo::work, and mpf_lpinfo::zA.
Referenced by mpf_dual_phaseI_step().
| void mpf_ILLfct_update_dIIfeas | ( | mpf_lpinfo * | lp, | |
| int | eindex, | |||
| mpf_svector * | srhs | |||
| ) |
Definition at line 2047 of file mpf_fct.c.
References mpf_svector::coef, mpf_pI_uinfo::dty, mpf_svector::indx, mpf_pI_uinfo::ix, mpf_lpinfo::lz, mpf_lpinfo::matbeg, mpf_lpinfo::matcnt, mpf_lpinfo::matind, mpf_lpinfo::matval, mpf_add_vectors(), mpf_lpinfo::nbaz, mpf_svector::nzcnt, mpf_pI_uinfo::perm, STAT_LOWER, STAT_UPPER, mpf_pI_uinfo::t, t, mpf_pI_uinfo::tctr, mpf_pI_uinfo::tz, mpf_lpinfo::upd, mpf_lpinfo::uz, mpf_lpinfo::vstat, and mpf_lpinfo::zA.
Referenced by mpf_dual_phaseII_step().
Here is the call graph for this function:

| void mpf_ILLfct_update_dpI_prices | ( | mpf_lpinfo * | lp, | |
| mpf_price_info * | pinf, | |||
| mpf_svector * | srhs, | |||
| mpf_svector * | ssoln, | |||
| int | lindex, | |||
| mpf_t | alpha | |||
| ) |
Definition at line 2004 of file mpf_fct.c.
References CNT_YRAVG, mpf_svector::coef, COMPLETE_PRICING, mpf_price_info::d_strategy, mpf_pI_uinfo::dty, DUAL_PHASEI, mpf_pI_uinfo::fs, mpf_svector::indx, mpf_add_vectors(), mpf_ILLfct_update_counts(), mpf_ILLfct_update_xz(), mpf_ILLprice_compute_primal_inf(), mpf_ILLprice_update_mpartial_price(), mpf_svector::nzcnt, mpf_pI_uinfo::piv, ROW_PRICING, mpf_lpinfo::upd, mpf_lpinfo::xbz, and mpf_lpinfo::yjz.
Referenced by mpf_dual_phaseI_step().
Here is the call graph for this function:

| void mpf_ILLfct_update_dpII_prices | ( | mpf_lpinfo * | lp, | |
| mpf_price_info * | pinf, | |||
| mpf_svector * | srhs, | |||
| mpf_svector * | ssoln, | |||
| int | lindex, | |||
| mpf_t | eval, | |||
| mpf_t | alpha | |||
| ) |
Definition at line 2108 of file mpf_fct.c.
References CNT_YRAVG, mpf_svector::coef, COMPLETE_PRICING, mpf_price_info::d_strategy, DUAL_PHASEII, mpf_svector::indx, mpf_add_vectors(), mpf_ILLfct_update_counts(), mpf_ILLfct_update_xz(), mpf_ILLprice_compute_primal_inf(), mpf_ILLprice_update_mpartial_price(), mpf_svector::nzcnt, ROW_PRICING, mpf_lpinfo::xbz, and mpf_lpinfo::yjz.
Referenced by mpf_dual_phaseII_step().
Here is the call graph for this function:

| void mpf_ILLfct_update_dz | ( | mpf_lpinfo * | lp, | |
| int | eindex, | |||
| mpf_t | alpha | |||
| ) |
Definition at line 716 of file mpf_fct.c.
References mpf_svector::coef, mpf_lpinfo::dz, mpf_svector::indx, mpf_svector::nzcnt, and mpf_lpinfo::zA.
Referenced by mpf_dual_phaseI_step(), mpf_dual_phaseII_step(), and mpf_primal_phaseII_step().
| void mpf_ILLfct_update_pfeas | ( | mpf_lpinfo * | lp, | |
| int | lindex, | |||
| mpf_svector * | srhs | |||
| ) |
Definition at line 1716 of file mpf_fct.c.
References mpf_lpinfo::baz, BBOUND, mpf_lpinfo::bfeas, mpf_svector::coef, mpf_pI_uinfo::dty, ILL_IFTRACE, mpf_svector::indx, mpf_tol_struct::ip_tol, mpf_lpinfo::iwork, mpf_pI_uinfo::ix, mpf_lpinfo::lz, mpf_INFTY, mpf_NINFTY, mpf_svector::nzcnt, mpf_pI_uinfo::perm, mpf_pI_uinfo::t, t, mpf_pI_uinfo::tctr, mpf_lpinfo::tol, mpf_pI_uinfo::tz, mpf_lpinfo::upd, mpf_lpinfo::uz, mpf_lpinfo::xbz, and mpf_lpinfo::yjz.
Referenced by mpf_primal_phaseI_step().
| void mpf_ILLfct_update_pIdz | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | zA, | |||
| int | eindex, | |||
| const mpf_t | alpha | |||
| ) |
Definition at line 728 of file mpf_fct.c.
References mpf_svector::coef, mpf_svector::indx, mpf_svector::nzcnt, and mpf_lpinfo::pIdz.
Referenced by mpf_ILLfct_update_ppI_prices().
| void mpf_ILLfct_update_pIpiz | ( | mpf_lpinfo * | lp, | |
| mpf_svector * | z, | |||
| const mpf_t | alpha | |||
| ) |
Definition at line 695 of file mpf_fct.c.
References mpf_svector::coef, mpf_svector::indx, mpf_svector::nzcnt, and mpf_lpinfo::pIpiz.
Referenced by mpf_ILLfct_update_ppI_prices().
| void mpf_ILLfct_update_piz | ( | mpf_lpinfo * | lp, | |
| mpf_t | alpha | |||
| ) |
Definition at line 685 of file mpf_fct.c.
References mpf_svector::coef, mpf_svector::indx, mpf_svector::nzcnt, mpf_lpinfo::piz, and mpf_lpinfo::zz.
Referenced by mpf_dual_phaseI_step(), mpf_dual_phaseII_step(), and mpf_primal_phaseII_step().
| void mpf_ILLfct_update_ppI_prices | ( | mpf_lpinfo * | lp, | |
| mpf_price_info * | pinf, | |||
| mpf_svector * | srhs, | |||
| mpf_svector * | ssoln, | |||
| int | eindex, | |||
| int | lindex, | |||
| const mpf_t | alpha | |||
| ) |
Definition at line 1813 of file mpf_fct.c.
References CNT_ZARAVG, COL_PRICING, COMPLETE_PRICING, mpf_pI_uinfo::dty, mpf_pI_uinfo::fs, ILL_IFTRACE, mpf_add_vectors(), mpf_ILLfct_compute_zA(), mpf_ILLfct_update_counts(), mpf_ILLfct_update_pIdz(), mpf_ILLfct_update_pIpiz(), mpf_ILLprice_compute_dual_inf(), mpf_ILLprice_update_mpartial_price(), mpf_svector::nzcnt, mpf_price_info::p_strategy, mpf_lpinfo::pIdz, mpf_pI_uinfo::piv, PRIMAL_PHASEI, mpf_lpinfo::upd, and mpf_lpinfo::zz.
Referenced by mpf_primal_phaseI_step().
Here is the call graph for this function:

| void mpf_ILLfct_update_xz | ( | mpf_lpinfo * | lp, | |
| mpf_t | tz, | |||
| int | eindex, | |||
| int | lindex | |||
| ) |
Definition at line 657 of file mpf_fct.c.
References mpf_svector::coef, ILL_IFTRACE, mpf_svector::indx, mpf_lpinfo::lz, mpf_lpinfo::nbaz, mpf_svector::nzcnt, STAT_LOWER, STAT_UPPER, STAT_ZERO, mpf_lpinfo::uz, mpf_lpinfo::vstat, mpf_lpinfo::xbz, and mpf_lpinfo::yjz.
Referenced by mpf_ILLfct_update_dpI_prices(), mpf_ILLfct_update_dpII_prices(), mpf_primal_phaseI_step(), and mpf_primal_phaseII_step().
| void mpf_ILLfct_zero_workvector | ( | mpf_lpinfo * | lp | ) |
Definition at line 119 of file mpf_fct.c.
References mpf_svector::coef, mpf_svector::indx, mpf_svector::nzcnt, and mpf_lpinfo::work.
Referenced by mpf_ILLprice_update_dsteep_norms(), and mpf_ILLprice_update_psteep_norms().
| static double mpf_my_rand | ( | int | bound, | |
| ILLrandstate * | r | |||
| ) | [static] |
Definition at line 756 of file mpf_fct.c.
References ILLutil_lprand().
Referenced by mpf_expand_phaseI_bounds(), mpf_expand_var_bounds(), and mpf_expand_var_coefs().
Here is the call graph for this function:

| static void mpf_update_piv_values | ( | mpf_count_struct * | c, | |
| int | phase, | |||
| const mpf_t | piv | |||
| ) | [static] |
Definition at line 1532 of file mpf_fct.c.
References DUAL_PHASEI, DUAL_PHASEII, mpf_count_struct::pivdI, mpf_count_struct::pivdII, mpf_count_struct::pivpI, mpf_count_struct::pivpII, PRIMAL_PHASEI, and PRIMAL_PHASEII.
Referenced by mpf_ILLfct_update_counts().
1.4.7