C++ Mathematical Expression Toolkit (ExprTk) release
Loading...
Searching...
No Matches
Namespaces | Classes | Functions
real Namespace Reference

Namespaces

namespace  details
 

Classes

struct  type
 

Functions

type operator+ (const type r0, const type r1)
 
type operator- (const type r0, const type r1)
 
type operator* (const type r0, const type r1)
 
type operator/ (const type r0, const type r1)
 
bool operator< (const type r0, const type r1)
 
bool operator> (const type r0, const type r1)
 
bool operator<= (const type r0, const type r1)
 
bool operator>= (const type r0, const type r1)
 
type operator+ (const double r0, const type r1)
 
type operator- (const double r0, const type r1)
 
type operator* (const double r0, const type r1)
 
type operator/ (const double r0, const type r1)
 
bool operator< (const double r0, const type r1)
 
bool operator> (const double r0, const type r1)
 
bool operator<= (const double r0, const type r1)
 
bool operator>= (const double r0, const type r1)
 
bool operator== (const double r0, const type r1)
 
bool operator!= (const double r0, const type r1)
 
type operator+ (const type r0, const double r1)
 
type operator- (const type r0, const double r1)
 
type operator* (const type r0, const double r1)
 
type operator/ (const type r0, const double r1)
 
bool operator< (const type r0, const double r1)
 
bool operator> (const type r0, const double r1)
 
bool operator<= (const type r0, const double r1)
 
bool operator>= (const type r0, const double r1)
 
bool operator== (const type r0, const double r1)
 
bool operator!= (const type r0, const double r1)
 
type operator+ (const float r0, const type r1)
 
type operator- (const float r0, const type r1)
 
type operator* (const float r0, const type r1)
 
type operator/ (const float r0, const type r1)
 
bool operator< (const float r0, const type r1)
 
bool operator> (const float r0, const type r1)
 
bool operator<= (const float r0, const type r1)
 
bool operator>= (const float r0, const type r1)
 
bool operator== (const float r0, const type r1)
 
bool operator!= (const float r0, const type r1)
 
type operator+ (const type r0, const float r1)
 
type operator- (const type r0, const float r1)
 
type operator* (const type r0, const float r1)
 
type operator/ (const type r0, const float r1)
 
bool operator< (const type r0, const float r1)
 
bool operator> (const type r0, const float r1)
 
bool operator<= (const type r0, const float r1)
 
bool operator>= (const type r0, const float r1)
 
bool operator== (const type r0, const float r1)
 
bool operator!= (const type r0, const float r1)
 
type operator+ (const int r0, const type r1)
 
type operator- (const int r0, const type r1)
 
type operator* (const int r0, const type r1)
 
type operator/ (const int r0, const type r1)
 
bool operator< (const int r0, const type r1)
 
bool operator> (const int r0, const type r1)
 
bool operator<= (const int r0, const type r1)
 
bool operator>= (const int r0, const type r1)
 
bool operator== (const int r0, const type r1)
 
bool operator!= (const int r0, const type r1)
 
type operator+ (const type r0, const int r1)
 
type operator- (const type r0, const int r1)
 
type operator* (const type r0, const int r1)
 
type operator/ (const type r0, const int r1)
 
bool operator< (const type r0, const int r1)
 
bool operator> (const type r0, const int r1)
 
bool operator<= (const type r0, const int r1)
 
bool operator>= (const type r0, const int r1)
 
bool operator== (const type r0, const int r1)
 
bool operator!= (const type r0, const int r1)
 
type operator+ (const long long r0, const type r1)
 
type operator- (const long long r0, const type r1)
 
type operator* (const long long r0, const type r1)
 
type operator/ (const long long r0, const type r1)
 
bool operator< (const long long r0, const type r1)
 
bool operator> (const long long r0, const type r1)
 
bool operator<= (const long long r0, const type r1)
 
bool operator>= (const long long r0, const type r1)
 
bool operator== (const long long r0, const type r1)
 
bool operator!= (const long long r0, const type r1)
 
type operator+ (const type r0, const long long r1)
 
type operator- (const type r0, const long long r1)
 
type operator* (const type r0, const long long r1)
 
type operator/ (const type r0, const long long r1)
 
bool operator< (const type r0, const long long r1)
 
bool operator> (const type r0, const long long r1)
 
bool operator<= (const type r0, const long long r1)
 
bool operator>= (const type r0, const long long r1)
 
bool operator== (const type r0, const long long r1)
 
bool operator!= (const type r0, const long long r1)
 
type operator+ (const unsigned int r0, const type r1)
 
type operator- (const unsigned int r0, const type r1)
 
type operator* (const unsigned int r0, const type r1)
 
type operator/ (const unsigned int r0, const type r1)
 
bool operator< (const unsigned int r0, const type r1)
 
bool operator> (const unsigned int r0, const type r1)
 
bool operator<= (const unsigned int r0, const type r1)
 
bool operator>= (const unsigned int r0, const type r1)
 
bool operator== (const unsigned int r0, const type r1)
 
bool operator!= (const unsigned int r0, const type r1)
 
type operator+ (const type r0, const unsigned int r1)
 
type operator- (const type r0, const unsigned int r1)
 
type operator* (const type r0, const unsigned int r1)
 
type operator/ (const type r0, const unsigned int r1)
 
bool operator< (const type r0, const unsigned int r1)
 
bool operator> (const type r0, const unsigned int r1)
 
bool operator<= (const type r0, const unsigned int r1)
 
bool operator>= (const type r0, const unsigned int r1)
 
bool operator== (const type r0, const unsigned int r1)
 
bool operator!= (const type r0, const unsigned int r1)
 
type operator+ (const unsigned long long r0, const type r1)
 
type operator- (const unsigned long long r0, const type r1)
 
type operator* (const unsigned long long r0, const type r1)
 
type operator/ (const unsigned long long r0, const type r1)
 
bool operator< (const unsigned long long r0, const type r1)
 
bool operator> (const unsigned long long r0, const type r1)
 
bool operator<= (const unsigned long long r0, const type r1)
 
bool operator>= (const unsigned long long r0, const type r1)
 
bool operator== (const unsigned long long r0, const type r1)
 
bool operator!= (const unsigned long long r0, const type r1)
 
type operator+ (const type r0, const unsigned long long r1)
 
type operator- (const type r0, const unsigned long long r1)
 
type operator* (const type r0, const unsigned long long r1)
 
type operator/ (const type r0, const unsigned long long r1)
 
bool operator< (const type r0, const unsigned long long r1)
 
bool operator> (const type r0, const unsigned long long r1)
 
bool operator<= (const type r0, const unsigned long long r1)
 
bool operator>= (const type r0, const unsigned long long r1)
 
bool operator== (const type r0, const unsigned long long r1)
 
bool operator!= (const type r0, const unsigned long long r1)
 
type operator+ (const unsigned long int r0, const type r1)
 
type operator- (const unsigned long int r0, const type r1)
 
type operator* (const unsigned long int r0, const type r1)
 
type operator/ (const unsigned long int r0, const type r1)
 
bool operator< (const unsigned long int r0, const type r1)
 
bool operator> (const unsigned long int r0, const type r1)
 
bool operator<= (const unsigned long int r0, const type r1)
 
bool operator>= (const unsigned long int r0, const type r1)
 
bool operator== (const unsigned long int r0, const type r1)
 
bool operator!= (const unsigned long int r0, const type r1)
 
type operator+ (const type r0, const unsigned long int r1)
 
type operator- (const type r0, const unsigned long int r1)
 
type operator* (const type r0, const unsigned long int r1)
 
type operator/ (const type r0, const unsigned long int r1)
 
bool operator< (const type r0, const unsigned long int r1)
 
bool operator> (const type r0, const unsigned long int r1)
 
bool operator<= (const type r0, const unsigned long int r1)
 
bool operator>= (const type r0, const unsigned long int r1)
 
bool operator== (const type r0, const unsigned long int r1)
 
bool operator!= (const type r0, const unsigned long int r1)
 
type abs (const type v)
 
type acos (const type v)
 
type acosh (const type v)
 
type asin (const type v)
 
type asinh (const type v)
 
type atan (const type v)
 
type atanh (const type v)
 
type ceil (const type v)
 
type cos (const type v)
 
type cosh (const type v)
 
type exp (const type v)
 
type floor (const type v)
 
type log (const type v)
 
type log10 (const type v)
 
type log2 (const type v)
 
type neg (const type v)
 
type pos (const type v)
 
type sin (const type v)
 
type sinh (const type v)
 
type sqrt (const type v)
 
type tan (const type v)
 
type tanh (const type v)
 
type cot (const type v)
 
type sec (const type v)
 
type csc (const type v)
 
type r2d (const type v)
 
type d2r (const type v)
 
type d2g (const type v)
 
type g2d (const type v)
 
type notl (const type v)
 
type frac (const type v)
 
type trunc (const type v)
 
type modulus (const type v0, const type v1)
 
type pow (const type v0, const type v1)
 
type logn (const type v0, const type v1)
 
type root (const type v0, const type v1)
 
type atan2 (const type v0, const type v1)
 
type max (const type v0, const type v1)
 
type min (const type v0, const type v1)
 
bool is_true (const type v)
 
bool is_false (const type v)
 
type equal (const type v0x, const type v1x)
 
type expm1 (const type vx)
 
type nequal (const type v0, const type v1)
 
type log1p (const type v)
 
type round (const type v)
 
type roundn (const type v0, const type v1)
 
type hypot (const type v0, const type v1)
 
type shr (const type v0, const type v1)
 
type shl (const type v0, const type v1)
 
type sgn (const type v)
 
type nand (const type v0, const type &v1)
 
type nor (const type v0, const type &v1)
 
type xnor (const type v0, const type &v1)
 
type erf (type v)
 
type erfc (type v)
 

Function Documentation

◆ abs()

type real::abs ( const type  v)
inline

Definition at line 187 of file real_type.hpp.

187{ return std::abs (v.d_); }
double d_
Definition real_type.hpp:82

References real::type::d_.

Referenced by exprtk::details::numeric::details::abs_impl(), equal(), erf(), expm1(), log1p(), nequal(), and not_equal_impl().

Here is the caller graph for this function:

◆ acos()

type real::acos ( const type  v)
inline

Definition at line 188 of file real_type.hpp.

188{ return std::acos (v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::acos_impl().

Here is the caller graph for this function:

◆ acosh()

type real::acosh ( const type  v)
inline

Definition at line 189 of file real_type.hpp.

189{ return std::acosh(v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::acosh_impl().

Here is the caller graph for this function:

◆ asin()

type real::asin ( const type  v)
inline

Definition at line 190 of file real_type.hpp.

190{ return std::asin (v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::asin_impl().

Here is the caller graph for this function:

◆ asinh()

type real::asinh ( const type  v)
inline

Definition at line 191 of file real_type.hpp.

191{ return std::asinh(v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::asinh_impl().

Here is the caller graph for this function:

◆ atan()

type real::atan ( const type  v)
inline

Definition at line 192 of file real_type.hpp.

192{ return std::atan (v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::atan_impl().

Here is the caller graph for this function:

◆ atan2()

type real::atan2 ( const type  v0,
const type  v1 
)
inline

Definition at line 224 of file real_type.hpp.

224{ return std::atan2(v0.d_,v1.d_); }

References real::type::d_.

◆ atanh()

type real::atanh ( const type  v)
inline

Definition at line 193 of file real_type.hpp.

193{ return std::atanh(v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::atanh_impl().

Here is the caller graph for this function:

◆ ceil()

type real::ceil ( const type  v)
inline

Definition at line 194 of file real_type.hpp.

194{ return std::ceil (v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::ceil_impl(), round(), and roundn().

Here is the caller graph for this function:

◆ cos()

type real::cos ( const type  v)
inline

Definition at line 195 of file real_type.hpp.

195{ return std::cos (v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::cos_impl(), cosine_deg< T >::operator()(), run_test04(), run_test05(), and run_test07().

Here is the caller graph for this function:

◆ cosh()

type real::cosh ( const type  v)
inline

Definition at line 196 of file real_type.hpp.

196{ return std::cosh (v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::cosh_impl().

Here is the caller graph for this function:

◆ cot()

type real::cot ( const type  v)
inline

Definition at line 209 of file real_type.hpp.

209{ return type(1) / std::tan(v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::cot_impl().

Here is the caller graph for this function:

◆ csc()

type real::csc ( const type  v)
inline

Definition at line 211 of file real_type.hpp.

211{ return type(1) / std::sin(v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::csc_impl().

Here is the caller graph for this function:

◆ d2g()

type real::d2g ( const type  v)
inline

Definition at line 214 of file real_type.hpp.

214{ return (v.d_ * type(10.0/9.0)); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::d2g_impl().

Here is the caller graph for this function:

◆ d2r()

type real::d2r ( const type  v)
inline

Definition at line 213 of file real_type.hpp.

213{ return (v.d_ * type(real::details::constant::pi_180)); }
static const double pi_180

References real::type::d_, and real::details::constant::pi_180.

Referenced by exprtk::details::numeric::details::d2r_impl().

Here is the caller graph for this function:

◆ equal()

type real::equal ( const type  v0x,
const type  v1x 
)
inline

Definition at line 231 of file real_type.hpp.

232 {
233 const type v0 = v0x.d_;
234 const type v1 = v1x.d_;
235 static const type epsilon = type(0.0000000001);
236 return (abs(v0 - v1) <= (max(type(1),max(abs(v0),abs(v1))) * epsilon)) ? type(1) : type(0);
237 }

References abs(), real::type::d_, and max().

Here is the call graph for this function:

◆ erf()

type real::erf ( type  v)
inline

Definition at line 325 of file real_type.hpp.

326 {
327 #if defined(_MSC_VER) && (_MSC_VER < 1900)
328 const type t = type(1) / (type(1) + type(0.5) * abs(v));
329
330 static const type c[] = {
331 type( 1.26551223), type(1.00002368),
332 type( 0.37409196), type(0.09678418),
333 type(-0.18628806), type(0.27886807),
334 type(-1.13520398), type(1.48851587),
335 type(-0.82215223), type(0.17087277)
336 };
337
338 type result = type(1) - t * exp((-v * v) -
339 c[0] + t * (c[1] + t *
340 (c[2] + t * (c[3] + t *
341 (c[4] + t * (c[5] + t *
342 (c[6] + t * (c[7] + t *
343 (c[8] + t * (c[9]))))))))));
344
345 return (v >= type(0)) ? result : -result;
346 #else
347 return ::erf(static_cast<double>(v));
348 #endif
349 }

References abs(), and exp().

Referenced by exprtk::details::numeric::details::erf_impl(), and erfc().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ erfc()

type real::erfc ( type  v)
inline

Definition at line 351 of file real_type.hpp.

352 {
353 return type(1) - erf(v);
354 }

References erf().

Here is the call graph for this function:

◆ exp()

type real::exp ( const type  v)
inline

Definition at line 197 of file real_type.hpp.

197{ return std::exp (v.d_); }

References real::type::d_.

Referenced by erf(), exprtk::details::numeric::details::exp_impl(), and expm1().

Here is the caller graph for this function:

◆ expm1()

type real::expm1 ( const type  vx)
inline

Definition at line 239 of file real_type.hpp.

240 {
241 const type v = vx.d_;
242 if (abs(v) < type(0.00001))
243 return type(v + (0.5 * v * v));
244 else
245 return type(exp(v) - type(1));
246 }

References abs(), real::type::d_, and exp().

Here is the call graph for this function:

◆ floor()

type real::floor ( const type  v)
inline

Definition at line 198 of file real_type.hpp.

198{ return std::floor(v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::floor_impl(), round(), and roundn().

Here is the caller graph for this function:

◆ frac()

type real::frac ( const type  v)
inline

Definition at line 217 of file real_type.hpp.

217{ return (v.d_ - static_cast<long long>(v.d_)); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::frac_impl().

Here is the caller graph for this function:

◆ g2d()

type real::g2d ( const type  v)
inline

Definition at line 215 of file real_type.hpp.

215{ return (v.d_ * type(9.0/10.0)); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::g2d_impl().

Here is the caller graph for this function:

◆ hypot()

type real::hypot ( const type  v0,
const type  v1 
)
inline

Definition at line 283 of file real_type.hpp.

284 {
285 return sqrt((v0 * v0) + (v1 * v1));
286 }

References sqrt().

Here is the call graph for this function:

◆ is_false()

bool real::is_false ( const type  v)
inline

Definition at line 229 of file real_type.hpp.

229{ return (v == type(0)); }

Referenced by exprtk::details::is_false(), nand(), and nor().

Here is the caller graph for this function:

◆ is_true()

bool real::is_true ( const type  v)
inline

Definition at line 228 of file real_type.hpp.

228{ return (v != type(0)); }

Referenced by exprtk::details::is_true().

Here is the caller graph for this function:

◆ log()

type real::log ( const type  v)
inline

Definition at line 199 of file real_type.hpp.

199{ return std::log (v.d_); }

References real::type::d_.

Referenced by log1p(), and exprtk::details::numeric::details::log_impl().

Here is the caller graph for this function:

◆ log10()

type real::log10 ( const type  v)
inline

Definition at line 200 of file real_type.hpp.

200{ return std::log10(v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::log10_impl().

Here is the caller graph for this function:

◆ log1p()

type real::log1p ( const type  v)
inline

Definition at line 254 of file real_type.hpp.

255 {
256 if (v > type(-1))
257 {
258 if (abs(v) > type(0.0001))
259 {
260 return log(type(1) + v);
261 }
262 else
263 return (type(-0.5) * v + type(1)) * v;
264 }
265 else
266 return type(std::numeric_limits<double>::quiet_NaN());
267 }

References abs(), and log().

Here is the call graph for this function:

◆ log2()

type real::log2 ( const type  v)
inline

Definition at line 201 of file real_type.hpp.

201{ return std::log(v.d_) / type(real::details::constant::log2); }
static const double log2

References real::type::d_, and real::details::constant::log2.

Referenced by exprtk::details::numeric::details::log2_impl().

Here is the caller graph for this function:

◆ logn()

type real::logn ( const type  v0,
const type  v1 
)
inline

Definition at line 222 of file real_type.hpp.

222{ return std::log(v0.d_) / std::log(v1.d_); }

References real::type::d_.

◆ max()

type real::max ( const type  v0,
const type  v1 
)
inline

Definition at line 225 of file real_type.hpp.

225{ return std::max(v0.d_,v1.d_); }

References real::type::d_.

Referenced by equal(), nequal(), and not_equal_impl().

Here is the caller graph for this function:

◆ min()

type real::min ( const type  v0,
const type  v1 
)
inline

Definition at line 226 of file real_type.hpp.

226{ return std::min(v0.d_,v1.d_); }

References real::type::d_.

◆ modulus()

type real::modulus ( const type  v0,
const type  v1 
)
inline

Definition at line 220 of file real_type.hpp.

220{ return std::fmod(v0.d_,v1.d_); }

References real::type::d_.

◆ nand()

type real::nand ( const type  v0,
const type v1 
)
inline

Definition at line 305 of file real_type.hpp.

306 {
307 return (is_false(v0) || is_false(v1)) ? type(1) : type(0);
308 }

References is_false().

Here is the call graph for this function:

◆ neg()

type real::neg ( const type  v)
inline

Definition at line 202 of file real_type.hpp.

202{ return type(-1.0) * v; }

◆ nequal()

type real::nequal ( const type  v0,
const type  v1 
)
inline

Definition at line 248 of file real_type.hpp.

249 {
250 static const type epsilon = type(0.0000000001);
251 return (abs(v0 - v1) > (max(type(1),max(abs(v0),abs(v1))) * epsilon)) ? type(1) : type(0);
252 }

References abs(), and max().

Here is the call graph for this function:

◆ nor()

type real::nor ( const type  v0,
const type v1 
)
inline

Definition at line 310 of file real_type.hpp.

311 {
312 return (is_false(v0) && is_false(v1)) ? type(1) : type(0);
313 }

References is_false().

Here is the call graph for this function:

◆ notl()

type real::notl ( const type  v)
inline

Definition at line 216 of file real_type.hpp.

216{ return (v != type(0) ? type(0) : type(1)); }

Referenced by exprtk::details::numeric::details::notl_impl().

Here is the caller graph for this function:

◆ operator!=() [1/14]

bool real::operator!= ( const double  r0,
const type  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator!=() [2/14]

bool real::operator!= ( const float  r0,
const type  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator!=() [3/14]

bool real::operator!= ( const int  r0,
const type  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator!=() [4/14]

bool real::operator!= ( const long long  r0,
const type  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator!=() [5/14]

bool real::operator!= ( const type  r0,
const double  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator!=() [6/14]

bool real::operator!= ( const type  r0,
const float  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator!=() [7/14]

bool real::operator!= ( const type  r0,
const int  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator!=() [8/14]

bool real::operator!= ( const type  r0,
const long long  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator!=() [9/14]

bool real::operator!= ( const type  r0,
const unsigned int  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator!=() [10/14]

bool real::operator!= ( const type  r0,
const unsigned long int  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator!=() [11/14]

bool real::operator!= ( const type  r0,
const unsigned long long  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator!=() [12/14]

bool real::operator!= ( const unsigned int  r0,
const type  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator!=() [13/14]

bool real::operator!= ( const unsigned long int  r0,
const type  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator!=() [14/14]

bool real::operator!= ( const unsigned long long  r0,
const type  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator*() [1/15]

type real::operator* ( const double  r0,
const type  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator*() [2/15]

type real::operator* ( const float  r0,
const type  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator*() [3/15]

type real::operator* ( const int  r0,
const type  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator*() [4/15]

type real::operator* ( const long long  r0,
const type  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator*() [5/15]

type real::operator* ( const type  r0,
const double  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator*() [6/15]

type real::operator* ( const type  r0,
const float  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator*() [7/15]

type real::operator* ( const type  r0,
const int  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator*() [8/15]

type real::operator* ( const type  r0,
const long long  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator*() [9/15]

type real::operator* ( const type  r0,
const type  r1 
)
inline

Definition at line 87 of file real_type.hpp.

87{ return type(r0.d_ * r1.d_); }

References real::type::d_.

◆ operator*() [10/15]

type real::operator* ( const type  r0,
const unsigned int  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator*() [11/15]

type real::operator* ( const type  r0,
const unsigned long int  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator*() [12/15]

type real::operator* ( const type  r0,
const unsigned long long  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator*() [13/15]

type real::operator* ( const unsigned int  r0,
const type  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator*() [14/15]

type real::operator* ( const unsigned long int  r0,
const type  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator*() [15/15]

type real::operator* ( const unsigned long long  r0,
const type  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator+() [1/15]

type real::operator+ ( const double  r0,
const type  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator+() [2/15]

type real::operator+ ( const float  r0,
const type  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator+() [3/15]

type real::operator+ ( const int  r0,
const type  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator+() [4/15]

type real::operator+ ( const long long  r0,
const type  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator+() [5/15]

type real::operator+ ( const type  r0,
const double  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator+() [6/15]

type real::operator+ ( const type  r0,
const float  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator+() [7/15]

type real::operator+ ( const type  r0,
const int  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator+() [8/15]

type real::operator+ ( const type  r0,
const long long  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator+() [9/15]

type real::operator+ ( const type  r0,
const type  r1 
)
inline

Definition at line 85 of file real_type.hpp.

85{ return type(r0.d_ + r1.d_); }

References real::type::d_.

◆ operator+() [10/15]

type real::operator+ ( const type  r0,
const unsigned int  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator+() [11/15]

type real::operator+ ( const type  r0,
const unsigned long int  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator+() [12/15]

type real::operator+ ( const type  r0,
const unsigned long long  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator+() [13/15]

type real::operator+ ( const unsigned int  r0,
const type  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator+() [14/15]

type real::operator+ ( const unsigned long int  r0,
const type  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator+() [15/15]

type real::operator+ ( const unsigned long long  r0,
const type  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator-() [1/15]

type real::operator- ( const double  r0,
const type  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator-() [2/15]

type real::operator- ( const float  r0,
const type  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator-() [3/15]

type real::operator- ( const int  r0,
const type  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator-() [4/15]

type real::operator- ( const long long  r0,
const type  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator-() [5/15]

type real::operator- ( const type  r0,
const double  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator-() [6/15]

type real::operator- ( const type  r0,
const float  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator-() [7/15]

type real::operator- ( const type  r0,
const int  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator-() [8/15]

type real::operator- ( const type  r0,
const long long  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator-() [9/15]

type real::operator- ( const type  r0,
const type  r1 
)
inline

Definition at line 86 of file real_type.hpp.

86{ return type(r0.d_ - r1.d_); }

References real::type::d_.

◆ operator-() [10/15]

type real::operator- ( const type  r0,
const unsigned int  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator-() [11/15]

type real::operator- ( const type  r0,
const unsigned long int  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator-() [12/15]

type real::operator- ( const type  r0,
const unsigned long long  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator-() [13/15]

type real::operator- ( const unsigned int  r0,
const type  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator-() [14/15]

type real::operator- ( const unsigned long int  r0,
const type  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator-() [15/15]

type real::operator- ( const unsigned long long  r0,
const type  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator/() [1/15]

type real::operator/ ( const double  r0,
const type  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator/() [2/15]

type real::operator/ ( const float  r0,
const type  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator/() [3/15]

type real::operator/ ( const int  r0,
const type  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator/() [4/15]

type real::operator/ ( const long long  r0,
const type  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator/() [5/15]

type real::operator/ ( const type  r0,
const double  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator/() [6/15]

type real::operator/ ( const type  r0,
const float  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator/() [7/15]

type real::operator/ ( const type  r0,
const int  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator/() [8/15]

type real::operator/ ( const type  r0,
const long long  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator/() [9/15]

type real::operator/ ( const type  r0,
const type  r1 
)
inline

Definition at line 88 of file real_type.hpp.

88{ return type(r0.d_ / r1.d_); }

References real::type::d_.

◆ operator/() [10/15]

type real::operator/ ( const type  r0,
const unsigned int  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator/() [11/15]

type real::operator/ ( const type  r0,
const unsigned long int  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator/() [12/15]

type real::operator/ ( const type  r0,
const unsigned long long  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator/() [13/15]

type real::operator/ ( const unsigned int  r0,
const type  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator/() [14/15]

type real::operator/ ( const unsigned long int  r0,
const type  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator/() [15/15]

type real::operator/ ( const unsigned long long  r0,
const type  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator<() [1/15]

bool real::operator< ( const double  r0,
const type  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator<() [2/15]

bool real::operator< ( const float  r0,
const type  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator<() [3/15]

bool real::operator< ( const int  r0,
const type  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator<() [4/15]

bool real::operator< ( const long long  r0,
const type  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator<() [5/15]

bool real::operator< ( const type  r0,
const double  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator<() [6/15]

bool real::operator< ( const type  r0,
const float  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator<() [7/15]

bool real::operator< ( const type  r0,
const int  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator<() [8/15]

bool real::operator< ( const type  r0,
const long long  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator<() [9/15]

bool real::operator< ( const type  r0,
const type  r1 
)
inline

Definition at line 90 of file real_type.hpp.

90{ return (r0.d_ < r1.d_); }

References real::type::d_.

◆ operator<() [10/15]

bool real::operator< ( const type  r0,
const unsigned int  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator<() [11/15]

bool real::operator< ( const type  r0,
const unsigned long int  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator<() [12/15]

bool real::operator< ( const type  r0,
const unsigned long long  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator<() [13/15]

bool real::operator< ( const unsigned int  r0,
const type  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator<() [14/15]

bool real::operator< ( const unsigned long int  r0,
const type  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator<() [15/15]

bool real::operator< ( const unsigned long long  r0,
const type  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator<=() [1/15]

bool real::operator<= ( const double  r0,
const type  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator<=() [2/15]

bool real::operator<= ( const float  r0,
const type  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator<=() [3/15]

bool real::operator<= ( const int  r0,
const type  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator<=() [4/15]

bool real::operator<= ( const long long  r0,
const type  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator<=() [5/15]

bool real::operator<= ( const type  r0,
const double  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator<=() [6/15]

bool real::operator<= ( const type  r0,
const float  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator<=() [7/15]

bool real::operator<= ( const type  r0,
const int  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator<=() [8/15]

bool real::operator<= ( const type  r0,
const long long  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator<=() [9/15]

bool real::operator<= ( const type  r0,
const type  r1 
)
inline

Definition at line 92 of file real_type.hpp.

92{ return (r0.d_ <= r1.d_); }

References real::type::d_.

◆ operator<=() [10/15]

bool real::operator<= ( const type  r0,
const unsigned int  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator<=() [11/15]

bool real::operator<= ( const type  r0,
const unsigned long int  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator<=() [12/15]

bool real::operator<= ( const type  r0,
const unsigned long long  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator<=() [13/15]

bool real::operator<= ( const unsigned int  r0,
const type  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator<=() [14/15]

bool real::operator<= ( const unsigned long int  r0,
const type  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator<=() [15/15]

bool real::operator<= ( const unsigned long long  r0,
const type  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator==() [1/14]

bool real::operator== ( const double  r0,
const type  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator==() [2/14]

bool real::operator== ( const float  r0,
const type  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator==() [3/14]

bool real::operator== ( const int  r0,
const type  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator==() [4/14]

bool real::operator== ( const long long  r0,
const type  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator==() [5/14]

bool real::operator== ( const type  r0,
const double  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator==() [6/14]

bool real::operator== ( const type  r0,
const float  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator==() [7/14]

bool real::operator== ( const type  r0,
const int  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator==() [8/14]

bool real::operator== ( const type  r0,
const long long  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator==() [9/14]

bool real::operator== ( const type  r0,
const unsigned int  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator==() [10/14]

bool real::operator== ( const type  r0,
const unsigned long int  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator==() [11/14]

bool real::operator== ( const type  r0,
const unsigned long long  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator==() [12/14]

bool real::operator== ( const unsigned int  r0,
const type  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator==() [13/14]

bool real::operator== ( const unsigned long int  r0,
const type  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator==() [14/14]

bool real::operator== ( const unsigned long long  r0,
const type  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator>() [1/15]

bool real::operator> ( const double  r0,
const type  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator>() [2/15]

bool real::operator> ( const float  r0,
const type  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator>() [3/15]

bool real::operator> ( const int  r0,
const type  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator>() [4/15]

bool real::operator> ( const long long  r0,
const type  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator>() [5/15]

bool real::operator> ( const type  r0,
const double  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator>() [6/15]

bool real::operator> ( const type  r0,
const float  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator>() [7/15]

bool real::operator> ( const type  r0,
const int  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator>() [8/15]

bool real::operator> ( const type  r0,
const long long  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator>() [9/15]

bool real::operator> ( const type  r0,
const type  r1 
)
inline

Definition at line 91 of file real_type.hpp.

91{ return (r0.d_ > r1.d_); }

References real::type::d_.

◆ operator>() [10/15]

bool real::operator> ( const type  r0,
const unsigned int  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator>() [11/15]

bool real::operator> ( const type  r0,
const unsigned long int  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator>() [12/15]

bool real::operator> ( const type  r0,
const unsigned long long  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator>() [13/15]

bool real::operator> ( const unsigned int  r0,
const type  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator>() [14/15]

bool real::operator> ( const unsigned long int  r0,
const type  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator>() [15/15]

bool real::operator> ( const unsigned long long  r0,
const type  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator>=() [1/15]

bool real::operator>= ( const double  r0,
const type  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator>=() [2/15]

bool real::operator>= ( const float  r0,
const type  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator>=() [3/15]

bool real::operator>= ( const int  r0,
const type  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator>=() [4/15]

bool real::operator>= ( const long long  r0,
const type  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator>=() [5/15]

bool real::operator>= ( const type  r0,
const double  r1 
)
inline

Definition at line 117 of file real_type.hpp.

◆ operator>=() [6/15]

bool real::operator>= ( const type  r0,
const float  r1 
)
inline

Definition at line 118 of file real_type.hpp.

◆ operator>=() [7/15]

bool real::operator>= ( const type  r0,
const int  r1 
)
inline

Definition at line 119 of file real_type.hpp.

◆ operator>=() [8/15]

bool real::operator>= ( const type  r0,
const long long  r1 
)
inline

Definition at line 120 of file real_type.hpp.

◆ operator>=() [9/15]

bool real::operator>= ( const type  r0,
const type  r1 
)
inline

Definition at line 93 of file real_type.hpp.

93{ return (r0.d_ >= r1.d_); }

References real::type::d_.

◆ operator>=() [10/15]

bool real::operator>= ( const type  r0,
const unsigned int  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator>=() [11/15]

bool real::operator>= ( const type  r0,
const unsigned long int  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator>=() [12/15]

bool real::operator>= ( const type  r0,
const unsigned long long  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ operator>=() [13/15]

bool real::operator>= ( const unsigned int  r0,
const type  r1 
)
inline

Definition at line 121 of file real_type.hpp.

◆ operator>=() [14/15]

bool real::operator>= ( const unsigned long int  r0,
const type  r1 
)
inline

Definition at line 123 of file real_type.hpp.

◆ operator>=() [15/15]

bool real::operator>= ( const unsigned long long  r0,
const type  r1 
)
inline

Definition at line 122 of file real_type.hpp.

◆ pos()

type real::pos ( const type  v)
inline

Definition at line 203 of file real_type.hpp.

203{ return v; }

◆ pow()

type real::pow ( const type  v0,
const type  v1 
)
inline

Definition at line 221 of file real_type.hpp.

221{ return std::pow(v0.d_,v1.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::pow_impl(), root(), roundn(), shl(), and shr().

Here is the caller graph for this function:

◆ r2d()

type real::r2d ( const type  v)
inline

Definition at line 212 of file real_type.hpp.

static const double _180_pi

References real::details::constant::_180_pi, and real::type::d_.

Referenced by exprtk::details::numeric::details::r2d_impl().

Here is the caller graph for this function:

◆ root()

type real::root ( const type  v0,
const type  v1 
)
inline

Definition at line 223 of file real_type.hpp.

223{ return pow(v0,type(1.0) / v1); }

References pow().

Here is the call graph for this function:

◆ round()

type real::round ( const type  v)
inline

Definition at line 269 of file real_type.hpp.

270 {
271 return ((v < type(0)) ? ceil(v - type(0.5)) : floor(v + type(0.5)));
272 }

References ceil(), and floor().

Here is the call graph for this function:

◆ roundn()

type real::roundn ( const type  v0,
const type  v1 
)
inline

Definition at line 274 of file real_type.hpp.

275 {
276 const type p10 = pow(type(10),trunc(v1));
277 if (v0 < type(0))
278 return type(ceil ((v0 * p10) - type(0.5)) / p10);
279 else
280 return type(floor((v0 * p10) + type(0.5)) / p10);
281 }

References ceil(), floor(), pow(), and trunc().

Here is the call graph for this function:

◆ sec()

type real::sec ( const type  v)
inline

Definition at line 210 of file real_type.hpp.

210{ return type(1) / std::cos(v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::sec_impl().

Here is the caller graph for this function:

◆ sgn()

type real::sgn ( const type  v)
inline

Definition at line 298 of file real_type.hpp.

299 {
300 if (v > type(0)) return type(+1);
301 else if (v < type(0)) return type(-1);
302 else return type( 0);
303 }

◆ shl()

type real::shl ( const type  v0,
const type  v1 
)
inline

Definition at line 293 of file real_type.hpp.

294 {
295 return v0 * pow(type(2),trunc(v1));
296 }

References pow(), and trunc().

Here is the call graph for this function:

◆ shr()

type real::shr ( const type  v0,
const type  v1 
)
inline

Definition at line 288 of file real_type.hpp.

289 {
290 return v0 * (type(1) / pow(type(2),trunc(v1)));
291 }

References pow(), and trunc().

Here is the call graph for this function:

◆ sin()

type real::sin ( const type  v)
inline

Definition at line 204 of file real_type.hpp.

204{ return std::sin (v.d_); }

References real::type::d_.

Referenced by sine_deg< T >::operator()(), run_test04(), run_test05(), run_test07(), and exprtk::details::numeric::details::sin_impl().

Here is the caller graph for this function:

◆ sinh()

type real::sinh ( const type  v)
inline

Definition at line 205 of file real_type.hpp.

205{ return std::sinh (v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::sinh_impl().

Here is the caller graph for this function:

◆ sqrt()

type real::sqrt ( const type  v)
inline

Definition at line 206 of file real_type.hpp.

206{ return std::sqrt (v.d_); }

References real::type::d_.

Referenced by hypot(), run_test19(), and exprtk::details::numeric::details::sqrt_impl().

Here is the caller graph for this function:

◆ tan()

type real::tan ( const type  v)
inline

Definition at line 207 of file real_type.hpp.

207{ return std::tan (v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::tan_impl().

Here is the caller graph for this function:

◆ tanh()

type real::tanh ( const type  v)
inline

Definition at line 208 of file real_type.hpp.

208{ return std::tanh (v.d_); }

References real::type::d_.

Referenced by exprtk::details::numeric::details::tanh_impl().

Here is the caller graph for this function:

◆ trunc()

type real::trunc ( const type  v)
inline

Definition at line 218 of file real_type.hpp.

218{ return type(static_cast<double>(static_cast<long long>(v.d_))); }

References real::type::d_.

Referenced by roundn(), shl(), shr(), and exprtk::details::numeric::details::trunc_impl().

Here is the caller graph for this function:

◆ xnor()

type real::xnor ( const type  v0,
const type v1 
)
inline

Definition at line 315 of file real_type.hpp.

316 {
317 const bool v0_true = is_true(v0);
318 const bool v1_true = is_true(v1);
319 if ((v0_true && v1_true) || (!v0_true && !v1_true))
320 return type(1);
321 else
322 return type(0);
323 }