$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r66718 - trunk/libs/math/test
From: pbristow_at_[hidden]
Date: 2010-11-24 11:28:20
Author: pbristow
Date: 2010-11-24 11:28:18 EST (Wed, 24 Nov 2010)
New Revision: 66718
URL: http://svn.boost.org/trac/boost/changeset/66718
Log:
New test /test_real_concept_neg_bin.cpp
Added:
   trunk/libs/math/test/test_real_concept_neg_bin.cpp   (contents, props changed)
Added: trunk/libs/math/test/test_real_concept_neg_bin.cpp
==============================================================================
--- (empty file)
+++ trunk/libs/math/test/test_real_concept_neg_bin.cpp	2010-11-24 11:28:18 EST (Wed, 24 Nov 2010)
@@ -0,0 +1,52 @@
+// test_real_concept.cpp
+
+// Copyright Paul A. Bristow 2010.
+// Copyright John Maddock 2010.
+
+// Use, modification and distribution are subject to the
+// Boost Software License, Version 1.0.
+// (See accompanying file LICENSE_1_0.txt
+// or copy at http://www.boost.org/LICENSE_1_0.txt)
+
+// Tests real_concept for Negative Binomial and Geometric Distribution.
+// find_upper_bound ...
+
+#include <boost/math/concepts/real_concept.hpp> // for real_concept
+using ::boost::math::concepts::real_concept;
+
+#include <boost/math/distributions/geometric.hpp> // for geometric_distribution
+using boost::math::geometric_distribution;
+using boost::math::geometric; // using typedef for geometric_distribution<double> 
+
+#include <boost/math/distributions/negative_binomial.hpp> // for some comparisons.
+
+#include <iostream>
+using std::cout;
+using std::endl;
+using std::setprecision;
+using std::showpoint;
+#include <limits>
+using std::numeric_limits;
+
+template <class RealType>
+void test_spot(RealType)
+{
+    using boost::math::negative_binomial_distribution;
+
+    // NOT boost::math::negative_binomial or boost::math::geometric 
+    // - because then you get the default negative_binomial_distribution<double>!!!
+
+    RealType k = static_cast<RealType>(2.L);
+    RealType alpha = static_cast<RealType>(0.05L);
+    RealType p = static_cast<RealType>(0.5L);
+    RealType result;
+    result = negative_binomial_distribution<RealType>::find_lower_bound_on_p(static_cast<RealType>(k), static_cast<RealType>(1), static_cast<RealType>(alpha));
+    result = negative_binomial_distribution<RealType>::find_lower_bound_on_p(k, 1, alpha);
+    result = geometric_distribution<RealType>::find_lower_bound_on_p(k, alpha);
+}
+
+int main()
+{
+  test_spot(boost::math::concepts::real_concept(0.)); // Test real concept.
+  return 0;
+}