NAG CL Interface
h02bvc (ilp_​print)

Settings help

CL Name Style:


1 Purpose

h02bvc frees the memory allocated by h02buc.

2 Specification

#include <nag.h>
void  h02bvc (double **a, double **bl, double **bu, Nag_Boolean **intvar, double **cvec, double **x)
The function may be called by the names: h02bvc, nag_mip_ilp_print or nag_ip_mps_free.

3 Description

h02bvc should be used in conjunction with h02buc, which reads data for an integer programming problem from an MPSX file, allocates several arrays, and populates them with the data contained in the file. h02bvc is a utility provided for the convenient freeing of this memory. It should be called in order to conserve memory which is no longer required, e.g., following a call to h02bbc (which may be used to solve the problem defined by the MPSX file). Any memory not freed will, of course, be freed when your program terminates.
h02bvc can be used to free a subset of the allocated arrays by passing null pointers for those arguments which you do not wish to free.

4 References

None.

5 Arguments

1: a double ** Input/Output
On entry: the nonzeros of the constraint matrix A , to be freed. If a or *a is a null pointer, no action is taken.
On exit: if a is not null, *a is set to the null pointer.
2: bl double ** Input/Output
On entry: the lower bounds of the problem variables and general constraints, to be freed. If bl or *bl is a null pointer, no action is taken.
On exit: if bl is not null, *bl is set to the null pointer.
3: bu double ** Input/Output
On entry: the upper bounds of the problem variables and general constraints, to be freed. If bu or *bu is a null pointer, no action is taken.
On exit: if bu is not null, *bu is set to the null pointer.
4: intvar Nag_Boolean ** Input/Output
On entry: the indicators as to which are the integer variables in the problem, to be freed. If intvar or *intvar is a null pointer, no action is taken.
On exit: if intvar is not null, *intvar is set to the null pointer.
5: cvec double ** Input/Output
On entry: the coefficients, c , of the linear term of the objective function, to be freed. If cvec or *cvec is a null pointer, no action is taken.
On exit: if cvec is not null, *cvec is set to the null pointer.
6: x double ** Input/Output
On entry: a set of initial values for the variables, to be freed. If x or *x is a null pointer no action is taken.
On exit: if x is not null, *x is set to the null pointer.

6 Error Indicators and Warnings

None.

7 Accuracy

Not applicable.

8 Parallelism and Performance

Background information to multithreading can be found in the Multithreading documentation.
h02bvc is not threaded in any implementation.

9 Further Comments

In addition to allocating the memory freed by this function, h02buc also allocates memory to the crnames member of the options structure (if the structure is supplied as an argument). The function h02xzc should be used to free this memory. You should not use the standard C function free() for this purpose.

10 Example

For an example of the use of h02bvc see the documentation for h02buc.