ampl_get_size — return the size of a given AMPL problem
info = ampl_get_size(asl)
a structure which handles the pointer to the problem
a list of dimensions related to the AMPL problem
The list of available fields is:
info('nbv') no. of linear binary variables
info('niv') no. of linear integer variables
info('nlc') total no. of nonlinear constraints
info('n_eqn') number of equality constraints or -1 if unknown (ampl prior to 19970627)
info('n_cc') total complementarity conditions
info('nlcc') nonlinear complementarity conditions
info('nlnc') no. of nonlinear network constraints
info('nlo') no. of nonlinear objectives
info('nlvb') no. of nonlinear variables in both constraints and objectives
info('nlvc') no. of nonlinear variables in constraints
info('nlvo') no. of nonlinear variables in objectives 'nlvc' and 'nlvo' include 'nlvb'
info('nlvbi') integer nonlinear variables in both constraints and objectives
info('nlvci') integer nonlinear vars just in constraints
info('nlvoi') integer nonlinear vars just in objectives
info('nwv') no. of (linear) network variables (arcs)
info('nzc') no. of nonzeros in constraints Jacobian
info('nzo') no. of nonzeros in all objective gradients
info('n_var') total no. of variables
info('n_con') total no. of constraints
info('n_obj') total no. of objectives
info('n_lcon') no. of logical constraints
[asl, x0, bl, bu, v, cl, cu] = ampl_init('demos/data/ASL/ch03.nl'); info = ampl_get_size(asl); printf('number of linear binary variables: %d\n',info('nbv')); printf('number of linear integer variables: %d\n',info('niv')); printf('total number of nonlinear constraints: %d\n',info('nlc')); printf('number of equality constraints or -1 if unknown (ampl prior to 19970627) : %d\n',info('n_eqn')); printf('total complementarity conditions: %d\n',info('n_cc')); printf('nonlinear complementarity conditions: %d\n',info('nlcc')); printf('number of nonlinear network constraints: %d\n',info('nlnc')); printf('number of nonlinear objectives: %d\n',info('nlo')); printf('number of nonlinear variables in both constraints and objectives: %d\n',info('nlvb')); printf('number of nonlinear variables in constraints: %d\n',info('nlvc')); printf('number of nonlinear variables in objectives nlvc and nlvo include nlvb: %d\n',info('nlvo')); printf('integer nonlinear variables in both constraints and objectives : %d\n',info('nlvbi')); printf('integer nonlinear vars just in constraints : %d\n',info('nlvci')); printf('integer nonlinear vars just in objectives: %d\n',info('nlvoi')); printf('number of (linear) network variables (arcs): %d\n',info('nwv')); printf('number of nonzeros in constraints Jacobian: %d\n',info('nzc')); printf('number of nonzeros in all objective gradients : %d\n',info('nzo')); printf('total number of variables: %d\n',info('n_var')); printf('total number of constraints: %d\n',info('n_con')); printf('total number of objectives: %d\n',info('n_obj')); printf('number of logical constraints: %d\n',info('n_lcon')); ampl_free(asl); // free the memory