⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mathfunc.h

📁 A C++ class library for scientific computing
💻 H
📖 第 1 页 / 共 5 页
字号:
// arg(complex<float> )#ifdef BZ_HAVE_COMPLEX_FCNStemplate<>class _bz_arg<complex<float> > : public OneOperandApplicativeTemplatesBase {public:    typedef complex<float>  T_numtype1;    typedef float T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_CMATHFN_SCOPE(arg)((complex<float> )x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "arg(";        a.prettyPrint(str,format);        str += ")";    }};#endif// arg(complex<double> )#ifdef BZ_HAVE_COMPLEX_FCNStemplate<>class _bz_arg<complex<double> > : public OneOperandApplicativeTemplatesBase {public:    typedef complex<double>  T_numtype1;    typedef double T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_CMATHFN_SCOPE(arg)((complex<double> )x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "arg(";        a.prettyPrint(str,format);        str += ")";    }};#endif// arg(complex<long double> )#ifdef BZ_HAVE_COMPLEX_FCNStemplate<>class _bz_arg<complex<long double> > : public OneOperandApplicativeTemplatesBase {public:    typedef complex<long double>  T_numtype1;    typedef long double T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_CMATHFN_SCOPE(arg)((complex<long double> )x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "arg(";        a.prettyPrint(str,format);        str += ")";    }};#endif// atan(P_numtype1)    Inverse tangenttemplate<typename P_numtype1>class _bz_atan : public OneOperandApplicativeTemplatesBase {public:    typedef P_numtype1 T_numtype1;    typedef double T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_MATHFN_SCOPE(atan)((double)x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "atan(";        a.prettyPrint(str,format);        str += ")";    }};// atan(float)template<>class _bz_atan<float> : public OneOperandApplicativeTemplatesBase {public:    typedef float T_numtype1;    typedef float T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_MATHFN_SCOPE(atan)((float)x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "atan(";        a.prettyPrint(str,format);        str += ")";    }};// atan(long double)template<>class _bz_atan<long double> : public OneOperandApplicativeTemplatesBase {public:    typedef long double T_numtype1;    typedef long double T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_MATHFN_SCOPE(atan)((long double)x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "atan(";        a.prettyPrint(str,format);        str += ")";    }};// atan(complex<float> )#ifdef BZ_HAVE_COMPLEX_MATH2template<>class _bz_atan<complex<float> > : public OneOperandApplicativeTemplatesBase {public:    typedef complex<float>  T_numtype1;    typedef complex<float> T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_CMATHFN_SCOPE(atan)((complex<float> )x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "atan(";        a.prettyPrint(str,format);        str += ")";    }};#endif// atan(complex<double> )#ifdef BZ_HAVE_COMPLEX_MATH2template<>class _bz_atan<complex<double> > : public OneOperandApplicativeTemplatesBase {public:    typedef complex<double>  T_numtype1;    typedef complex<double> T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_CMATHFN_SCOPE(atan)((complex<double> )x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "atan(";        a.prettyPrint(str,format);        str += ")";    }};#endif// atan(complex<long double> )#ifdef BZ_HAVE_COMPLEX_MATH2template<>class _bz_atan<complex<long double> > : public OneOperandApplicativeTemplatesBase {public:    typedef complex<long double>  T_numtype1;    typedef complex<long double> T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_CMATHFN_SCOPE(atan)((complex<long double> )x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "atan(";        a.prettyPrint(str,format);        str += ")";    }};#endif// atanh(P_numtype1)    Inverse hyperbolic tangent#ifdef BZ_HAVE_IEEE_MATHtemplate<typename P_numtype1>class _bz_atanh : public OneOperandApplicativeTemplatesBase {public:    typedef P_numtype1 T_numtype1;    typedef double T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_IEEEMATHFN_SCOPE(atanh)((double)x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "atanh(";        a.prettyPrint(str,format);        str += ")";    }};#endif// atan2(P_numtype1, P_numtype2)    Inverse tangenttemplate<typename P_numtype1, typename P_numtype2>class _bz_atan2 : public TwoOperandApplicativeTemplatesBase {public:    typedef P_numtype1 T_numtype1;    typedef P_numtype2 T_numtype2;    typedef double T_numtype;    static inline T_numtype apply(T_numtype1 x, T_numtype2 y)    { return BZ_MATHFN_SCOPE(atan2)((double)x,(double)y); }    template<typename T1, typename T2>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a, const T2& b)    {        str += "atan2(";        a.prettyPrint(str,format);        str += ",";        b.prettyPrint(str,format);        str += ")";    }};// atan2(float, float)template<>class _bz_atan2<float, float > : public TwoOperandApplicativeTemplatesBase {public:    typedef float T_numtype1;    typedef float T_numtype2;    typedef float T_numtype;    static inline T_numtype apply(T_numtype1 x, T_numtype2 y)    { return BZ_MATHFN_SCOPE(atan2)((float)x,(float)y); }    template<typename T1, typename T2>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a, const T2& b)    {        str += "atan2(";        a.prettyPrint(str,format);        str += ",";        b.prettyPrint(str,format);        str += ")";    }};// atan2(long double, long double)template<>class _bz_atan2<long double, long double > : public TwoOperandApplicativeTemplatesBase {public:    typedef long double T_numtype1;    typedef long double T_numtype2;    typedef long double T_numtype;    static inline T_numtype apply(T_numtype1 x, T_numtype2 y)    { return BZ_MATHFN_SCOPE(atan2)((long double)x,(long double)y); }    template<typename T1, typename T2>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a, const T2& b)    {        str += "atan2(";        a.prettyPrint(str,format);        str += ",";        b.prettyPrint(str,format);        str += ")";    }};// _class(P_numtype1)    Classification of float-point value (FP_xxx)#ifdef BZ_HAVE_SYSTEM_V_MATHtemplate<typename P_numtype1>class _bz__class : public OneOperandApplicativeTemplatesBase {public:    typedef P_numtype1 T_numtype1;    typedef int T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_IEEEMATHFN_SCOPE(_class)(x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "_class(";        a.prettyPrint(str,format);        str += ")";    }};#endif// cbrt(P_numtype1)    Cube root#ifdef BZ_HAVE_IEEE_MATHtemplate<typename P_numtype1>class _bz_cbrt : public OneOperandApplicativeTemplatesBase {public:    typedef P_numtype1 T_numtype1;    typedef double T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_IEEEMATHFN_SCOPE(cbrt)((double)x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "cbrt(";        a.prettyPrint(str,format);        str += ")";    }};#endif// ceil(P_numtype1)    Ceilingtemplate<typename P_numtype1>class _bz_ceil : public OneOperandApplicativeTemplatesBase {public:    typedef P_numtype1 T_numtype1;    typedef double T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_MATHFN_SCOPE(ceil)((double)x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "ceil(";        a.prettyPrint(str,format);        str += ")";    }};// ceil(float)template<>class _bz_ceil<float> : public OneOperandApplicativeTemplatesBase {public:    typedef float T_numtype1;    typedef float T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_MATHFN_SCOPE(ceil)((float)x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "ceil(";        a.prettyPrint(str,format);        str += ")";    }};// ceil(long double)template<>class _bz_ceil<long double> : public OneOperandApplicativeTemplatesBase {public:    typedef long double T_numtype1;    typedef long double T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_MATHFN_SCOPE(ceil)((long double)x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "ceil(";        a.prettyPrint(str,format);        str += ")";    }};// conj(P_numtype1)#ifdef BZ_HAVE_COMPLEX_FCNStemplate<typename P_numtype1>class _bz_conj : public OneOperandApplicativeTemplatesBase {public:    typedef P_numtype1 T_numtype1;    typedef P_numtype1 T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_CMATHFN_SCOPE(conj)(x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "conj(";        a.prettyPrint(str,format);        str += ")";    }};#endif// cos(P_numtype1)    Cosinetemplate<typename P_numtype1>class _bz_cos : public OneOperandApplicativeTemplatesBase {public:    typedef P_numtype1 T_numtype1;    typedef double T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_MATHFN_SCOPE(cos)((double)x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "cos(";        a.prettyPrint(str,format);        str += ")";    }};// cos(float)template<>class _bz_cos<float> : public OneOperandApplicativeTemplatesBase {public:    typedef float T_numtype1;    typedef float T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_MATHFN_SCOPE(cos)((float)x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "cos(";        a.prettyPrint(str,format);        str += ")";    }};// cos(long double)template<>class _bz_cos<long double> : public OneOperandApplicativeTemplatesBase {public:    typedef long double T_numtype1;    typedef long double T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_MATHFN_SCOPE(cos)((long double)x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "cos(";        a.prettyPrint(str,format);        str += ")";    }};// cos(complex<float> )#ifdef BZ_HAVE_COMPLEX_MATH1template<>class _bz_cos<complex<float> > : public OneOperandApplicativeTemplatesBase {public:    typedef complex<float>  T_numtype1;    typedef complex<float> T_numtype;    static inline T_numtype apply(T_numtype1 x)    { return BZ_CMATHFN_SCOPE(cos)((complex<float> )x); }    template<typename T1>    static void prettyPrint(BZ_STD_SCOPE(string) &str, prettyPrintFormat& format,        const T1& a)    {        str += "cos(";        a.prettyPrint(str,format);        str += ")";    }};#endif// cos(complex<double> )#ifdef BZ_HAVE_COMPLEX_MATH1template<>class _bz_cos<complex<double> > : public OneOperandApplicativeTemplatesBase {public:    typedef complex<double>  T_numtype1;    typedef complex<double> T_numtype;    static inline T_numtype apply(T_numtype1 x)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -