#include <stdio.h>
#include <stdlib.h>
#include "config.h"
#include "dbl_iqsutil.h"
#include "dbl_lpdefs.h"
#include "dbl_factor.h"
Include dependency graph for dbl_factor.c:

Go to the source code of this file.
| #define dbl_EGlpNumSetToMaxAbsAndDo | ( | a, | |||
| b, | |||||
| c | ) |
Value:
if(dbl_EGlpNumIsGreatZero(b))\ {\ if(dbl_EGlpNumIsLess(a,b)){\ dbl_EGlpNumCopy(a,b);\ c;\ }\ }\ else\ {\ dbl_EGlpNumSign(a);\ if(dbl_EGlpNumIsLess(b,a)){\ dbl_EGlpNumCopy(a,b);\ c;\ }\ dbl_EGlpNumSign(a);\ }
Definition at line 28 of file dbl_factor.c.
Referenced by dbl_dense_find_pivot().
| #define dbl_SETPERM | ( | f, | |||
| s, | |||||
| r, | |||||
| c | ) |
Value:
{ \
f->rperm[f->rrank[r]] = f->rperm[s]; \
f->rrank[f->rperm[s]] = f->rrank[r]; \
f->rperm[s] = r; \
f->rrank[r] = s; \
\
f->cperm[f->crank[c]] = f->cperm[s]; \
f->crank[f->cperm[s]] = f->crank[c]; \
f->cperm[s] = c; \
f->crank[c] = s; \
}
Definition at line 1480 of file dbl_factor.c.
Referenced by dbl_elim().
| static int dbl_add_col_nz | ( | dbl_factor_work * | f, | |
| int | r, | |||
| int | c | |||
| ) | [static] |
Definition at line 1147 of file dbl_factor.c.
References dbl_uc_info::cbeg, CHECKRVALG, dbl_make_uc_space(), dbl_set_col_nz(), EG_RETURN, dbl_uc_info::nzcnt, dbl_factor_work::uc_freebeg, dbl_factor_work::uc_inf, dbl_factor_work::uc_space, and dbl_factor_work::ucindx.
Referenced by dbl_elim_row().
Here is the call graph for this function:

| static int dbl_add_nonzero | ( | dbl_factor_work * | f, | |
| int | row, | |||
| int | col, | |||
| double | val | |||
| ) | [static] |
Definition at line 4766 of file dbl_factor.c.
References dbl_uc_info::cbeg, CHECKRVALG, dbl_EGlpNumCopy, dbl_expand_col(), dbl_expand_row(), EG_RETURN, dbl_ur_info::nzcnt, dbl_uc_info::nzcnt, dbl_ur_info::rbeg, TESTG, dbl_factor_work::uc_freebeg, dbl_factor_work::uc_inf, dbl_factor_work::uccoef, dbl_factor_work::ucindx, dbl_factor_work::ucrind, dbl_factor_work::ur_freebeg, dbl_factor_work::ur_inf, dbl_factor_work::ur_space, dbl_factor_work::urcind, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_create_column(), dbl_create_row(), and dbl_sparse_eliminate_row().
Here is the call graph for this function:

| static void dbl_btranl3_delay2 | ( | dbl_factor_work * | f, | |
| int | r | |||
| ) | [static] |
Definition at line 3990 of file dbl_factor.c.
References dbl_factor_work::lr_inf, dbl_factor_work::lrindx, dbl_lr_info::nzcnt, dbl_lr_info::rbeg, and dbl_lr_info::rrank.
Referenced by dbl_ILLfactor_btranl3().
| static void dbl_btranl3_process2 | ( | dbl_factor_work * | f, | |
| int | r, | |||
| dbl_svector * | x | |||
| ) | [static] |
Definition at line 4064 of file dbl_factor.c.
References dbl_svector::coef, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqZero, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumZero, dbl_svector::indx, dbl_factor_work::lr_inf, dbl_factor_work::lrcoef, dbl_factor_work::lrindx, dbl_lr_info::nzcnt, dbl_svector::nzcnt, dbl_lr_info::rbeg, dbl_lr_info::rrank, dbl_factor_work::szero_tol, and dbl_factor_work::work_coef.
Referenced by dbl_ILLfactor_btranl3().
| static void dbl_btranu3_delay2 | ( | dbl_factor_work * | f, | |
| int | r | |||
| ) | [static] |
Definition at line 4378 of file dbl_factor.c.
References dbl_factor_work::crank, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::rperm, dbl_factor_work::ur_inf, and dbl_factor_work::urindx.
Referenced by dbl_ILLfactor_btranu3().
| static void dbl_btranu3_process2 | ( | dbl_factor_work * | f, | |
| int | r, | |||
| dbl_svector * | x | |||
| ) | [static] |
Definition at line 4452 of file dbl_factor.c.
References dbl_svector::coef, dbl_factor_work::crank, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumDivTo, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqqZero, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumZero, dbl_svector::indx, dbl_svector::nzcnt, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::rperm, dbl_factor_work::ur_inf, dbl_factor_work::urcoef, dbl_factor_work::urindx, and dbl_factor_work::work_coef.
Referenced by dbl_ILLfactor_btranu3().
| static int dbl_build_iteration_l_data | ( | dbl_factor_work * | f | ) | [static] |
Definition at line 2182 of file dbl_factor.c.
References dbl_lc_info::c, dbl_lc_info::cbeg, dbl_lc_info::crank, dbl_EGlpNumAllocArray, dbl_EGlpNumCopy, dbl_EGlpNumFreeArray, dbl_lc_info::delay, dbl_lr_info::delay, dbl_factor_work::dim, EG_RETURN, ILL_IFFREE, ILL_SAFE_MALLOC, dbl_factor_work::lc_inf, dbl_factor_work::lccoef, dbl_factor_work::lcindx, dbl_factor_work::lr_inf, dbl_factor_work::lrcoef, dbl_factor_work::lrindx, dbl_factor_work::maxelem_cur, dbl_factor_work::maxelem_factor, dbl_lr_info::nzcnt, dbl_factor_work::nzcnt_cur, dbl_factor_work::nzcnt_factor, dbl_lr_info::r, dbl_lr_info::rbeg, and dbl_lr_info::rrank.
Referenced by dbl_ILLfactor_try().
| static int dbl_build_iteration_u_data | ( | dbl_factor_work * | f | ) | [static] |
Definition at line 2032 of file dbl_factor.c.
References dbl_uc_info::cbeg, dbl_EGlpNumAllocArray, dbl_EGlpNumCopy, dbl_EGlpNumFreeArray, dbl_uc_info::delay, dbl_ur_info::delay, dbl_factor_work::dim, ILL_IFFREE, ILL_SAFE_MALLOC, dbl_uc_info::nzcnt, dbl_factor_work::nzcnt_factor, dbl_ur_info::rbeg, dbl_factor_work::rperm, dbl_factor_work::rrank, dbl_factor_work::uc_freebeg, dbl_factor_work::uc_inf, dbl_factor_work::uc_space, dbl_factor_work::uccoef, dbl_factor_work::ucindx, dbl_factor_work::ucrind, dbl_factor_work::ur_freebeg, dbl_factor_work::ur_inf, dbl_factor_work::ur_space, dbl_factor_work::urcind, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_ILLfactor_try().
| static void dbl_clear_row | ( | dbl_factor_work * | f, | |
| int | r | |||
| ) | [static] |
Definition at line 742 of file dbl_factor.c.
References dbl_EGlpNumZero, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::ur_inf, dbl_factor_work::urindx, dbl_factor_work::work_coef, and dbl_factor_work::work_indx.
Referenced by dbl_elim().
| static void dbl_clear_work | ( | dbl_factor_work * | f | ) | [static] |
Definition at line 709 of file dbl_factor.c.
References dbl_EGlpNumZero, dbl_factor_work::dim, and dbl_factor_work::work_coef.
| static int dbl_create_column | ( | dbl_factor_work * | f, | |
| dbl_svector * | a, | |||
| int | col, | |||
| int * | p_last_rank | |||
| ) | [static] |
Definition at line 4946 of file dbl_factor.c.
References CHECKRVALG, dbl_svector::coef, dbl_add_nonzero(), dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumSetToMaxAbs, EG_RETURN, dbl_svector::indx, dbl_factor_work::maxelem_cur, dbl_svector::nzcnt, dbl_factor_work::nzcnt_cur, dbl_factor_work::rrank, and TESTG.
Referenced by dbl_ILLfactor_update().
Here is the call graph for this function:

| static int dbl_create_factor_space | ( | dbl_factor_work * | f | ) | [static] |
Definition at line 1809 of file dbl_factor.c.
References dbl_factor_work::dim, ILL_SAFE_MALLOC, dbl_factor_work::uc_inf, dbl_factor_work::uc_space, dbl_factor_work::uc_space_mul, dbl_factor_work::ucindx, and dbl_factor_work::ur_inf.
Referenced by dbl_init_matrix().
| static int dbl_create_row | ( | dbl_factor_work * | f, | |
| double * | a, | |||
| int | row, | |||
| int | minrank | |||
| ) | [static] |
Definition at line 5120 of file dbl_factor.c.
References CHECKRVALG, dbl_factor_work::cperm, dbl_add_nonzero(), dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqqZero, dbl_EGlpNumIsNeqZero, dbl_EGlpNumSetToMaxAbs, dbl_EGlpNumZero, dbl_factor_work::dim, dbl_factor_work::fzero_tol, and dbl_factor_work::maxelem_cur.
Here is the call graph for this function:

| static int dbl_delete_column | ( | dbl_factor_work * | f, | |
| int | col | |||
| ) | [static] |
Definition at line 4871 of file dbl_factor.c.
References dbl_uc_info::cbeg, CHECKRVALG, dbl_delete_nonzero_row(), EG_RETURN, dbl_uc_info::nzcnt, dbl_factor_work::nzcnt_cur, TESTG, dbl_factor_work::uc_inf, dbl_factor_work::ucindx, and dbl_factor_work::ucrind.
Referenced by dbl_ILLfactor_update().
Here is the call graph for this function:

| static void dbl_delete_nonzero_col | ( | dbl_factor_work * | f, | |
| int | col, | |||
| int | ind | |||
| ) | [static] |
Definition at line 4845 of file dbl_factor.c.
References dbl_uc_info::cbeg, dbl_EGlpNumCopy, dbl_uc_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::uc_inf, dbl_factor_work::uccoef, dbl_factor_work::ucindx, dbl_factor_work::ucrind, dbl_factor_work::ur_inf, and dbl_factor_work::urcind.
Referenced by dbl_delete_row().
| static int dbl_delete_nonzero_row | ( | dbl_factor_work * | f, | |
| int | row, | |||
| int | ind | |||
| ) | [static] |
Definition at line 4812 of file dbl_factor.c.
References dbl_uc_info::cbeg, dbl_EGlpNumCopy, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, TESTG, dbl_factor_work::uc_inf, dbl_factor_work::ucrind, dbl_factor_work::ur_inf, dbl_factor_work::urcind, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_delete_column().
| static int dbl_delete_row | ( | dbl_factor_work * | f, | |
| int | row, | |||
| dbl_svector * | x | |||
| ) | [static] |
Definition at line 4906 of file dbl_factor.c.
References dbl_svector::coef, dbl_delete_nonzero_col(), dbl_EGlpNumCopy, dbl_svector::indx, dbl_svector::nzcnt, dbl_ur_info::nzcnt, dbl_factor_work::nzcnt_cur, dbl_ur_info::rbeg, TESTG, dbl_factor_work::ur_inf, dbl_factor_work::urcind, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Here is the call graph for this function:

| static int dbl_dense_build_matrix | ( | dbl_factor_work * | f | ) | [static] |
Definition at line 2321 of file dbl_factor.c.
References dbl_factor_work::crank, dbl_EGlpNumAllocArray, dbl_EGlpNumCopy, dbl_EGlpNumFreeArray, dbl_EGlpNumZero, dbl_factor_work::dcols, dbl_factor_work::dense_base, dbl_factor_work::dim, dbl_factor_work::dmat, dbl_factor_work::drows, EG_RETURN, dbl_factor_work::nstages, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::rperm, dbl_factor_work::stage, dbl_factor_work::ur_inf, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_dense_factor().
| static int dbl_dense_create_col | ( | dbl_factor_work * | f, | |
| int | i | |||
| ) | [static] |
Definition at line 2593 of file dbl_factor.c.
References dbl_EGlpNumIsNeqZero, dbl_factor_work::dcols, dbl_factor_work::dense_base, dbl_factor_work::dmat, dbl_factor_work::drows, dbl_factor_work::fzero_tol, dbl_factor_work::lc_inf, and dbl_factor_work::rperm.
Referenced by dbl_dense_replace().
| static void dbl_dense_elim | ( | dbl_factor_work * | f, | |
| int | r, | |||
| int | c | |||
| ) | [static] |
Definition at line 2455 of file dbl_factor.c.
References dbl_dense_swap(), dbl_EGlpNumCopy, dbl_EGlpNumCopyFrac, dbl_EGlpNumInitVar, dbl_EGlpNumIsLess, dbl_EGlpNumIsNeqqZero, dbl_EGlpNumIsNeqZero, dbl_EGlpNumMultTo, dbl_EGlpNumSetToMaxAbs, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumZero, dbl_oneLpNum, dbl_factor_work::dcols, dbl_factor_work::dense_base, dbl_factor_work::dmat, dbl_factor_work::drows, dbl_factor_work::fzero_tol, dbl_factor_work::maxelem_factor, dbl_factor_work::rperm, dbl_factor_work::stage, and dbl_factor_work::ur_inf.
Referenced by dbl_dense_factor().
Here is the call graph for this function:

| static int dbl_dense_factor | ( | dbl_factor_work * | f | ) | [static] |
Definition at line 2666 of file dbl_factor.c.
References CHECKRVALG, dbl_dense_build_matrix(), dbl_dense_elim(), dbl_dense_find_pivot(), dbl_dense_replace(), dbl_dump_matrix(), dbl_EGlpNumIsLess, dbl_EGlpNumToLf, dbl_handle_singularity(), dbl_oneLpNum, dbl_factor_work::dense_base, E_FACTOR_BLOWUP, E_NO_PIVOT, E_SINGULAR_INTERNAL, EG_RETURN, dbl_factor_work::maxelem_factor, dbl_factor_work::maxelem_orig, dbl_factor_work::maxmult, MESSAGE, dbl_factor_work::nstages, dbl_factor_work::partial_cur, and dbl_factor_work::stage.
Referenced by dbl_ILLfactor_try().
Here is the call graph for this function:

| static int dbl_dense_find_pivot | ( | dbl_factor_work * | f, | |
| int * | p_r, | |||
| int * | p_c | |||
| ) | [static] |
Definition at line 2367 of file dbl_factor.c.
References dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumIsLess, dbl_EGlpNumSetToMaxAbsAndDo, dbl_EGlpNumZero, dbl_factor_work::dcols, dbl_factor_work::dense_base, dbl_factor_work::dmat, dbl_factor_work::drows, E_NO_PIVOT, dbl_factor_work::rperm, dbl_factor_work::stage, and dbl_factor_work::ur_inf.
Referenced by dbl_dense_factor().
| static int dbl_dense_replace | ( | dbl_factor_work * | f | ) | [static] |
Definition at line 2645 of file dbl_factor.c.
References CHECKRVALG, dbl_dense_create_col(), dbl_dense_replace_row(), dbl_EGlpNumFreeArray, dbl_factor_work::dcols, dbl_factor_work::dmat, dbl_factor_work::drows, and EG_RETURN.
Referenced by dbl_dense_factor().
Here is the call graph for this function:

| static int dbl_dense_replace_row | ( | dbl_factor_work * | f, | |
| int | i | |||
| ) | [static] |
Definition at line 2536 of file dbl_factor.c.
References dbl_factor_work::cperm, dbl_EGlpNumIsNeqZero, dbl_factor_work::dcols, dbl_factor_work::dense_base, dbl_factor_work::dmat, dbl_factor_work::fzero_tol, dbl_factor_work::rperm, and dbl_factor_work::ur_inf.
Referenced by dbl_dense_replace().
| static void dbl_dense_swap | ( | dbl_factor_work * | f, | |
| int | r, | |||
| int | c | |||
| ) | [static] |
Definition at line 2417 of file dbl_factor.c.
References dbl_factor_work::cperm, dbl_factor_work::crank, dbl_EGLPNUM_SWAP, dbl_EGlpNumClearVar, dbl_EGlpNumInitVar, dbl_ILL_SWAP, dbl_factor_work::dcols, dbl_factor_work::dense_base, dbl_factor_work::dmat, dbl_factor_work::drows, dbl_factor_work::rperm, dbl_factor_work::rrank, and dbl_factor_work::stage.
Referenced by dbl_dense_elim().
| static void dbl_disable_col | ( | dbl_factor_work * | f, | |
| int | c | |||
| ) | [static] |
Definition at line 1200 of file dbl_factor.c.
References dbl_uc_info::next, dbl_uc_info::prev, and dbl_factor_work::uc_inf.
Referenced by dbl_find_pivot().
| static void dbl_dump_matrix | ( | dbl_factor_work * | f, | |
| int | remaining | |||
| ) | [static] |
Definition at line 323 of file dbl_factor.c.
References dbl_factor_work::cperm, dbl_EGlpNumToLf, dbl_factor_work::dcols, dbl_factor_work::dense_base, dbl_factor_work::dim, dbl_factor_work::dmat, dbl_factor_work::drows, dbl_factor_work::er_inf, dbl_factor_work::lc_inf, dbl_factor_work::lr_inf, dbl_ur_info::max, dbl_factor_work::nstages, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::rperm, dbl_factor_work::rrank, dbl_factor_work::stage, dbl_factor_work::uc_inf, dbl_factor_work::ur_inf, dbl_factor_work::urcind, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_dense_factor(), and dbl_ILLfactor_try().
| static int dbl_elim | ( | dbl_factor_work * | f, | |
| int | r, | |||
| int | c | |||
| ) | [static] |
Definition at line 1492 of file dbl_factor.c.
References dbl_lc_info::c, dbl_uc_info::cbeg, dbl_lc_info::cbeg, CHECKRVALG, dbl_clear_row(), dbl_EGLPNUM_SWAP, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumIsLess, dbl_EGlpNumSetToMaxAbs, dbl_elim_row(), dbl_load_row(), dbl_make_lc_space(), dbl_remove_col(), dbl_remove_col_nz(), dbl_remove_row(), dbl_remove_row_nz(), dbl_SETPERM, EG_RETURN, dbl_factor_work::lc_freebeg, dbl_factor_work::lc_inf, dbl_factor_work::lc_space, dbl_factor_work::lccoef, dbl_factor_work::lcindx, dbl_ur_info::max, dbl_factor_work::nstages, dbl_uc_info::nzcnt, dbl_ur_info::nzcnt, dbl_lc_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::stage, dbl_factor_work::uc_inf, dbl_factor_work::ucindx, dbl_factor_work::ur_inf, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_ILLfactor_try().
Here is the call graph for this function:

| static int dbl_elim_row | ( | dbl_factor_work * | f, | |
| int | elim_r, | |||
| int | r, | |||
| int | c, | |||
| double * | p_pivot_coef | |||
| ) | [static] |
Definition at line 1283 of file dbl_factor.c.
References CHECKRVALG, dbl_add_col_nz(), dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumCopyNeg, dbl_EGlpNumDivTo, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqZero, dbl_EGlpNumMultTo, dbl_EGlpNumSetToMaxAbs, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumZero, dbl_find_coef(), dbl_make_ur_space(), dbl_remove_col_nz(), dbl_set_row_nz(), EG_RETURN, dbl_factor_work::fzero_tol, dbl_ur_info::nzcnt, dbl_ur_info::pivcnt, dbl_ur_info::rbeg, dbl_factor_work::ur_freebeg, dbl_factor_work::ur_inf, dbl_factor_work::ur_space, dbl_factor_work::urcoef, dbl_factor_work::urindx, dbl_factor_work::work_coef, and dbl_factor_work::work_indx.
Referenced by dbl_elim().
Here is the call graph for this function:

| static int dbl_eliminate_row | ( | dbl_factor_work * | f, | |
| int | rank_p, | |||
| int | rank_r | |||
| ) | [static] |
Definition at line 5044 of file dbl_factor.c.
References dbl_factor_work::cperm, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumCopyFrac, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqZero, dbl_EGlpNumSetToMaxAbs, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumZero, E_UPDATE_NOSPACE, dbl_factor_work::er_freebeg, dbl_factor_work::er_space, dbl_factor_work::ercoef, dbl_factor_work::erindx, dbl_factor_work::fzero_tol, dbl_factor_work::maxelem_cur, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::rperm, dbl_factor_work::ur_inf, dbl_factor_work::urcoef, dbl_factor_work::urindx, and dbl_factor_work::work_coef.
| static int dbl_expand_col | ( | dbl_factor_work * | f, | |
| int | col | |||
| ) | [static] |
Definition at line 4688 of file dbl_factor.c.
References dbl_uc_info::cbeg, CHECKRVALG, dbl_EGlpNumCopy, dbl_make_uc_space(), EG_RETURN, dbl_uc_info::nzcnt, dbl_factor_work::uc_freebeg, dbl_factor_work::uc_inf, dbl_factor_work::uc_space, dbl_factor_work::uccoef, dbl_factor_work::ucindx, and dbl_factor_work::ucrind.
Referenced by dbl_add_nonzero().
Here is the call graph for this function:

| static int dbl_expand_row | ( | dbl_factor_work * | f, | |
| int | row | |||
| ) | [static] |
Definition at line 4727 of file dbl_factor.c.
References CHECKRVALG, dbl_EGlpNumCopy, dbl_make_ur_space(), EG_RETURN, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::ur_freebeg, dbl_factor_work::ur_inf, dbl_factor_work::ur_space, dbl_factor_work::urcind, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_add_nonzero().
Here is the call graph for this function:

| static void dbl_find_coef | ( | dbl_factor_work * | f, | |
| int | r, | |||
| int | c, | |||
| double * | coef | |||
| ) | [static] |
Definition at line 1259 of file dbl_factor.c.
References dbl_EGlpNumCopy, dbl_EGlpNumZero, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::ur_inf, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_elim_row(), and dbl_find_pivot_column().
| static int dbl_find_pivot | ( | dbl_factor_work * | f, | |
| int * | p_r, | |||
| int * | p_c | |||
| ) | [static] |
Definition at line 1702 of file dbl_factor.c.
References dbl_uc_info::cbeg, dbl_disable_col(), dbl_find_pivot_column(), dbl_find_pivot_row(), dbl_factor_work::dim, E_NO_PIVOT, dbl_factor_work::max_k, dbl_ur_info::next, dbl_uc_info::next, dbl_factor_work::p, dbl_uc_info::prev, dbl_ur_info::rbeg, dbl_factor_work::uc_inf, dbl_factor_work::ucindx, dbl_factor_work::ur_inf, and dbl_factor_work::urindx.
Referenced by dbl_ILLfactor_try().
Here is the call graph for this function:

| static void dbl_find_pivot_column | ( | dbl_factor_work * | f, | |
| int | c, | |||
| int * | p_r | |||
| ) | [static] |
Definition at line 1624 of file dbl_factor.c.
References dbl_uc_info::cbeg, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumIsLeq, dbl_EGlpNumIsLessZero, dbl_EGlpNumMultTo, dbl_EGlpNumSign, dbl_find_coef(), dbl_uc_info::nzcnt, dbl_ur_info::pivcnt, dbl_factor_work::uc_inf, dbl_factor_work::ucindx, and dbl_factor_work::ur_inf.
Referenced by dbl_find_pivot().
Here is the call graph for this function:

| static void dbl_find_pivot_row | ( | dbl_factor_work * | f, | |
| int | r, | |||
| int * | p_c | |||
| ) | [static] |
Definition at line 1664 of file dbl_factor.c.
References dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumCopyAbs, dbl_EGlpNumInitVar, dbl_EGlpNumIsLeq, dbl_EGlpNumMultTo, dbl_factor_work::partial_cur, dbl_ur_info::pivcnt, dbl_ur_info::rbeg, dbl_factor_work::uc_inf, dbl_factor_work::ur_inf, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_find_pivot().
| static void dbl_ftranl3_delay2 | ( | dbl_factor_work * | f, | |
| int | c | |||
| ) | [static] |
Definition at line 3082 of file dbl_factor.c.
References dbl_lc_info::cbeg, dbl_lc_info::crank, dbl_factor_work::lc_inf, dbl_factor_work::lcindx, and dbl_lc_info::nzcnt.
Referenced by dbl_ILLfactor_ftranl3().
| static void dbl_ftranl3_process2 | ( | dbl_factor_work * | f, | |
| int | c, | |||
| dbl_svector * | x | |||
| ) | [static] |
Definition at line 3155 of file dbl_factor.c.
References dbl_lc_info::cbeg, dbl_svector::coef, dbl_lc_info::crank, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqqZero, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumZero, dbl_svector::indx, dbl_factor_work::lc_inf, dbl_factor_work::lccoef, dbl_factor_work::lcindx, dbl_lc_info::nzcnt, dbl_svector::nzcnt, and dbl_factor_work::work_coef.
Referenced by dbl_ILLfactor_ftranl3().
| static void dbl_ftranu3_delay2 | ( | dbl_factor_work * | f, | |
| int | c | |||
| ) | [static] |
Definition at line 3483 of file dbl_factor.c.
References dbl_uc_info::cbeg, dbl_factor_work::cperm, dbl_uc_info::nzcnt, dbl_factor_work::rrank, dbl_factor_work::uc_inf, and dbl_factor_work::ucindx.
Referenced by dbl_ILLfactor_ftranu3().
| static void dbl_ftranu3_process2 | ( | dbl_factor_work * | f, | |
| int | c, | |||
| dbl_svector * | x | |||
| ) | [static] |
Definition at line 3558 of file dbl_factor.c.
References dbl_uc_info::cbeg, dbl_svector::coef, dbl_factor_work::cperm, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumDivTo, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqZero, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumZero, dbl_svector::indx, dbl_svector::nzcnt, dbl_uc_info::nzcnt, dbl_factor_work::rrank, dbl_factor_work::szero_tol, dbl_factor_work::uc_inf, dbl_factor_work::uccoef, dbl_factor_work::ucindx, and dbl_factor_work::work_coef.
Referenced by dbl_ILLfactor_ftranu3().
| static int dbl_handle_singularity | ( | dbl_factor_work * | f | ) | [static] |
Definition at line 2284 of file dbl_factor.c.
References dbl_factor_work::cperm, E_SING_NO_DATA, EG_RETURN, ILL_IFFREE, ILL_SAFE_MALLOC, dbl_factor_work::nstages, dbl_factor_work::p_nsing, dbl_factor_work::p_singc, dbl_factor_work::p_singr, dbl_factor_work::rperm, and dbl_factor_work::stage.
Referenced by dbl_dense_factor(), and dbl_ILLfactor_try().
| int dbl_ILLfactor | ( | dbl_factor_work * | f, | |
| int * | basis, | |||
| int * | cbeg, | |||
| int * | clen, | |||
| int * | cindx, | |||
| double * | ccoef, | |||
| int * | p_nsing, | |||
| int ** | p_singr, | |||
| int ** | p_singc | |||
| ) |
Definition at line 2954 of file dbl_factor.c.
References dbl_EGlpNumIsLess, dbl_EGlpNumIsLessDbl, dbl_EGlpNumMultUiTo, dbl_EGlpNumOne, dbl_EGlpNumSet, dbl_ILLfactor_try(), dbl_oneLpNum, E_FACTOR_BLOWUP, EG_RETURN, dbl_factor_work::p_nsing, dbl_factor_work::p_singc, dbl_factor_work::p_singr, and dbl_factor_work::partial_cur.
Here is the call graph for this function:

| void dbl_ILLfactor_btran | ( | dbl_factor_work * | f, | |
| dbl_svector * | a, | |||
| dbl_svector * | x | |||
| ) |
Definition at line 4542 of file dbl_factor.c.
References dbl_svector::coef, dbl_EGlpNumCopy, dbl_EGlpNumToLf, dbl_ILLfactor_btrane2(), dbl_ILLfactor_btranu(), dbl_ILLfactor_btranu3(), dbl_factor_work::dim, dbl_svector::indx, dbl_svector::nzcnt, SPARSE_FACTOR, dbl_factor_work::work_coef, and dbl_factor_work::xtmp.
Here is the call graph for this function:

| static void dbl_ILLfactor_btrane | ( | dbl_factor_work * | f, | |
| double * | x | |||
| ) | [static] |
Definition at line 4153 of file dbl_factor.c.
References dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqqZero, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumToLf, dbl_factor_work::dim, dbl_factor_work::er_inf, dbl_factor_work::ercoef, dbl_factor_work::erindx, dbl_factor_work::etacnt, dbl_er_info::nzcnt, and dbl_er_info::rbeg.
| static void dbl_ILLfactor_btrane2 | ( | dbl_factor_work * | f, | |
| dbl_svector * | x | |||
| ) | [static] |
Definition at line 4207 of file dbl_factor.c.
References dbl_svector::coef, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqqZero, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumToLf, dbl_EGlpNumZero, dbl_factor_work::er_inf, dbl_factor_work::ercoef, dbl_factor_work::erindx, dbl_factor_work::etacnt, dbl_svector::indx, dbl_er_info::nzcnt, dbl_svector::nzcnt, dbl_er_info::rbeg, dbl_factor_work::work_coef, and dbl_factor_work::work_indx.
Referenced by dbl_ILLfactor_btran().
| static void dbl_ILLfactor_btranl2 | ( | dbl_factor_work * | f, | |
| double * | x | |||
| ) | [static] |
Definition at line 3912 of file dbl_factor.c.
References dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqqZero, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumToLf, dbl_factor_work::dim, dbl_factor_work::lr_inf, dbl_factor_work::lrcoef, dbl_factor_work::lrindx, dbl_lr_info::nzcnt, and dbl_lr_info::rbeg.
| static void dbl_ILLfactor_btranl3 | ( | dbl_factor_work * | f, | |
| dbl_svector * | a, | |||
| dbl_svector * | x | |||
| ) | [static] |
Definition at line 4114 of file dbl_factor.c.
References dbl_svector::coef, dbl_btranl3_delay2(), dbl_btranl3_process2(), dbl_EGlpNumCopy, dbl_EGlpNumToLf, dbl_svector::indx, dbl_factor_work::lr_inf, dbl_svector::nzcnt, and dbl_factor_work::work_coef.
Here is the call graph for this function:

| static void dbl_ILLfactor_btranu | ( | dbl_factor_work * | f, | |
| double * | a, | |||
| dbl_svector * | x | |||
| ) | [static] |
Definition at line 4295 of file dbl_factor.c.
References dbl_svector::coef, dbl_factor_work::cperm, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumDivTo, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqqZero, dbl_EGlpNumIsNeqZero, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumToLf, dbl_EGlpNumZero, dbl_factor_work::dim, dbl_svector::indx, dbl_svector::nzcnt, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::rperm, dbl_factor_work::szero_tol, dbl_factor_work::ur_inf, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_ILLfactor_btran().
| static void dbl_ILLfactor_btranu3 | ( | dbl_factor_work * | f, | |
| dbl_svector * | a, | |||
| dbl_svector * | x | |||
| ) | [static] |
Definition at line 4502 of file dbl_factor.c.
References dbl_svector::coef, dbl_btranu3_delay2(), dbl_btranu3_process2(), dbl_EGlpNumCopy, dbl_EGlpNumToLf, dbl_svector::indx, dbl_svector::nzcnt, dbl_factor_work::ur_inf, and dbl_factor_work::work_coef.
Referenced by dbl_ILLfactor_btran().
Here is the call graph for this function:

| int dbl_ILLfactor_create_factor_work | ( | dbl_factor_work * | f, | |
| int | dim | |||
| ) |
Definition at line 263 of file dbl_factor.c.
References CHECKRVALG, dbl_factor_work::cperm, dbl_factor_work::crank, dbl_EGlpNumAllocArray, dbl_EGlpNumInitVar, dbl_EGlpNumZero, dbl_ILLfactor_free_factor_work(), dbl_ILLsvector_alloc(), dbl_factor_work::dim, EG_RETURN, dbl_factor_work::etacnt, ILL_SAFE_MALLOC, dbl_factor_work::lc_inf, dbl_factor_work::lr_inf, dbl_ur_info::max, dbl_factor_work::max_k, dbl_ur_info::next, dbl_uc_info::next, dbl_lr_info::nzcnt, dbl_lc_info::nzcnt, dbl_ur_info::nzcnt, dbl_uc_info::nzcnt, dbl_ur_info::prev, dbl_uc_info::prev, dbl_factor_work::rperm, dbl_factor_work::rrank, dbl_factor_work::uc_inf, dbl_factor_work::ur_inf, dbl_factor_work::work_coef, dbl_factor_work::work_indx, and dbl_factor_work::xtmp.
Here is the call graph for this function:

| void dbl_ILLfactor_free_factor_work | ( | dbl_factor_work * | f | ) |
Definition at line 131 of file dbl_factor.c.
References dbl_factor_work::cperm, dbl_factor_work::crank, dbl_EGlpNumClearVar, dbl_EGlpNumFreeArray, dbl_ILLsvector_free(), dbl_factor_work::dim, dbl_factor_work::dmat, dbl_factor_work::er_inf, dbl_factor_work::ercoef, dbl_factor_work::erindx, ILL_IFFREE, dbl_factor_work::lc_inf, dbl_factor_work::lccoef, dbl_factor_work::lcindx, dbl_factor_work::lr_inf, dbl_factor_work::lrcoef, dbl_factor_work::lrindx, dbl_ur_info::max, dbl_factor_work::max_k, MESSAGE, dbl_factor_work::rperm, dbl_factor_work::rrank, dbl_factor_work::uc_inf, dbl_factor_work::uccoef, dbl_factor_work::ucindx, dbl_factor_work::ucrind, dbl_factor_work::ur_inf, dbl_factor_work::urcind, dbl_factor_work::urcoef, dbl_factor_work::urindx, dbl_factor_work::work_coef, dbl_factor_work::work_indx, and dbl_factor_work::xtmp.
Here is the call graph for this function:

| void dbl_ILLfactor_ftran | ( | dbl_factor_work * | f, | |
| dbl_svector * | a, | |||
| dbl_svector * | x | |||
| ) |
Definition at line 3649 of file dbl_factor.c.
References dbl_svector::coef, dbl_EGlpNumCopy, dbl_EGlpNumToLf, dbl_ILLfactor_ftranl3(), dbl_factor_work::dim, dbl_svector::indx, dbl_svector::nzcnt, SPARSE_FACTOR, and dbl_factor_work::work_coef.
Here is the call graph for this function:

| void dbl_ILLfactor_ftran_update | ( | dbl_factor_work * | f, | |
| dbl_svector * | a, | |||
| dbl_svector * | upd, | |||
| dbl_svector * | x | |||
| ) |
Definition at line 3770 of file dbl_factor.c.
References dbl_svector::coef, dbl_EGlpNumCopy, dbl_EGlpNumToLf, dbl_ILLfactor_ftranl3(), dbl_factor_work::dim, dbl_svector::indx, dbl_svector::nzcnt, SPARSE_FACTOR, and dbl_factor_work::work_coef.
Here is the call graph for this function:

| static void dbl_ILLfactor_ftrane | ( | dbl_factor_work * | f, | |
| double * | a | |||
| ) | [static] |
Definition at line 3243 of file dbl_factor.c.
References dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumToLf, dbl_factor_work::dim, dbl_factor_work::er_inf, dbl_factor_work::ercoef, dbl_factor_work::erindx, dbl_factor_work::etacnt, dbl_er_info::nzcnt, and dbl_er_info::rbeg.
| static void dbl_ILLfactor_ftrane2 | ( | dbl_factor_work * | f, | |
| dbl_svector * | a | |||
| ) | [static] |
Definition at line 3295 of file dbl_factor.c.
References dbl_svector::coef, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqqZero, dbl_EGlpNumIsNeqZero, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumToLf, dbl_EGlpNumZero, dbl_factor_work::er_inf, dbl_factor_work::ercoef, dbl_factor_work::erindx, dbl_factor_work::etacnt, dbl_factor_work::fzero_tol, dbl_svector::indx, dbl_er_info::nzcnt, dbl_svector::nzcnt, dbl_er_info::rbeg, dbl_factor_work::work_coef, and dbl_factor_work::work_indx.
| static void dbl_ILLfactor_ftranl | ( | dbl_factor_work * | f, | |
| double * | a | |||
| ) | [static] |
Definition at line 3005 of file dbl_factor.c.
References dbl_lc_info::cbeg, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqqZero, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumToLf, dbl_factor_work::dim, dbl_factor_work::lc_inf, dbl_factor_work::lccoef, dbl_factor_work::lcindx, and MESSAGE.
| static void dbl_ILLfactor_ftranl3 | ( | dbl_factor_work * | f, | |
| dbl_svector * | a, | |||
| dbl_svector * | x | |||
| ) | [static] |
Definition at line 3204 of file dbl_factor.c.
References dbl_svector::coef, dbl_EGlpNumCopy, dbl_EGlpNumToLf, dbl_ftranl3_delay2(), dbl_ftranl3_process2(), dbl_svector::indx, dbl_factor_work::lc_inf, dbl_svector::nzcnt, and dbl_factor_work::work_coef.
Referenced by dbl_ILLfactor_ftran(), and dbl_ILLfactor_ftran_update().
Here is the call graph for this function:

| static void dbl_ILLfactor_ftranu | ( | dbl_factor_work * | f, | |
| double * | a, | |||
| dbl_svector * | x | |||
| ) | [static] |
Definition at line 3400 of file dbl_factor.c.
References dbl_uc_info::cbeg, dbl_svector::coef, dbl_factor_work::cperm, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumDivTo, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqqZero, dbl_EGlpNumIsNeqZero, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumToLf, dbl_EGlpNumZero, dbl_factor_work::dim, dbl_svector::indx, dbl_svector::nzcnt, dbl_uc_info::nzcnt, dbl_factor_work::rperm, dbl_factor_work::szero_tol, dbl_factor_work::uc_inf, dbl_factor_work::uccoef, and dbl_factor_work::ucindx.
| static void dbl_ILLfactor_ftranu3 | ( | dbl_factor_work * | f, | |
| dbl_svector * | a, | |||
| dbl_svector * | x | |||
| ) | [static] |
Definition at line 3609 of file dbl_factor.c.
References dbl_svector::coef, dbl_EGlpNumCopy, dbl_EGlpNumToLf, dbl_ftranu3_delay2(), dbl_ftranu3_process2(), dbl_svector::indx, dbl_svector::nzcnt, dbl_factor_work::uc_inf, and dbl_factor_work::work_coef.
Here is the call graph for this function:

| void dbl_ILLfactor_init_factor_work | ( | dbl_factor_work * | f | ) |
Definition at line 84 of file dbl_factor.c.
References dbl_factor_work::cperm, dbl_factor_work::crank, dbl_EGlpNumCopy, dbl_ILLsvector_init(), dbl_OBJBND_TOLER, dbl_SZERO_TOLER, dbl_factor_work::dense_fract, dbl_factor_work::dense_min, dbl_factor_work::dmat, dbl_factor_work::er_inf, dbl_factor_work::er_space_mul, dbl_factor_work::ercoef, dbl_factor_work::erindx, dbl_factor_work::etamax, dbl_factor_work::fzero_tol, dbl_factor_work::grow_mul, dbl_factor_work::lc_inf, dbl_factor_work::lc_space_mul, dbl_factor_work::lccoef, dbl_factor_work::lcindx, dbl_factor_work::lr_inf, dbl_factor_work::lrcoef, dbl_factor_work::lrindx, dbl_factor_work::max_k, dbl_factor_work::maxmult, dbl_factor_work::minmult, dbl_factor_work::p, dbl_factor_work::partial_cur, dbl_factor_work::partial_tol, dbl_factor_work::rperm, dbl_factor_work::rrank, dbl_factor_work::szero_tol, dbl_factor_work::uc_inf, dbl_factor_work::uc_space_mul, dbl_factor_work::uccoef, dbl_factor_work::ucindx, dbl_factor_work::ucrind, dbl_factor_work::updmaxmult, dbl_factor_work::ur_inf, dbl_factor_work::ur_space_mul, dbl_factor_work::urcind, dbl_factor_work::urcoef, dbl_factor_work::urindx, dbl_factor_work::work_coef, dbl_factor_work::work_indx, and dbl_factor_work::xtmp.
Here is the call graph for this function:

| int dbl_ILLfactor_set_factor_dparam | ( | dbl_factor_work * | f, | |
| int | param, | |||
| double | val | |||
| ) |
Definition at line 211 of file dbl_factor.c.
References dbl_EGlpNumCopy, dbl_EGlpNumToLf, dbl_factor_work::dense_fract, dbl_factor_work::er_space_mul, dbl_factor_work::fzero_tol, dbl_factor_work::grow_mul, dbl_factor_work::lc_space_mul, dbl_factor_work::lr_space_mul, dbl_factor_work::maxmult, dbl_factor_work::partial_cur, dbl_factor_work::partial_tol, QS_FACTOR_DENSE_FRACT, QS_FACTOR_ER_SPACE_MUL, QS_FACTOR_FZERO_TOL, QS_FACTOR_GROW_MUL, QS_FACTOR_LC_SPACE_MUL, QS_FACTOR_LR_SPACE_MUL, QS_FACTOR_MAXMULT, QS_FACTOR_PARTIAL_TOL, QS_FACTOR_SZERO_TOL, QS_FACTOR_UC_SPACE_MUL, QS_FACTOR_UPDMAXMULT, QS_FACTOR_UR_SPACE_MUL, dbl_factor_work::szero_tol, dbl_factor_work::uc_space_mul, dbl_factor_work::updmaxmult, and dbl_factor_work::ur_space_mul.
| int dbl_ILLfactor_set_factor_iparam | ( | dbl_factor_work * | f, | |
| int | param, | |||
| int | val | |||
| ) |
Definition at line 184 of file dbl_factor.c.
References dbl_factor_work::dense_min, dbl_factor_work::etamax, dbl_factor_work::max_k, dbl_factor_work::p, QS_FACTOR_DENSE_MIN, QS_FACTOR_ETAMAX, QS_FACTOR_MAX_K, and QS_FACTOR_P.
| static int dbl_ILLfactor_try | ( | dbl_factor_work * | f, | |
| int * | basis, | |||
| int * | cbeg, | |||
| int * | clen, | |||
| int * | cindx, | |||
| double * | ccoef | |||
| ) | [static] |
Definition at line 2761 of file dbl_factor.c.
References CHECKRVALG, dbl_build_iteration_l_data(), dbl_build_iteration_u_data(), dbl_dense_factor(), dbl_dump_matrix(), dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumDivUiTo, dbl_EGlpNumInitVar, dbl_EGlpNumIsGreaDbl, dbl_EGlpNumIsLess, dbl_EGlpNumMultTo, dbl_EGlpNumSet, dbl_EGlpNumToLf, dbl_elim(), dbl_find_pivot(), dbl_handle_singularity(), dbl_init_matrix(), dbl_oneLpNum, dbl_factor_work::dense_fract, dbl_factor_work::dense_min, dbl_factor_work::dim, E_FACTOR_BLOWUP, E_NO_PIVOT, E_SINGULAR_INTERNAL, EG_RETURN, dbl_factor_work::maxelem_factor, dbl_factor_work::maxelem_orig, dbl_factor_work::maxmult, MESSAGE, dbl_factor_work::minmult, dbl_factor_work::nstages, dbl_uc_info::nzcnt, dbl_factor_work::partial_cur, dbl_factor_work::partial_tol, dbl_ur_info::pivcnt, dbl_factor_work::stage, dbl_factor_work::uc_inf, and dbl_factor_work::ur_inf.
Referenced by dbl_ILLfactor().
Here is the call graph for this function:

| int dbl_ILLfactor_update | ( | dbl_factor_work * | f, | |
| dbl_svector * | a, | |||
| int | col_p, | |||
| int * | p_refact | |||
| ) |
Definition at line 5465 of file dbl_factor.c.
References dbl_uc_info::cbeg, CHECKRVALG, dbl_svector::coef, dbl_factor_work::crank, dbl_create_column(), dbl_delete_column(), dbl_EGlpNumToLf, dbl_factor_work::etacnt, dbl_factor_work::etamax, dbl_svector::indx, dbl_svector::nzcnt, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::rrank, TESTG, dbl_factor_work::uc_inf, dbl_factor_work::ucindx, dbl_factor_work::ur_inf, dbl_factor_work::urindx, and dbl_factor_work::work_coef.
Here is the call graph for this function:

| static int dbl_init_matrix | ( | dbl_factor_work * | f, | |
| int * | basis, | |||
| int * | cbeg, | |||
| int * | clen, | |||
| int * | in_ucindx, | |||
| double * | in_uccoef | |||
| ) | [static] |
Definition at line 1878 of file dbl_factor.c.
References CHECKRVALG, dbl_create_factor_space(), dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqZero, dbl_factor_work::dim, dbl_factor_work::fzero_tol, dbl_factor_work::max_k, dbl_ur_info::nzcnt, dbl_uc_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::uc_freebeg, dbl_factor_work::uc_inf, dbl_factor_work::uc_space, dbl_factor_work::ucindx, dbl_factor_work::ur_inf, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_ILLfactor_try().
Here is the call graph for this function:

| static void dbl_load_row | ( | dbl_factor_work * | f, | |
| int | r | |||
| ) | [static] |
Definition at line 722 of file dbl_factor.c.
References dbl_EGlpNumCopy, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::ur_inf, dbl_factor_work::urcoef, dbl_factor_work::urindx, dbl_factor_work::work_coef, and dbl_factor_work::work_indx.
Referenced by dbl_elim().
| static int dbl_make_lc_space | ( | dbl_factor_work * | f, | |
| int | space | |||
| ) | [static] |
Definition at line 982 of file dbl_factor.c.
References dbl_EGlpNumAllocArray, dbl_EGlpNumCopy, dbl_EGlpNumFreeArray, EG_RETURN, dbl_factor_work::grow_mul, ILL_IFFREE, ILL_SAFE_MALLOC, dbl_factor_work::lc_freebeg, dbl_factor_work::lc_space, dbl_factor_work::lccoef, dbl_factor_work::lcindx, and MESSAGE.
Referenced by dbl_elim().
| static int dbl_make_uc_space | ( | dbl_factor_work * | f, | |
| int | space | |||
| ) | [static] |
Definition at line 872 of file dbl_factor.c.
References dbl_uc_info::cbeg, dbl_EGlpNumAllocArray, dbl_EGlpNumCopy, dbl_EGlpNumFreeArray, dbl_factor_work::dim, EG_RETURN, dbl_factor_work::grow_mul, ILL_IFFREE, ILL_SAFE_MALLOC, MESSAGE, dbl_uc_info::nzcnt, dbl_factor_work::uc_freebeg, dbl_factor_work::uc_inf, dbl_factor_work::uc_space, dbl_factor_work::uccoef, dbl_factor_work::ucindx, and dbl_factor_work::ucrind.
Referenced by dbl_add_col_nz(), and dbl_expand_col().
| static int dbl_make_ur_space | ( | dbl_factor_work * | f, | |
| int | space | |||
| ) | [static] |
Definition at line 761 of file dbl_factor.c.
References dbl_EGlpNumAllocArray, dbl_EGlpNumCopy, dbl_EGlpNumFreeArray, dbl_factor_work::dim, EG_RETURN, dbl_factor_work::grow_mul, ILL_IFFREE, ILL_SAFE_MALLOC, MESSAGE, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::ur_freebeg, dbl_factor_work::ur_inf, dbl_factor_work::ur_space, dbl_factor_work::urcind, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_elim_row(), and dbl_expand_row().
| static int dbl_move_pivot | ( | dbl_factor_work * | f, | |
| int | rank_r | |||
| ) | [static] |
Definition at line 5437 of file dbl_factor.c.
References CHECKRVALG, dbl_factor_work::cperm, dbl_move_pivot_col(), dbl_move_pivot_row(), EG_RETURN, dbl_factor_work::rperm, and TESTG.
Here is the call graph for this function:

| static int dbl_move_pivot_col | ( | dbl_factor_work * | f, | |
| int | c, | |||
| int | r | |||
| ) | [static] |
Definition at line 5398 of file dbl_factor.c.
References dbl_uc_info::cbeg, dbl_EGLPNUM_SWAP, dbl_EGlpNumClearVar, dbl_EGlpNumInitVar, dbl_ILL_SWAP, E_UPDATE_SINGULAR_COL, dbl_uc_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::uc_inf, dbl_factor_work::uccoef, dbl_factor_work::ucindx, dbl_factor_work::ucrind, dbl_factor_work::ur_inf, and dbl_factor_work::urcind.
Referenced by dbl_move_pivot().
| static int dbl_move_pivot_row | ( | dbl_factor_work * | f, | |
| int | r, | |||
| int | c | |||
| ) | [static] |
Definition at line 5358 of file dbl_factor.c.
References __QS_SB_VERB, dbl_uc_info::cbeg, dbl_EGLPNUM_SWAP, dbl_EGlpNumClearVar, dbl_EGlpNumInitVar, dbl_ILL_SWAP, E_UPDATE_SINGULAR_ROW, MESSAGE, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::uc_inf, dbl_factor_work::ucrind, dbl_factor_work::ur_inf, dbl_factor_work::urcind, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_move_pivot().
| static void dbl_remove_col | ( | dbl_factor_work * | f, | |
| int | c | |||
| ) | [static] |
Definition at line 1216 of file dbl_factor.c.
References dbl_uc_info::cbeg, dbl_uc_info::next, dbl_uc_info::nzcnt, dbl_uc_info::prev, dbl_factor_work::uc_inf, and dbl_factor_work::ucindx.
Referenced by dbl_elim().
| static void dbl_remove_col_nz | ( | dbl_factor_work * | f, | |
| int | r, | |||
| int | c | |||
| ) | [static] |
Definition at line 1083 of file dbl_factor.c.
References dbl_uc_info::cbeg, dbl_set_col_nz(), dbl_uc_info::nzcnt, dbl_factor_work::uc_inf, and dbl_factor_work::ucindx.
Referenced by dbl_elim(), and dbl_elim_row().
Here is the call graph for this function:

| static void dbl_remove_row | ( | dbl_factor_work * | f, | |
| int | r | |||
| ) | [static] |
Definition at line 1243 of file dbl_factor.c.
References dbl_ur_info::next, dbl_ur_info::prev, and dbl_factor_work::ur_inf.
Referenced by dbl_elim().
| static void dbl_remove_row_nz | ( | dbl_factor_work * | f, | |
| int | r, | |||
| int | c | |||
| ) | [static] |
Definition at line 1108 of file dbl_factor.c.
References dbl_EGLPNUM_SWAP, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumInitVar, dbl_EGlpNumSetToMaxAbs, dbl_EGlpNumZero, dbl_ILL_SWAP, dbl_set_row_nz(), dbl_ur_info::pivcnt, dbl_ur_info::rbeg, dbl_factor_work::ur_inf, dbl_factor_work::urcoef, and dbl_factor_work::urindx.
Referenced by dbl_elim().
Here is the call graph for this function:

| static void dbl_serow_delay | ( | dbl_factor_work * | f, | |
| int | r, | |||
| int | rank_r | |||
| ) | [static] |
Definition at line 5171 of file dbl_factor.c.
References dbl_factor_work::crank, dbl_ur_info::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::rperm, dbl_factor_work::ur_inf, and dbl_factor_work::urindx.
Referenced by dbl_sparse_eliminate_row().
| static int dbl_serow_process | ( | dbl_factor_work * | f, | |
| int | r, | |||
| dbl_svector * | newr, | |||
| int | rank_r | |||
| ) | [static] |
Definition at line 5205 of file dbl_factor.c.
References dbl_svector::coef, dbl_factor_work::crank, dbl_EGlpNumClearVar, dbl_EGlpNumCopy, dbl_EGlpNumDivTo, dbl_EGlpNumInitVar, dbl_EGlpNumIsNeqZero, dbl_EGlpNumSetToMaxAbs, dbl_EGlpNumSubInnProdTo, dbl_EGlpNumZero, E_UPDATE_NOSPACE, dbl_factor_work::er_freebeg, dbl_factor_work::er_space, dbl_factor_work::ercoef, dbl_factor_work::erindx, dbl_factor_work::fzero_tol, dbl_svector::indx, dbl_factor_work::maxelem_cur, dbl_ur_info::nzcnt, dbl_svector::nzcnt, dbl_ur_info::rbeg, dbl_factor_work::rperm, dbl_factor_work::ur_inf, dbl_factor_work::urcoef, dbl_factor_work::urindx, and dbl_factor_work::work_coef.
Referenced by dbl_sparse_eliminate_row().
| static void dbl_set_col_nz | ( | dbl_factor_work * | f, | |
| int | c | |||
| ) | [static] |
Definition at line 1037 of file dbl_factor.c.
References dbl_factor_work::dim, dbl_factor_work::max_k, dbl_uc_info::next, dbl_uc_info::nzcnt, dbl_uc_info::prev, and dbl_factor_work::uc_inf.
Referenced by dbl_add_col_nz(), and dbl_remove_col_nz().
| static void dbl_set_row_nz | ( | dbl_factor_work * | f, | |
| int | r | |||
| ) | [static] |
Definition at line 1060 of file dbl_factor.c.
References dbl_factor_work::dim, dbl_factor_work::max_k, dbl_ur_info::next, dbl_ur_info::pivcnt, dbl_ur_info::prev, and dbl_factor_work::ur_inf.
Referenced by dbl_elim_row(), and dbl_remove_row_nz().
| static void dbl_shift_permutations | ( | dbl_factor_work * | f, | |
| int | rank_p, | |||
| int | rank_r | |||
| ) | [static] |
Definition at line 5018 of file dbl_factor.c.
References dbl_factor_work::cperm, dbl_factor_work::crank, dbl_factor_work::rperm, and dbl_factor_work::rrank.
| static int dbl_sparse_eliminate_row | ( | dbl_factor_work * | f, | |
| dbl_svector * | x, | |||
| int | row_p, | |||
| int | rank_r | |||
| ) | [static] |
Definition at line 5295 of file dbl_factor.c.
References CHECKRVALG, dbl_svector::coef, dbl_factor_work::crank, dbl_add_nonzero(), dbl_EGlpNumAllocArray, dbl_EGlpNumCopy, dbl_EGlpNumFreeArray, dbl_serow_delay(), dbl_serow_process(), dbl_factor_work::dim, EG_RETURN, ILL_IFFREE, ILL_SAFE_MALLOC, dbl_svector::indx, dbl_svector::nzcnt, dbl_factor_work::nzcnt_cur, dbl_factor_work::ur_inf, and dbl_factor_work::work_coef.
Here is the call graph for this function:

1.5.2