当前位置: 首页>>代码示例>>C++>>正文


C++ SymEngine::loggamma方法代码示例

本文整理汇总了C++中SymEngine::loggamma方法的典型用法代码示例。如果您正苦于以下问题:C++ SymEngine::loggamma方法的具体用法?C++ SymEngine::loggamma怎么用?C++ SymEngine::loggamma使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SymEngine的用法示例。


在下文中一共展示了SymEngine::loggamma方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: add

        {add(add(sinh(one), add(cosh(one), add(tanh(one), coth(one)))),
             sech(r3)),
         5.773239267559},
        {sub(add(add(asinh(r4), add(acosh(r4), add(atanh(r3), acoth(r4)))),
                 sech(r4)),
             acsch(r4)),
         4.825120290814},
        {SymEngine::abs(log(div(pi, mul(E, integer(2))))), 0.548417294710},
        {SymEngine::atan2(r1, neg(r2)), 2.08867384922582},
        {mul(pi, mul(E, EulerGamma)), 4.92926836742289},
        {pow(mul(EulerGamma, r4), integer(8)), 4813.54354505117582},
        {mul(EulerGamma, integer(10)), 5.7721566490153286},
        {max({r2, r1}), 0.841470984808},
        {min({add(r1, r4), r2}), 0.479425538604},
        {gamma(div(integer(4), integer(3))), 0.892979511569249211},
        {loggamma(div(integer(7), integer(2))), 1.200973602347074224},
        {loggamma(pi), 0.82769459232343710152},
        {add(asech(div(one, integer(2))), real_double(0.1)), 1.41695789692482},
        {r5, 0.841470984807897},
    };

    for (unsigned i = 0; i < vec.size(); i++) {
        double val = eval_double(*vec[i].first);
        std::cout.precision(12);
        std::cout << vec[i].first->__str__() << " ~ " << val << std::endl;
        REQUIRE(::fabs(val - vec[i].second) < 1e-12);
    }

    for (unsigned i = 0; i < vec.size(); i++) {
        double val = eval_double_single_dispatch(*vec[i].first);
        REQUIRE(::fabs(val - vec[i].second) < 1e-12);
开发者ID:bjodah,项目名称:symengine,代码行数:31,代码来源:test_eval_double.cpp

示例2: REQUIRE

    REQUIRE(mpfr_cmp_d(a, 0.00000000182845) == 1);
    REQUIRE(mpfr_cmp_d(a, 0.00000000182846) == -1);

    r = max({integer(3), integer(2)});

    eval_mpfr(a, *r, MPFR_RNDN);
    REQUIRE(mpfr_cmp_d(a, 3.00000000000001) == -1);
    REQUIRE(mpfr_cmp_d(a, 2.99999999999999) == 1);

    r = min({sqrt(integer(3)), sqrt(integer(2))});

    eval_mpfr(a, *r, MPFR_RNDN);
    REQUIRE(mpfr_cmp_d(a, 1.41421356238) == -1);
    REQUIRE(mpfr_cmp_d(a, 1.41421356236) == 1);

    r = loggamma(E);
    eval_mpfr(a, *r, MPFR_RNDN);
    REQUIRE(mpfr_cmp_d(a, 0.44946174183) == -1);
    REQUIRE(mpfr_cmp_d(a, 0.44946174181) == 1);

    r = loggamma(integer(5));
    eval_mpfr(a, *r, MPFR_RNDN);
    REQUIRE(mpfr_cmp_d(a, 3.17805383035) == -1);
    REQUIRE(mpfr_cmp_d(a, 3.17805383033) == 1);

    r = erf(integer(2));

    eval_mpfr(a, *r, MPFR_RNDN);
    REQUIRE(mpfr_cmp_d(a, 0.995322265019) == -1);
    REQUIRE(mpfr_cmp_d(a, 0.995322265017) == 1);
开发者ID:altairpearl,项目名称:symengine,代码行数:30,代码来源:test_eval_mpfr.cpp


注:本文中的SymEngine::loggamma方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。