User configuration

A number of macros is provided for user configuration. Defining or undefining such macros triggers variations in some library functionality.

Under a Linux/Unix system, they are (un)set by configure; run

    ./configure --help
for a list of corresponding command-line options.

Under a Windows system, they must be (un)defined by editing the file <ql/userconfig.hpp> and commenting or uncommenting the relevant lines.

Such macros include:

    #define QL_ERROR_LINES
If defined (the default), file and line information is added to the error messages thrown by the library.

    #define QL_NEGATIVE_RATES

If defined, negative yield rates are allowed in a few places where they are currently forbidden. It is still not clear whether this is safe. The default is to undefine the macro.

    #define QL_EXTRA_SAFETY_CHECKS
If defined, extra run-time checks are added to a few functions. This can prevent their inlining and degrade performance. Undefined by default.

    #define QL_TODAYS_PAYMENTS
If undefined (the default,) payments are considered to be settled at the beginning of the day. Therefore, payments occurring at today's date are not included in the NPV of an instrument.

    #define QL_DISABLE_DEPRECATED
If defined, deprecated code will not be included in the library. Undefined by default.

    #define QL_USE_INDEXED_COUPON
If defined, indexed coupons (see the documentation) are used in floating legs. If undefined (the default), par coupons are used.

QuantLib.org
QuantLib
Hosted by
SourceForge.net Logo
Documentation generated by
doxygen