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

lp_set(++ParamName, ++Value)

Set a global parameter for the external solver.
Atom or structure
Integer, float, string or structure


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).



See Also

lp_get / 2