libstdc++
math.h
Go to the documentation of this file.
00001 // -*- C++ -*- compatibility header.
00002 
00003 // Copyright (C) 2002-2017 Free Software Foundation, Inc.
00004 //
00005 // This file is part of the GNU ISO C++ Library.  This library is free
00006 // software; you can redistribute it and/or modify it under the
00007 // terms of the GNU General Public License as published by the
00008 // Free Software Foundation; either version 3, or (at your option)
00009 // any later version.
00010 
00011 // This library is distributed in the hope that it will be useful,
00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014 // GNU General Public License for more details.
00015 
00016 // Under Section 7 of GPL version 3, you are granted additional
00017 // permissions described in the GCC Runtime Library Exception, version
00018 // 3.1, as published by the Free Software Foundation.
00019 
00020 // You should have received a copy of the GNU General Public License and
00021 // a copy of the GCC Runtime Library Exception along with this program;
00022 // see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
00023 // <http://www.gnu.org/licenses/>.
00024 
00025 /** @file math.h
00026  *  This is a Standard C++ Library header.
00027  */
00028 
00029 #if !defined __cplusplus || defined _GLIBCXX_INCLUDE_NEXT_C_HEADERS
00030 # include_next <math.h>
00031 #else
00032 
00033 #ifndef _GLIBCXX_MATH_H
00034 #define _GLIBCXX_MATH_H 1
00035 
00036 # include <cmath>
00037 
00038 using std::abs;
00039 using std::acos;
00040 using std::asin;
00041 using std::atan;
00042 using std::atan2;
00043 using std::cos;
00044 using std::sin;
00045 using std::tan;
00046 using std::cosh;
00047 using std::sinh;
00048 using std::tanh;
00049 using std::exp;
00050 using std::frexp;
00051 using std::ldexp;
00052 using std::log;
00053 using std::log10;
00054 using std::modf;
00055 using std::pow;
00056 using std::sqrt;
00057 using std::ceil;
00058 using std::fabs;
00059 using std::floor;
00060 using std::fmod;
00061 
00062 #if _GLIBCXX_USE_C99_MATH
00063 using std::fpclassify;
00064 using std::isfinite;
00065 using std::isinf;
00066 using std::isnan;
00067 using std::isnormal;
00068 using std::signbit;
00069 using std::isgreater;
00070 using std::isgreaterequal;
00071 using std::isless;
00072 using std::islessequal;
00073 using std::islessgreater;
00074 using std::isunordered;
00075 #endif
00076 
00077 #if __cplusplus >= 201103L && defined(_GLIBCXX_USE_C99_MATH_TR1)
00078 using std::acosh;
00079 using std::asinh;
00080 using std::atanh;
00081 using std::cbrt;
00082 using std::copysign;
00083 using std::erf;
00084 using std::erfc;
00085 using std::exp2;
00086 using std::expm1;
00087 using std::fdim;
00088 using std::fma;
00089 using std::fmax;
00090 using std::fmin;
00091 using std::hypot;
00092 using std::ilogb;
00093 using std::lgamma;
00094 using std::llrint;
00095 using std::llround;
00096 using std::log1p;
00097 using std::log2;
00098 using std::logb;
00099 using std::lrint;
00100 using std::lround;
00101 using std::nearbyint;
00102 using std::nextafter;
00103 using std::nexttoward;
00104 using std::remainder;
00105 using std::remquo;
00106 using std::rint;
00107 using std::round;
00108 using std::scalbln;
00109 using std::scalbn;
00110 using std::tgamma;
00111 using std::trunc;
00112 #endif // C++11 && _GLIBCXX_USE_C99_MATH_TR1
00113 
00114 #if __STDCPP_WANT_MATH_SPEC_FUNCS__ == 1
00115 using std::assoc_laguerref;
00116 using std::assoc_laguerrel;
00117 using std::assoc_laguerre;
00118 using std::assoc_legendref;
00119 using std::assoc_legendrel;
00120 using std::assoc_legendre;
00121 using std::betaf;
00122 using std::betal;
00123 using std::beta;
00124 using std::comp_ellint_1f;
00125 using std::comp_ellint_1l;
00126 using std::comp_ellint_1;
00127 using std::comp_ellint_2f;
00128 using std::comp_ellint_2l;
00129 using std::comp_ellint_2;
00130 using std::comp_ellint_3f;
00131 using std::comp_ellint_3l;
00132 using std::comp_ellint_3;
00133 using std::cyl_bessel_if;
00134 using std::cyl_bessel_il;
00135 using std::cyl_bessel_i;
00136 using std::cyl_bessel_jf;
00137 using std::cyl_bessel_jl;
00138 using std::cyl_bessel_j;
00139 using std::cyl_bessel_kf;
00140 using std::cyl_bessel_kl;
00141 using std::cyl_bessel_k;
00142 using std::cyl_neumannf;
00143 using std::cyl_neumannl;
00144 using std::cyl_neumann;
00145 using std::ellint_1f;
00146 using std::ellint_1l;
00147 using std::ellint_1;
00148 using std::ellint_2f;
00149 using std::ellint_2l;
00150 using std::ellint_2;
00151 using std::ellint_3f;
00152 using std::ellint_3l;
00153 using std::ellint_3;
00154 using std::expintf;
00155 using std::expintl;
00156 using std::expint;
00157 using std::hermitef;
00158 using std::hermitel;
00159 using std::hermite;
00160 using std::laguerref;
00161 using std::laguerrel;
00162 using std::laguerre;
00163 using std::legendref;
00164 using std::legendrel;
00165 using std::legendre;
00166 using std::riemann_zetaf;
00167 using std::riemann_zetal;
00168 using std::riemann_zeta;
00169 using std::sph_besself;
00170 using std::sph_bessell;
00171 using std::sph_bessel;
00172 using std::sph_legendref;
00173 using std::sph_legendrel;
00174 using std::sph_legendre;
00175 using std::sph_neumannf;
00176 using std::sph_neumannl;
00177 using std::sph_neumann;
00178 #endif // __STDCPP_WANT_MATH_SPEC_FUNCS__
00179 
00180 #endif // _GLIBCXX_MATH_H
00181 #endif // __cplusplus