13#ifndef INCLUDE_SANDALS_HH
14#define INCLUDE_SANDALS_HH
30#include <Optimist/RootFinder/Newton.hh>
34#define SANDALS_ERROR(MSG) \
36 std::ostringstream os; \
38 throw std::runtime_error(os.str()); \
44#define SANDALS_ASSERT(COND, MSG) \
52#ifndef SANDALS_WARNING
53#define SANDALS_WARNING(MSG) \
55 std::cout << MSG << std::endl; \
60#ifndef SANDALS_ASSERT_WARNING
61#define SANDALS_ASSERT_WARNING(COND, MSG) \
64 SANDALS_WARNING(MSG); \
69#ifndef SANDALS_BASIC_CONSTANTS
70#define SANDALS_BASIC_CONSTANTS(Real) \
71 static constexpr Real EPSILON{std::numeric_limits<Real>::epsilon()}; \
72 static constexpr Real EPSILON_HIGH{1.0e-12}; \
73 static constexpr Real EPSILON_MEDIUM{1.0e-10}; \
74 static constexpr Real EPSILON_LOW{1.0e-08}; \
75 static constexpr Real INFTY{std::numeric_limits<Real>::infinity()}; \
76 static constexpr Real QUIET_NAN{std::numeric_limits<Real>::quiet_NaN()};
79#ifndef SANDALS_DEFAULT_INTEGER_TYPE
80#define SANDALS_DEFAULT_INTEGER_TYPE int
#define SANDALS_DEFAULT_INTEGER_TYPE
Definition Sandals.hh:80
The namespace for the Sandals library.
Definition Sandals.hh:89
SANDALS_DEFAULT_INTEGER_TYPE Integer
The Integer type as used for the API.
Definition Sandals.hh:97