/usr/include/sundials/sundials_math.h is in libsundials-serial-dev 2.5.0-3+b3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 | /*
* -----------------------------------------------------------------
* $Revision: 1.2 $
* $Date: 2006/11/29 00:05:07 $
* -----------------------------------------------------------------
* Programmer(s): Scott D. Cohen, Alan C. Hindmarsh and
* Aaron Collier @ LLNL
* -----------------------------------------------------------------
* Copyright (c) 2002, The Regents of the University of California.
* Produced at the Lawrence Livermore National Laboratory.
* All rights reserved.
* For details, see the LICENSE file.
* -----------------------------------------------------------------
* This is the header file for a simple C-language math library. The
* routines listed here work with the type realtype as defined in
* the header file sundials_types.h.
* -----------------------------------------------------------------
*/
#ifndef _SUNDIALSMATH_H
#define _SUNDIALSMATH_H
#ifdef __cplusplus /* wrapper to enable C++ usage */
extern "C" {
#endif
#include <sundials/sundials_types.h>
/*
* -----------------------------------------------------------------
* Macros : MIN and MAX
* -----------------------------------------------------------------
* MIN(A,B) returns the minimum of A and B
*
* MAX(A,B) returns the maximum of A and B
*
* SQR(A) returns A^2
* -----------------------------------------------------------------
*/
#ifndef MIN
#define MIN(A, B) ((A) < (B) ? (A) : (B))
#endif
#ifndef MAX
#define MAX(A, B) ((A) > (B) ? (A) : (B))
#endif
#ifndef SQR
#define SQR(A) ((A)*(A))
#endif
#ifndef ABS
#define ABS RAbs
#endif
#ifndef SQRT
#define SQRT RSqrt
#endif
#ifndef EXP
#define EXP RExp
#endif
/*
* -----------------------------------------------------------------
* Function : RPowerI
* -----------------------------------------------------------------
* Usage : int exponent;
* realtype base, ans;
* ans = RPowerI(base,exponent);
* -----------------------------------------------------------------
* RPowerI returns the value of base^exponent, where base is of type
* realtype and exponent is of type int.
* -----------------------------------------------------------------
*/
SUNDIALS_EXPORT realtype RPowerI(realtype base, int exponent);
/*
* -----------------------------------------------------------------
* Function : RPowerR
* -----------------------------------------------------------------
* Usage : realtype base, exponent, ans;
* ans = RPowerR(base,exponent);
* -----------------------------------------------------------------
* RPowerR returns the value of base^exponent, where both base and
* exponent are of type realtype. If base < ZERO, then RPowerR
* returns ZERO.
* -----------------------------------------------------------------
*/
SUNDIALS_EXPORT realtype RPowerR(realtype base, realtype exponent);
/*
* -----------------------------------------------------------------
* Function : RSqrt
* -----------------------------------------------------------------
* Usage : realtype sqrt_x;
* sqrt_x = RSqrt(x);
* -----------------------------------------------------------------
* RSqrt(x) returns the square root of x. If x < ZERO, then RSqrt
* returns ZERO.
* -----------------------------------------------------------------
*/
SUNDIALS_EXPORT realtype RSqrt(realtype x);
/*
* -----------------------------------------------------------------
* Function : RAbs (a.k.a. ABS)
* -----------------------------------------------------------------
* Usage : realtype abs_x;
* abs_x = RAbs(x);
* -----------------------------------------------------------------
* RAbs(x) returns the absolute value of x.
* -----------------------------------------------------------------
*/
SUNDIALS_EXPORT realtype RAbs(realtype x);
/*
* -----------------------------------------------------------------
* Function : RExp (a.k.a. EXP)
* -----------------------------------------------------------------
* Usage : realtype exp_x;
* exp_x = RExp(x);
* -----------------------------------------------------------------
* RExp(x) returns e^x (base-e exponential function).
* -----------------------------------------------------------------
*/
SUNDIALS_EXPORT realtype RExp(realtype x);
#ifdef __cplusplus
}
#endif
#endif
|