[ library(eplex) | Reference Manual | Alphabetic Index ]

# lp_set(++ParamName, ++Value)

Set a global parameter for the external solver.

ParamName
  Atom or structure
Value
  Integer, float, string or structure

## Description

Set a global parameter. The parameter names are the same as described in lp_get/2. For the timeout parameter, Value can be of any numeric type. Note that for the external solver's parameters (set via optimizer_param(Param)), the exact behaviour is solver dependent: if the solver has global parameters, this sets the value of the parameter globally; otherwise, this sets the default value of the parameter that would be assigned to a new problem. The setting is not undone on backtracking.

In addition, lp_set/2 is used to control the output from the external solver:

`lp_set(SolverChannel, +(Stream))`
  Send output from SolverChannel to the ECLiPSe I/O stream Stream.
`lp_set(SolverChannel, -(Stream))`
  Stop sending output from SolverChannel to the ECLiPSe I/O stream Stream.

SolverChannel is one of `result_channel, error_channel, warning_channel, log_channel`, and Stream is an ECLiPSe stream identifier (e.g. `output`, or the result of an open/3 operation).

By default, `error_channel` is directed to ECLiPSe's `error` stream, `warning_channel` to `warning_output` while `result_channel` and `log_channel` are suppressed. To see the output on these channels, do

`

       :- lp_set(result_channel, +output).
       :- lp_set(log_channel, +log_output).

`

Similarly, to create a log file: ``

       :- open('mylog.log', write, logstream), lp_set(log_channel, +logstream).

and to stop logging: `

       :- lp_set(log_channel, -logstream), close(logstream).

`

### Resatisfiable

no

## See Also

lp_get / 2