Sandals  v0.0.0
A C++ library for ODEs/DAEs integration
Loading...
Searching...
No Matches
Sandals.hh File Reference
#include <iostream>
#include <string>
#include <cmath>
#include <vector>
#include <map>
#include <memory>
#include <chrono>
#include <Eigen/Dense>
#include <Optimist.hh>
#include <Optimist/RootFinder/Newton.hh>
Include dependency graph for Sandals.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Sandals
 The namespace for the Sandals library.

Macros

#define INCLUDE_SANDALS_HH
#define SANDALS_ERROR(MSG)
#define SANDALS_ASSERT(COND, MSG)
#define SANDALS_WARNING(MSG)
#define SANDALS_ASSERT_WARNING(COND, MSG)
#define SANDALS_BASIC_CONSTANTS(Real)
#define SANDALS_DEFAULT_INTEGER_TYPE   int

Typedefs

using Sandals::Integer = SANDALS_DEFAULT_INTEGER_TYPE
 The Integer type as used for the API.

Macro Definition Documentation

◆ INCLUDE_SANDALS_HH

#define INCLUDE_SANDALS_HH

◆ SANDALS_ASSERT

#define SANDALS_ASSERT ( COND,
MSG )
Value:
if (!(COND)) \
{ \
SANDALS_ERROR(MSG); \
}

◆ SANDALS_ASSERT_WARNING

#define SANDALS_ASSERT_WARNING ( COND,
MSG )
Value:
if (!(COND)) \
{ \
SANDALS_WARNING(MSG); \
}

◆ SANDALS_BASIC_CONSTANTS

#define SANDALS_BASIC_CONSTANTS ( Real)
Value:
static constexpr Real EPSILON{std::numeric_limits<Real>::epsilon()}; \
static constexpr Real EPSILON_HIGH{1.0e-12}; \
static constexpr Real EPSILON_MEDIUM{1.0e-10}; \
static constexpr Real EPSILON_LOW{1.0e-08}; \
static constexpr Real INFTY{std::numeric_limits<Real>::infinity()}; \
static constexpr Real QUIET_NAN{std::numeric_limits<Real>::quiet_NaN()};

Not-a-number static constant value.

◆ SANDALS_DEFAULT_INTEGER_TYPE

#define SANDALS_DEFAULT_INTEGER_TYPE   int

◆ SANDALS_ERROR

#define SANDALS_ERROR ( MSG)
Value:
{ \
std::ostringstream os; \
os << MSG; \
throw std::runtime_error(os.str()); \
}

◆ SANDALS_WARNING

#define SANDALS_WARNING ( MSG)
Value:
{ \
std::cout << MSG << std::endl; \
}