e04 Chapter Introduction – a description of the Chapter and an overview of the algorithms available
| Function Name | Mark of Introduction | Purpose | 
| e04abc Example Text | 5 | nag_opt_one_var_no_deriv Minimizes a function of one variable, using function values only | 
| e04bbc Example Text | 5 | nag_opt_one_var_deriv Minimizes a function of one variable, requires first derivatives | 
| e04cbc Example Text Example Plot | 9 | nag_opt_simplex_easy Unconstrained minimum, Nelder–Mead simplex algorithm, using function values only | 
| e04dgc Example Text Example Options | 2 | nag_opt_conj_grad Unconstrained minimization using conjugate gradients | 
| e04fcc Example Text Example Options | 2 | nag_opt_lsq_no_deriv Unconstrained nonlinear least squares (no derivatives required) | 
| e04ffc Example Text | 26.1 | nag_opt_handle_solve_dfls Derivative free (DFO) solver for a nonlinear least squares objective function with bounded variables | 
| e04gbc Example Text Example Options | 2 | nag_opt_lsq_deriv Unconstrained nonlinear least squares (first derivatives required) | 
| e04hcc Example Text | 2 | nag_opt_check_deriv Derivative checker | 
| e04hdc Example Text | 5 | nag_opt_check_2nd_deriv Checks second derivatives of a user-defined function | 
| e04jcc Example Text | 23 | nag_opt_bounds_qa_no_deriv Bound constrained minimum, model-based algorithm, using function values only | 
| e04kbc Example Text Example Options | 2 | nag_opt_bounds_deriv Bound constrained nonlinear minimization (first derivatives required) | 
| e04lbc Example Text Example Options | 5 | nag_opt_bounds_2nd_deriv Solves bound constrained problems (first and second derivatives required) | 
| e04mfc Example Text Example Options | 2 | nag_opt_lp Linear programming | 
| e04mtc Example Text Example Data | 26.1 | nag_opt_handle_solve_lp_ipm Linear programming (LP), sparse, interior point method (IPM) | 
| e04mwc Example Text Example Data | 26.0 | nag_opt_miqp_mps_write Write MPS data file defining LP, QP, MILP or MIQP problem | 
| e04mxc Example Text Example Options | 24 | nag_opt_miqp_mps_read Read MPS data file defining LP, QP, MILP or MIQP problem | 
| e04myc | 5 | nag_opt_sparse_mps_free Free memory allocated by nag_opt_sparse_mps_read (e04mzc) | 
| e04mzc Example Text Example Data | 5 | nag_opt_sparse_mps_read Read MPSX data for sparse LP or QP problem from a file | 
| e04ncc Example Text Example Data | 5 | nag_opt_lin_lsq Solves linear least squares and convex quadratic programming problems (non-sparse) | 
| e04nfc Example Text Example Options | 2 | nag_opt_qp Quadratic programming | 
| e04nkc Example Text Example Data | 5 | nag_opt_sparse_convex_qp Solves sparse linear programming or convex quadratic programming problems | 
| e04npc | 8 | nag_opt_sparse_convex_qp_init Initialization function for nag_opt_sparse_convex_qp_solve (e04nqc) | 
| e04nqc Example Text Example Data | 8 | nag_opt_sparse_convex_qp_solve Linear programming (LP) or convex quadratic programming (QP), sparse, active-set method, recommended | 
| e04nrc Example Text | 8 | nag_opt_sparse_convex_qp_option_set_file Supply optional parameter values for nag_opt_sparse_convex_qp_solve (e04nqc) from external file | 
| e04nsc | 8 | nag_opt_sparse_convex_qp_option_set_string Set a single option for nag_opt_sparse_convex_qp_solve (e04nqc) from a character string | 
| e04ntc | 8 | nag_opt_sparse_convex_qp_option_set_integer Set a single option for nag_opt_sparse_convex_qp_solve (e04nqc) from an integer argument | 
| e04nuc | 8 | nag_opt_sparse_convex_qp_option_set_double Set a single option for nag_opt_sparse_convex_qp_solve (e04nqc) from a real argument | 
| e04nxc | 8 | nag_opt_sparse_convex_qp_option_get_integer Get the setting of an integer valued option of nag_opt_sparse_convex_qp_solve (e04nqc) | 
| e04nyc | 8 | nag_opt_sparse_convex_qp_option_get_double Get the setting of a real valued option of nag_opt_sparse_convex_qp_solve (e04nqc) | 
| e04pcc Example Text Example Data | 24 | nag_opt_bnd_lin_lsq Computes the least squares solution to a set of linear equations subject to fixed upper and lower bounds on the variables. An option is provided to return a minimal length solution if a solution is not unique | 
| e04rac | 26.0 | nag_opt_handle_init Initialization of a handle for the NAG optimization modelling suite for problems, such as, linear programming (LP), quadratic programming (QP), nonlinear programming (NLP), least squares (LSQ) problems, linear semidefinite programming (SDP) or SDP with bilinear matrix inequalities (BMI-SDP) | 
| e04rdc Example Text Example Options | 26.0 | nag_opt_sdp_read_sdpa A reader of sparse SDPA data files for linear SDP problems | 
| e04rec | 26.0 | nag_opt_handle_set_linobj Define a linear objective function to a problem initialized by nag_opt_handle_init (e04rac) | 
| e04rfc Example Text Example Data | 26.0 | nag_opt_handle_set_quadobj Define a linear or a quadratic objective function to a problem initialized by nag_opt_handle_init (e04rac) | 
| e04rgc | 26.0 | nag_opt_handle_set_nlnobj Define a nonlinear objective function to a problem initialized by nag_opt_handle_init (e04rac) | 
| e04rhc Example Text Example Data | 26.0 | nag_opt_handle_set_simplebounds Define bounds of variables of a problem initialized by nag_opt_handle_init (e04rac) | 
| e04rjc Example Text Example Options | 26.0 | nag_opt_handle_set_linconstr Define a block of linear constraints to a problem initialized by nag_opt_handle_init (e04rac) | 
| e04rkc | 26.0 | nag_opt_handle_set_nlnconstr Define a block of nonlinear constraints to a problem initialized by nag_opt_handle_init (e04rac) | 
| e04rlc | 26.0 | nag_opt_handle_set_nlnhess Define a structure of Hessian of the objective, constraints or the Lagrangian to a problem initialized by nag_opt_handle_init (e04rac) | 
| e04rmc Example Text | 26.1 | nag_opt_handle_set_nlnls Define a nonlinear least squares objective function to a problem initialized by nag_opt_handle_init (e04rac) | 
| e04rnc Example Text Example Data | 26.0 | nag_opt_handle_set_linmatineq Add one or more linear matrix inequality constraints to a problem initialized by nag_opt_handle_init (e04rac) | 
| e04rpc Example Text Example Data | 26.0 | nag_opt_handle_set_quadmatineq Define bilinear matrix terms to a problem initialized by nag_opt_handle_init (e04rac) | 
| e04rxc Example Text Example Data | 26.1 | nag_opt_handle_set_get_real Retrieve or write a piece of information in a problem handle initialized by nag_opt_handle_init (e04rac) | 
| e04ryc Example Text | 26.0 | nag_opt_handle_print Print information about a problem handle initialized by nag_opt_handle_init (e04rac) | 
| e04rzc | 26.0 | nag_opt_handle_free Destroy the problem handle initialized by nag_opt_handle_init (e04rac) and deallocate all the memory used | 
| e04stc Example Text | 26.0 | nag_opt_handle_solve_ipopt Run an interior point solver on a sparse nonlinear programming problem (NLP) initialized by nag_opt_handle_init (e04rac) and defined by other functions from the suite | 
| e04svc Example Text Example Data | 26.0 | nag_opt_handle_solve_pennon Run the Pennon solver on a compatible problem initialized by nag_opt_handle_init (e04rac) and defined by other functions from the suite, such as, semidefinite programming (SDP) and SDP with bilinear matrix inequalities (BMI) | 
| e04ucc Example Text Example Options | 4 | nag_opt_nlp Minimization with nonlinear constraints using a sequential QP method | 
| e04udc Example Text | 23 | nag_opt_nlp_revcomm_option_set_file Supply optional parameter values for nag_opt_nlp (e04ucc) or nag_opt_nlp_revcomm (e04ufc) from external file | 
| e04uec | 23 | nag_opt_nlp_revcomm_option_set_string Supply optional parameter values to nag_opt_nlp (e04ucc) or nag_opt_nlp_revcomm (e04ufc) from a character string | 
| e04ufc Example Text Example Data | 23 | nag_opt_nlp_revcomm Nonlinear programming (NLP), dense, active-set, SQP method, using function values and optionally first derivatives (reverse communication, comprehensive) | 
| e04ugc Example Text Example Options | 6 | nag_opt_nlp_sparse NLP problem (sparse) | 
| e04unc Example Text Example Data | 5 | nag_opt_nlin_lsq Solves nonlinear least squares problems using the sequential QP method | 
| e04vgc | 8 | nag_opt_sparse_nlp_init Initialization function for nag_opt_sparse_nlp_solve (e04vhc) | 
| e04vhc Example Text Example Data | 8 | nag_opt_sparse_nlp_solve Nonlinear programming (NLP), sparse, active-set SQP method, using function values and optionally first derivatives, recommended | 
| e04vjc Example Text Example Data | 8 | nag_opt_sparse_nlp_jacobian Determine the pattern of nonzeros in the Jacobian matrix for nag_opt_sparse_nlp_solve (e04vhc) | 
| e04vkc Example Text | 8 | nag_opt_sparse_nlp_option_set_file Supply optional parameter values for nag_opt_sparse_nlp_solve (e04vhc) from external file | 
| e04vlc | 8 | nag_opt_sparse_nlp_option_set_string Set a single option for nag_opt_sparse_nlp_solve (e04vhc) from a character string | 
| e04vmc | 8 | nag_opt_sparse_nlp_option_set_integer Set a single option for nag_opt_sparse_nlp_solve (e04vhc) from an integer argument | 
| e04vnc | 8 | nag_opt_sparse_nlp_option_set_double Set a single option for nag_opt_sparse_nlp_solve (e04vhc) from a real argument | 
| e04vrc | 8 | nag_opt_sparse_nlp_option_get_integer Get the setting of an integer valued option of nag_opt_sparse_nlp_solve (e04vhc) | 
| e04vsc | 8 | nag_opt_sparse_nlp_option_get_double Get the setting of a real valued option of nag_opt_sparse_nlp_solve (e04vhc) | 
| e04wbc | 23 | nag_opt_nlp_revcomm_init Initialization function for nag_opt_nlp_revcomm (e04ufc) | 
| e04wcc | 8 | nag_opt_nlp_init Initialization function for nag_opt_nlp_solve (e04wdc) | 
| e04wdc Example Text Example Data | 8 | nag_opt_nlp_solve Nonlinear programming (NLP), dense, active-set SQP method, using function values and optionally first derivatives | 
| e04wec Example Text | 8 | nag_opt_nlp_option_set_file Supply optional parameter values for nag_opt_nlp_solve (e04wdc) from external file | 
| e04wfc | 8 | nag_opt_nlp_option_set_string Set a single option for nag_opt_nlp_solve (e04wdc) from a character string | 
| e04wgc | 8 | nag_opt_nlp_option_set_integer Set a single option for nag_opt_nlp_solve (e04wdc) from an integer argument | 
| e04whc | 8 | nag_opt_nlp_option_set_double Set a single option for nag_opt_nlp_solve (e04wdc) from a real argument | 
| e04wkc | 8 | nag_opt_nlp_option_get_integer Get the setting of an integer valued option of nag_opt_nlp_solve (e04wdc) | 
| e04wlc | 8 | nag_opt_nlp_option_get_double Get the setting of a real valued option of nag_opt_nlp_solve (e04wdc) | 
| e04xac Example Text | 5 | nag_opt_estimate_deriv Computes an approximation to the gradient vector and/or the Hessian matrix | 
| e04xxc | 2 | nag_opt_init Initialization function for option setting | 
| e04xyc | 2 | nag_opt_read Read options from a text file | 
| e04xzc | 2 | nag_opt_free Memory freeing function for use with option setting | 
| e04yac Example Text Example Data | 2 | nag_opt_lsq_check_deriv Least squares derivative checker for use with nag_opt_lsq_deriv (e04gbc) | 
| e04ycc Example Text Example Data | 2 | nag_opt_lsq_covariance Covariance matrix for nonlinear least squares | 
| e04zmc | 26.0 | nag_opt_handle_opt_set Option setting routine for the solvers from the NAG optimization modelling suite | 
| e04znc | 26.0 | nag_opt_handle_opt_get Option getting routine for the solvers from the NAG optimization modelling suite | 
| e04zpc | 26.0 | nag_opt_handle_opt_set_file Option setting routine for the solvers from the NAG optimization modelling suite from external file |