📄 test_cauchy.cpp
字号:
::boost::math::quantile( cauchy_distribution<RealType>(), static_cast<RealType>(0.14758361765043327417540107622474L)), static_cast<RealType>(-2.0), tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( cauchy_distribution<RealType>(), static_cast<RealType>(0.9682744825694464304850228813987L)), static_cast<RealType>(10.0), tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( cauchy_distribution<RealType>(), static_cast<RealType>(0.031725517430553569514977118601302L)), static_cast<RealType>(-10.0), tolerance); // % // // Quantile from complement: // BOOST_CHECK_CLOSE( ::boost::math::quantile( complement(cauchy_distribution<RealType>(), static_cast<RealType>(0.46041657583943445798914832865996L))), static_cast<RealType>(0.125), tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( complement(cauchy_distribution<RealType>(), static_cast<RealType>(0.53958342416056554201085167134004L))), static_cast<RealType>(-0.125), tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( complement(cauchy_distribution<RealType>(), static_cast<RealType>(0.35241638234956672582459892377526L))), static_cast<RealType>(0.5), tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( complement(cauchy_distribution<RealType>(), static_cast<RealType>(0.64758361765043327417540107622474L))), static_cast<RealType>(-0.5), tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( complement(cauchy_distribution<RealType>(), static_cast<RealType>(0.25))), static_cast<RealType>(1.0), tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( complement(cauchy_distribution<RealType>(), static_cast<RealType>(0.75))), static_cast<RealType>(-1.0), tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( complement(cauchy_distribution<RealType>(), static_cast<RealType>(0.14758361765043327417540107622474L))), static_cast<RealType>(2.0), tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( complement(cauchy_distribution<RealType>(), static_cast<RealType>(0.85241638234956672582459892377526L))), static_cast<RealType>(-2.0), tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( complement(cauchy_distribution<RealType>(), static_cast<RealType>(0.031725517430553569514977118601302L))), static_cast<RealType>(10.0), tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( complement(cauchy_distribution<RealType>(), static_cast<RealType>(0.9682744825694464304850228813987L))), static_cast<RealType>(-10.0), tolerance); // % // // PDF // BOOST_CHECK_CLOSE( ::boost::math::pdf( cauchy_distribution<RealType>(), static_cast<RealType>(0.125)), // x static_cast<RealType>(0.31341281101173235351410956479511L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::pdf( cauchy_distribution<RealType>(), static_cast<RealType>(-0.125)), // x static_cast<RealType>(0.31341281101173235351410956479511L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::pdf( cauchy_distribution<RealType>(), static_cast<RealType>(0.5)), // x static_cast<RealType>(0.25464790894703253723021402139602L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::pdf( cauchy_distribution<RealType>(), static_cast<RealType>(-0.5)), // x static_cast<RealType>(0.25464790894703253723021402139602L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::pdf( cauchy_distribution<RealType>(), static_cast<RealType>(1.0)), // x static_cast<RealType>(0.15915494309189533576888376337251L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::pdf( cauchy_distribution<RealType>(), static_cast<RealType>(-1.0)), // x static_cast<RealType>(0.15915494309189533576888376337251L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::pdf( cauchy_distribution<RealType>(), static_cast<RealType>(2.0)), // x static_cast<RealType>(0.063661977236758134307553505349006L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::pdf( cauchy_distribution<RealType>(), static_cast<RealType>(-2.0)), // x static_cast<RealType>(0.063661977236758134307553505349006L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::pdf( cauchy_distribution<RealType>(), static_cast<RealType>(10.0)), // x static_cast<RealType>(0.0031515830315226799162155200667825L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::pdf( cauchy_distribution<RealType>(), static_cast<RealType>(-10.0)), // x static_cast<RealType>(0.0031515830315226799162155200667825L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::pdf( cauchy_distribution<RealType>(2, 5), static_cast<RealType>(1)), // x static_cast<RealType>(0.061213439650728975295724524374044L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::pdf( cauchy_distribution<RealType>(-2, 0.25), static_cast<RealType>(1)), // x static_cast<RealType>(0.0087809623774838805941453110826215L), // probability. tolerance); // % // // The following test values were calculated using MathCad, // precision seems to be about 10^-13. // tolerance = (std::max)(tolerance, static_cast<RealType>(1e-11)); BOOST_CHECK_CLOSE( ::boost::math::cdf( cauchy_distribution<RealType>(1, 1), static_cast<RealType>(0.125)), // x static_cast<RealType>(0.271189304634946L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::cdf( complement(cauchy_distribution<RealType>(1, 1), static_cast<RealType>(0.125))), // x static_cast<RealType>(1 - 0.271189304634946L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( cauchy_distribution<RealType>(1, 1), static_cast<RealType>(0.271189304634946L)), // x static_cast<RealType>(0.125), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::quantile( complement(cauchy_distribution<RealType>(1, 1), static_cast<RealType>(1 - 0.271189304634946L))), // x static_cast<RealType>(0.125), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::cdf( cauchy_distribution<RealType>(0, 1), static_cast<RealType>(0.125)), // x static_cast<RealType>(0.539583424160566L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::cdf( cauchy_distribution<RealType>(0, 1), static_cast<RealType>(0.5)), // x static_cast<RealType>(0.647583617650433L), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::cdf( cauchy_distribution<RealType>(0, 1), static_cast<RealType>(1)), // x static_cast<RealType>(0.750000000000000), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::cdf( cauchy_distribution<RealType>(0, 1), static_cast<RealType>(2)), // x static_cast<RealType>(0.852416382349567), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::cdf( cauchy_distribution<RealType>(0, 1), static_cast<RealType>(10)), // x static_cast<RealType>(0.968274482569447), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::cdf( cauchy_distribution<RealType>(0, 1), static_cast<RealType>(100)), // x static_cast<RealType>(0.996817007235092), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::cdf( cauchy_distribution<RealType>(0, 1), static_cast<RealType>(-0.125)), // x static_cast<RealType>(0.460416575839434), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::cdf( cauchy_distribution<RealType>(0, 1), static_cast<RealType>(-0.5)), // x static_cast<RealType>(0.352416382349567), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::cdf( cauchy_distribution<RealType>(0, 1), static_cast<RealType>(-1)), // x static_cast<RealType>(0.2500000000000000), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::cdf( cauchy_distribution<RealType>(0, 1), static_cast<RealType>(-2)), // x static_cast<RealType>(0.147583617650433), // probability. tolerance); // % BOOST_CHECK_CLOSE( ::boost::math::cdf( cauchy_distribution<RealType>(0, 1), static_cast<RealType>(-10)), // x static_cast<RealType>(0.031725517430554), // probability.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -