Version 0.1
#include <bcls.h>
Collaboration diagram for BCLS:

Data Fields | |
| void * | print_info |
| Transit pointer passed (untouched) to the routine print_hook. | |
| int(* | print_hook )(void *info, char *msg) |
| User-defined print-hook routine. | |
| void * | fault_info |
| Transit point passed (untouched) to the routine fault_hook. | |
| int(* | fault_hook )(void *info, char *msg) |
| User-defined fault-hook routine. | |
| int(* | Aprod )(int mode, int m, int n, int nix, int ix[], double x[], double y[], void *UsrWrk) |
| User-defined matrix-vector multiply routine. | |
| int(* | Usolve )(int mode, int m, int n, int nix, int ix[], double v[], double w[], void *UsrWrk) |
| User-defined preconditioning routine. | |
| int(* | CallBack )(BCLS *ls, void *UsrWrk) |
| User-defined callback function. | |
| double * | anorm |
| User-defined column weights. Length n. Optional. | |
| void * | UsrWrk |
| User workspace. Passed (untouched) to Aprod. | |
| int | print_level |
| Log verbosity. | |
| int | proj_search |
| Type of linesearch. | |
| int | newton_step |
| Method for computing Newton step. | |
| FILE * | minor_file |
| Output file for minor iteration log. Timers. | |
| BCLS_timer | stopwatch [4] |
| int | itnMaj |
| No. of major iterations. | |
| int | itnMajLim |
| Max no. of major iterations. | |
| int | itnMin |
| No. of cummulative minor (LSQR) iterations. | |
| int | itnMinLim |
| Max no. of minor (LSQR) iterations. | |
| int | nAprodT |
| No. of mat-vec calls, with len(ix) = n. | |
| int | nAprodF |
| No. of mat-vec calls, with 1 < len(ix) < n. | |
| int | nAprod1 |
| No. of mat-vec calls, with 1 = len(ix). | |
| int | nUsolve |
| No. of call to Usolve. | |
| int | m |
| Number of rows in A. | |
| int | n |
| Number of columns in A. | |
| int | mmax |
| Maximum no. of rows in A allocated for. | |
| int | nmax |
| Maximum no. of columns in A allocated for. | |
| int | unconstrained |
| Properties of the problem. 0 if constrained; 1 if unconstrained. | |
| double | damp |
| Set by user. Must be >= 0. | |
| double | damp_min |
| Only used when there's a linear term. | |
| double | damp_actual |
| Set in newton_step, used in aprod_free. | |
| int | exit |
| Exit condition. | |
| double | soln_obj |
| Objective value. | |
| double | soln_rNorm |
| Residual at solution. | |
| double | soln_dInf |
| Dual infeasibility of solution. | |
| int | soln_jInf |
| Variable with maximum dual infeasibility. | |
| int | soln_stat |
| Status of the solution. | |
| double | optTol |
| Optimality tolerance. | |
| double | conlim |
| Upper limit on cond. no. of [A; gamma I]. | |
| double | mu |
| Armijo sufficient decrease factor. | |
| double | backtrack |
| Reduction factor for Armijo linesearch. | |
| int | backtrack_limit |
| Limit on no. of backtracks in linesearch. | |
| double | eps |
| Machine precision. | |
| double | eps2 |
| eps ^ 0.50. | |
| double | eps3 |
| eps ^ 0.75. | |
| double | epsx |
| Tolerance for x "on bound". | |
| double | epsfixed |
| Tolerance for x considered "fixed". | |
| double | BigNum |
| Biggest number we'll allow in x. | |
| double * | x |
| x(n) solution (allocated by user). | |
| double * | b |
| b(m): right-hand-side vector (allocated by user). | |
| double * | c |
| c(n): linear term (allocated by user). | |
| double * | bl |
| bl(n): lower bounds (allocated by user). | |
| double * | bu |
| bu(n): upper bounds (allocated by user). | |
| double * | r |
| (max(n, m)) Residual. | |
| double * | g |
| (n) Gradient. | |
| double * | dx |
| (n) Search direction, full space. | |
| double * | dxFree |
| (n) Search direction, subspace. | |
| double * | aBreak |
| (n) Step to each breakpoint. | |
| int * | iBreak |
| (n) Indices of each breakpoint. | |
| int * | ix |
| (n) Indices of free variables. | |
| double * | wrk_u |
| (max(n, m)) Workspace. | |
| double * | wrk_v |
| (max(n, m)) Workspace. | |
| double * | wrk_w |
| (max(n, m)) Workspace. | |
| jmp_buf | jmp_env |
| Long jump environment. | |
Definition at line 47 of file bcls.h.
| void* BCLS::print_info |
Transit pointer passed (untouched) to the routine print_hook.
Definition at line 50 of file bcls.h.
Referenced by bcls_init_prob(), bcls_print(), and bcls_set_print_hook().
| int(* BCLS::print_hook)(void *info, char *msg) |
User-defined print-hook routine.
Referenced by bcls_init_prob(), bcls_print(), and bcls_set_print_hook().
| void* BCLS::fault_info |
Transit point passed (untouched) to the routine fault_hook.
Definition at line 56 of file bcls.h.
Referenced by bcls_fault(), bcls_init_prob(), and bcls_set_fault_hook().
| int(* BCLS::fault_hook)(void *info, char *msg) |
User-defined fault-hook routine.
Referenced by bcls_fault(), bcls_init_prob(), and bcls_set_fault_hook().
User-defined matrix-vector multiply routine.
Referenced by bcls_aprod(), bcls_init_prob(), and bcls_set_problem_data().
| int(* BCLS::Usolve)(int mode, int m, int n, int nix, int ix[], double v[], double w[], void *UsrWrk) |
User-defined preconditioning routine.
Referenced by aprod_free_lsqr(), bcls_init_prob(), bcls_newton_step(), bcls_print_params(), bcls_set_usolve(), bcls_solve_prob(), and bcls_usolve().
| int(* BCLS::CallBack)(BCLS *ls, void *UsrWrk) |
User-defined callback function.
Referenced by bcls_callback(), and bcls_init_prob().
| double* BCLS::anorm |
User-defined column weights. Length n. Optional.
Definition at line 81 of file bcls.h.
Referenced by bcls_init_prob(), bcls_print_params(), bcls_set_anorm(), bcls_solve_prob(), and hashls().
| void* BCLS::UsrWrk |
User workspace. Passed (untouched) to Aprod.
Definition at line 85 of file bcls.h.
Referenced by bcls_aprod(), bcls_callback(), bcls_init_prob(), bcls_set_problem_data(), and bcls_usolve().
Log verbosity.
Definition at line 88 of file bcls.h.
Referenced by bcls_examine_column_scales(), bcls_init_prob(), bcls_print(), and bcls_proj_search().
Type of linesearch.
Definition at line 89 of file bcls.h.
Referenced by bcls_init_prob(), bcls_print_params(), and bcls_solve_prob().
Method for computing Newton step.
Definition at line 92 of file bcls.h.
Referenced by bcls_init_prob(), bcls_print_params(), and bcls_solve_prob().
| FILE* BCLS::minor_file |
Output file for minor iteration log. Timers.
Definition at line 95 of file bcls.h.
Referenced by bcls_init_prob(), and bcls_newton_step_cgls().
Definition at line 98 of file bcls.h.
Referenced by bcls_aprod(), bcls_init_prob(), bcls_newton_step_lsqr(), bcls_solve_prob(), and bcls_usolve().
| int BCLS::itnMaj |
No. of major iterations.
Definition at line 105 of file bcls.h.
Referenced by bcls_init_prob(), bcls_solve_prob(), and bcls_solver().
| int BCLS::itnMajLim |
Max no. of major iterations.
Definition at line 106 of file bcls.h.
Referenced by bcls_init_prob(), and bcls_print_params().
| int BCLS::itnMin |
No. of cummulative minor (LSQR) iterations.
Definition at line 107 of file bcls.h.
Referenced by bcls_init_prob(), bcls_solve_prob(), and bcls_solver().
| int BCLS::itnMinLim |
Max no. of minor (LSQR) iterations.
Definition at line 108 of file bcls.h.
Referenced by bcls_init_prob(), and bcls_print_params().
| int BCLS::nAprodT |
No. of mat-vec calls, with len(ix) = n.
Definition at line 109 of file bcls.h.
Referenced by bcls_aprod(), bcls_init_prob(), and bcls_solve_prob().
| int BCLS::nAprodF |
No. of mat-vec calls, with 1 < len(ix) < n.
Definition at line 110 of file bcls.h.
Referenced by bcls_aprod(), and bcls_init_prob().
| int BCLS::nAprod1 |
No. of mat-vec calls, with 1 = len(ix).
Definition at line 111 of file bcls.h.
Referenced by bcls_aprod(), bcls_init_prob(), and bcls_solve_prob().
| int BCLS::nUsolve |
No. of call to Usolve.
Definition at line 112 of file bcls.h.
Referenced by bcls_init_prob(), bcls_solve_prob(), and bcls_usolve().
| int BCLS::m |
Number of rows in A.
Definition at line 115 of file bcls.h.
Referenced by aprod_free_lsqr(), bcls_aprod(), bcls_init_prob(), bcls_print_params(), bcls_set_problem_data(), bcls_solve_prob(), bcls_usolve(), and hashls().
| int BCLS::n |
Number of columns in A.
Definition at line 118 of file bcls.h.
Referenced by bcls_aprod(), bcls_examine_column_scales(), bcls_init_prob(), bcls_print_params(), bcls_set_problem_data(), bcls_solve_prob(), bcls_usolve(), and hashls().
| int BCLS::mmax |
Maximum no. of rows in A allocated for.
Definition at line 121 of file bcls.h.
Referenced by bcls_create_prob(), and bcls_init_prob().
| int BCLS::nmax |
Maximum no. of columns in A allocated for.
Definition at line 124 of file bcls.h.
Referenced by bcls_create_prob(), and bcls_init_prob().
Properties of the problem. 0 if constrained; 1 if unconstrained.
Definition at line 127 of file bcls.h.
Referenced by bcls_examine_bnds(), and bcls_init_prob().
| double BCLS::damp |
Set by user. Must be >= 0.
Definition at line 130 of file bcls.h.
Referenced by bcls_init_prob(), bcls_print_params(), bcls_proj_backtrack(), bcls_proj_search(), bcls_set_problem_data(), and bcls_solver().
| double BCLS::damp_min |
Only used when there's a linear term.
Definition at line 131 of file bcls.h.
Referenced by bcls_init_prob(), and bcls_newton_step_lsqr().
| double BCLS::damp_actual |
Set in newton_step, used in aprod_free.
Definition at line 132 of file bcls.h.
Referenced by aprod_free_lsqr(), and bcls_newton_step_lsqr().
| int BCLS::exit |
Exit condition.
Definition at line 135 of file bcls.h.
Referenced by bcls_init_prob(), and bcls_solve_prob().
| double BCLS::soln_obj |
| double BCLS::soln_rNorm |
| double BCLS::soln_dInf |
Dual infeasibility of solution.
Definition at line 150 of file bcls.h.
Referenced by bcls_init_prob(), and bcls_solve_prob().
| int BCLS::soln_jInf |
Variable with maximum dual infeasibility.
Definition at line 151 of file bcls.h.
Referenced by bcls_init_prob(), and bcls_solve_prob().
| int BCLS::soln_stat |
| double BCLS::optTol |
Optimality tolerance.
Definition at line 157 of file bcls.h.
Referenced by bcls_init_prob(), bcls_print_params(), and bcls_solver().
| double BCLS::conlim |
Upper limit on cond. no. of [A; gamma I].
Definition at line 158 of file bcls.h.
Referenced by bcls_init_prob().
| double BCLS::mu |
Armijo sufficient decrease factor.
Definition at line 159 of file bcls.h.
Referenced by bcls_init_prob(), and bcls_proj_backtrack().
| double BCLS::backtrack |
Reduction factor for Armijo linesearch.
Definition at line 160 of file bcls.h.
Referenced by bcls_init_prob(), and bcls_proj_backtrack().
Limit on no. of backtracks in linesearch.
Definition at line 161 of file bcls.h.
Referenced by bcls_init_prob(), and bcls_proj_backtrack().
| double BCLS::eps |
Machine precision.
Definition at line 164 of file bcls.h.
Referenced by bcls_free_vars(), bcls_init_prob(), bcls_proj_backtrack(), bcls_proj_search(), and bcls_solve_prob().
| double BCLS::eps2 |
| double BCLS::eps3 |
| double BCLS::epsx |
Tolerance for x "on bound".
Definition at line 167 of file bcls.h.
Referenced by bcls_free_vars(), bcls_init_prob(), bcls_proj_backtrack(), and bcls_proj_search().
| double BCLS::epsfixed |
Tolerance for x considered "fixed".
Definition at line 168 of file bcls.h.
Referenced by bcls_examine_bnds(), bcls_init_prob(), and bcls_proj_search().
| double BCLS::BigNum |
Biggest number we'll allow in x.
Definition at line 169 of file bcls.h.
Referenced by bcls_examine_bnds(), bcls_init_prob(), bcls_proj_backtrack(), and bcls_proj_search().
| double* BCLS::x |
x(n) solution (allocated by user).
Definition at line 173 of file bcls.h.
Referenced by bcls_set_problem_data(), bcls_solve_prob(), and hashls().
| double* BCLS::b |
b(m): right-hand-side vector (allocated by user).
Definition at line 176 of file bcls.h.
Referenced by bcls_set_problem_data(), bcls_solve_prob(), and hashls().
| double* BCLS::c |
c(n): linear term (allocated by user).
Definition at line 179 of file bcls.h.
Referenced by bcls_print_params(), bcls_set_problem_data(), bcls_solve_prob(), and hashls().
| double* BCLS::bl |
bl(n): lower bounds (allocated by user).
Definition at line 182 of file bcls.h.
Referenced by bcls_set_problem_data(), bcls_solve_prob(), and hashls().
| double* BCLS::bu |
bu(n): upper bounds (allocated by user).
Definition at line 185 of file bcls.h.
Referenced by bcls_set_problem_data(), bcls_solve_prob(), and hashls().
| double* BCLS::r |
(max(n, m)) Residual.
Definition at line 188 of file bcls.h.
Referenced by bcls_create_prob(), bcls_free_prob(), bcls_solve_prob(), and hashls().
| double* BCLS::g |
(n) Gradient.
Definition at line 189 of file bcls.h.
Referenced by bcls_create_prob(), bcls_free_prob(), bcls_solve_prob(), and hashls().
| double* BCLS::dx |
(n) Search direction, full space.
Definition at line 190 of file bcls.h.
Referenced by aprod_free(), aprod_free_lsqr(), bcls_create_prob(), bcls_free_prob(), bcls_newton_step(), bcls_solve_prob(), and hashls().
| double* BCLS::dxFree |
(n) Search direction, subspace.
Definition at line 191 of file bcls.h.
Referenced by bcls_create_prob(), bcls_free_prob(), bcls_solve_prob(), and hashls().
| double* BCLS::aBreak |
(n) Step to each breakpoint.
Definition at line 192 of file bcls.h.
Referenced by bcls_create_prob(), bcls_free_prob(), bcls_solve_prob(), and hashls().
| int* BCLS::iBreak |
(n) Indices of each breakpoint.
Definition at line 193 of file bcls.h.
Referenced by bcls_create_prob(), bcls_free_prob(), bcls_solve_prob(), and hashls().
| int* BCLS::ix |
(n) Indices of free variables.
Definition at line 194 of file bcls.h.
Referenced by aprod_free(), aprod_free_lsqr(), bcls_compute_anorm(), bcls_create_prob(), bcls_free_prob(), bcls_solve_prob(), and hashls().
| double* BCLS::wrk_u |
(max(n, m)) Workspace.
Definition at line 195 of file bcls.h.
Referenced by aprod_free_lsqr(), bcls_compute_anorm(), bcls_create_prob(), bcls_free_prob(), bcls_newton_step_cgls(), and hashls().
| double* BCLS::wrk_v |
(max(n, m)) Workspace.
Definition at line 196 of file bcls.h.
Referenced by bcls_compute_anorm(), bcls_create_prob(), bcls_free_prob(), bcls_newton_step_cgls(), bcls_newton_step_lsqr(), and hashls().
| double* BCLS::wrk_w |
(max(n, m)) Workspace.
Definition at line 197 of file bcls.h.
Referenced by bcls_create_prob(), bcls_free_prob(), bcls_newton_step_cgls(), and hashls().
| jmp_buf BCLS::jmp_env |
Long jump environment.
Definition at line 200 of file bcls.h.
Referenced by bcls_aprod(), bcls_solve_prob(), and bcls_usolve().
Generated on Sun Mar 4 22:50:03 2007 by Doxygen 1.5.1