Ticket #8837: user.hpp

File user.hpp, 2.8 KB (added by Paul McClellan <paulm@…>, 9 years ago)

user.hpp file for policies

Line 
1// Copyright John Maddock 2007.
2// Copyright Paul A. Bristow 2007.
3
4// Use, modification and distribution are subject to the
5// Boost Software License, Version 1.0.
6// (See accompanying file LICENSE_1_0.txt
7// or copy at http://www.boost.org/LICENSE_1_0.txt)
8
9#ifndef BOOST_MATH_TOOLS_USER_HPP
10#define BOOST_MATH_TOOLS_USER_HPP
11
12#ifdef _MSC_VER
13#pragma once
14#endif
15
16// This file can be modified by the user to change the default policies.
17// See "Changing the Policy Defaults" in documentation.
18
19// define this if the platform has no long double functions,
20// or if the long double versions have only double precision:
21//
22// #define BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS
23//
24// Performance tuning options:
25//
26// #define BOOST_MATH_POLY_METHOD 3
27// #define BOOST_MATH_RATIONAL_METHOD 3
28//
29// The maximum order of polynomial that will be evaluated
30// via an unrolled specialisation:
31//
32// #define BOOST_MATH_MAX_POLY_ORDER 17
33//
34// decide whether to store constants as integers or reals:
35//
36// #define BOOST_MATH_INT_TABLE_TYPE(RT, IT) IT
37
38//
39// Default policies follow:
40//
41// Domain errors:
42//
43// #define BOOST_MATH_DOMAIN_ERROR_POLICY throw_on_error
44#define BOOST_MATH_DOMAIN_ERROR_POLICY ignore_error
45//
46// Pole errors:
47//
48// #define BOOST_MATH_POLE_ERROR_POLICY throw_on_error
49#define BOOST_MATH_POLE_ERROR_POLICY ignore_error
50//
51// Overflow Errors:
52//
53// #define BOOST_MATH_OVERFLOW_ERROR_POLICY throw_on_error
54#define BOOST_MATH_OVERFLOW_ERROR_POLICY ignore_error
55//
56// Internal Evaluation Errors:
57//
58// #define BOOST_MATH_EVALUATION_ERROR_POLICY throw_on_error
59#define BOOST_MATH_EVALUATION_ERROR_POLICY ignore_error
60//
61// Underfow:
62//
63// #define BOOST_MATH_UNDERFLOW_ERROR_POLICY ignore_error
64//
65// Denorms:
66//
67// #define BOOST_MATH_DENORM_ERROR_POLICY ignore_error
68//
69// Max digits to use for internal calculations:
70//
71// #define BOOST_MATH_DIGITS10_POLICY 0
72//
73// Promote floats to doubles internally?
74//
75// #define BOOST_MATH_PROMOTE_FLOAT_POLICY true
76//
77// Promote doubles to long double internally:
78//
79// #define BOOST_MATH_PROMOTE_DOUBLE_POLICY true
80//
81// What do discrete quantiles return?
82//
83// #define BOOST_MATH_DISCRETE_QUANTILE_POLICY integer_round_outwards
84//
85// If a function is mathematically undefined
86// (for example the Cauchy distribution has no mean),
87// then do we stop the code from compiling?
88//
89// #define BOOST_MATH_ASSERT_UNDEFINED_POLICY true
90//
91// Maximum series iterstions permitted:
92//
93// #define BOOST_MATH_MAX_SERIES_ITERATION_POLICY 1000000
94//
95// Maximum root finding steps permitted:
96//
97// define BOOST_MATH_MAX_ROOT_ITERATION_POLICY 200
98
99
100// [PJM] Needed for students_t_ltq(), students_t_utq()
101#define BOOST_MATH_ROUNDING_ERROR_POLICY ignore_error
102
103#endif // BOOST_MATH_TOOLS_USER_HPP
104
105