NAG Library Routine Document
E05JCF
1 Purpose
E05JCF may be used to supply optional parameters to
E05JBF from an external file. The initialization routine
E05JAF must have been called before calling E05JCF.
2 Specification
INTEGER |
IOPTS, LCOMM, IFAIL |
REAL (KIND=nag_wp) |
COMM(LCOMM) |
|
3 Description
E05JCF may be used to supply values for optional parameters to
E05JBF. E05JCF reads an external file
and each
line of the file defines a single optional parameter. It is only necessary to supply values for those parameters whose values are to be different from their default values.
Each optional parameter is defined by a single character string,
of up to
characters,
consisting of one or more items. The items associated with a given optional parameter must be separated by spaces, or equals signs
. Alphabetic characters may be upper or lower case. The string
Static Limit = 100
is an example of a string used to set an optional parameter. For each optional parameter the string contains one or more of the following items:
– |
a mandatory keyword; |
– |
a phrase that qualifies the keyword; |
– |
a number that specifies an integer or real value. Such numbers may be up to contiguous characters. |
Blank strings and comments are ignored. A comment begins with an asterisk (*) and all subsequent characters in the string are regarded as part of the comment.
The implied data type (character, integer or real) of each value to set must match that expected by the corresponding optional parameter.
The file containing the optional parameters must start with
Begin and must finish with
End. An example of a valid options file is:
Begin * Example options file
Static Limit = 500
End
Optional parameter settings are preserved following a call to
E05JBF and so the keyword
Defaults is provided to allow you to reset all the optional parameters to their default values before a subsequent call to
E05JBF.
A complete list of optional parameters, their symbolic names and default values is given in
Section 11 in E05JBF.
4 References
None.
5 Parameters
- 1: IOPTS – INTEGERInput
On entry: the unit number of the option file to be read.
Constraint:
IOPTS is a valid unit open for reading.
- 2: COMM(LCOMM) – REAL (KIND=nag_wp) arrayCommunication Array
On exit:
COMM must not be altered between calls to any of the routines
E05JBF, E05JCF,
E05JDF,
E05JEF,
E05JFF,
E05JGF,
E05JHF,
E05JJF,
E05JKF and
E05JLF.
- 3: LCOMM – INTEGERInput
On entry: the dimension of the array
COMM as declared in the (sub)program from which E05JCF is called.
Constraint:
.
- 4: IFAIL – INTEGERInput/Output
-
On entry:
IFAIL must be set to
,
. If you are unfamiliar with this parameter you should refer to
Section 3.3 in the Essential Introduction for details.
For environments where it might be inappropriate to halt program execution when an error is detected, the value
is recommended. If the output of error messages is undesirable, then the value
is recommended. Otherwise, if you are not familiar with this parameter, the recommended value is
.
When the value is used it is essential to test the value of IFAIL on exit.
On exit:
unless the routine detects an error or a warning has been flagged (see
Section 6).
6 Error Indicators and Warnings
If on entry
or
, explanatory error messages are output on the current error message unit (as defined by
X04AAF).
Errors or warnings detected by the routine:
On entry, | , |
or | the initialization routine E05JAF has not been called. |
Could not read options file on unit
IOPTS. This may be because:
(a) |
IOPTS is not a valid unit number; |
(b) |
a file is not associated with unit IOPTS, or if it is, is unavailable for read access; |
(c) |
one or more lines of the options file are invalid. A keyword or keyword combination was not recognized; |
(d) |
Begin was found, but end-of-file was found before End was found; |
(e) |
end-of-file was found before Begin was found. |
In cases
(c) and
(d) all optional parameters that were set from the file before the error was encountered will remain set on exit.
An option value to be set was out of range with respect to the corresponding optional parameter given. See
Section 11 in E05JBF for allowable values of the optional parameters.
A supplied string associated with a numeric value could not be parsed. Check that all such strings specify valid integer or real values.
7 Accuracy
Not applicable.
E05JDF,
E05JEF,
E05JFF or
E05JGF may also be used to supply optional parameters to
E05JBF.
9 Example
This example finds the global minimum of the ‘peaks’ function in two dimensions
on the box
.
The function has several local minima and one global minimum in the given box. The global minimum is approximately located at , where the function value is approximately .
By specifying an initialization list via
LIST,
NUMPTS and
INITPT we can start
E05JBF looking close to one of the local minima and check that it really does move away from that point to one of the global minima.
More precisely, we choose
as our initial point (see
Section 9.3), and let the initialization list be
This example solves the optimization problem using some of the optional parameters described in
Section 11 in E05JBF.
9.1 Program Text
Program Text (e05jcfe.f90)
9.2 Program Data
Program Data (e05jcfe.d)
Program Options (e05jcfe.opt)
9.3 Program Results
Program Results (e05jcfe.r)