Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r65674 - trunk/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview
From: pbristow_at_[hidden]
Date: 2010-09-29 09:46:43


Author: pbristow
Date: 2010-09-29 09:46:42 EDT (Wed, 29 Sep 2010)
New Revision: 65674
URL: http://svn.boost.org/trac/boost/changeset/65674

Log:
New section
Added:
   trunk/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/FAQ.html (contents, props changed)

Added: trunk/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/FAQ.html
==============================================================================
--- (empty file)
+++ trunk/libs/math/doc/sf_and_dist/html/math_toolkit/main_overview/FAQ.html 2010-09-29 09:46:42 EDT (Wed, 29 Sep 2010)
@@ -0,0 +1,195 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
+<title>Frequently Asked Questions FAQ</title>
+<link rel="stylesheet" href="../../../../../../../doc/src/boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
+<link rel="home" href="../../index.html" title="Math Toolkit">
+<link rel="up" href="../main_overview.html" title="Overview">
+<link rel="prev" href="tr1.html" title="C99 and C++ TR1 C-style Functions">
+<link rel="next" href="contact.html" title="Contact Info and Support">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="tr1.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../main_overview.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="contact.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="math_toolkit.main_overview.faq"></a><a class="link" href="faq.html" title="Frequently Asked Questions FAQ">Frequently Asked Questions
+ FAQ</a>
+</h3></div></div></div>
+<div class="orderedlist"><ol type="1">
+<li>
+ <span class="emphasis"><em>I'm a FORTRAN/NAG/SPSS/SAS/Cephes/MathCad/R user and I don't
+ see where the functions like dnorm(mean, sd) are in Boost.Math?</em></span>
+ <br> Nearly all are provided, and many more like mean, skewness, quantiles,
+ complements ... but Boost.Math makes full use of C++, and it looks a
+ bit different. But do not panic! See section on construction and the
+ many examples. Briefly, the distribution is constructed with the parameters
+ (like location and scale) (things after the | in representation like
+ P(X=k|n, p) or ; in a common represention of pdf f(x; &#956;&#963;[super [2]). Functions
+ like pdf, cdf are called with the name of that distribution and the random
+ variate often called x or k. For example, <code class="computeroutput"><span class="identifier">normal</span>
+ <span class="identifier">my_norm</span><span class="special">(</span><span class="number">0</span><span class="special">,</span> <span class="number">1</span><span class="special">);</span> <span class="identifier">pdf</span><span class="special">(</span><span class="identifier">my_norm</span><span class="special">,</span> <span class="number">2.0</span><span class="special">);</span></code>
+ <br>
+ </li>
+<li>
+ <span class="emphasis"><em>I'm allegic to reading manuals and prefer to learn from examples.</em></span><br>
+ Fear not - you are not alone! Many examples are available for functions
+ and distributions. Some are referenced directly from the text. Others
+ can be found at \boost_latest_release\libs\math\example. If you are a
+ Visual Studio user, you should be able to create projects from each of
+ these, making sure that the Boost library is in the include directories
+ list.
+ </li>
+<li>
+ <span class="emphasis"><em>How do I make sure that the Boost library is in the Visual
+ Studio include directories list?</em></span><br> You can add an include
+ path, for example, your Boost place /boost-latest_release, for example
+ <code class="computeroutput"><span class="identifier">X</span><span class="special">:/</span><span class="identifier">boost_1_45_0</span><span class="special">/</span></code>
+ if you have a separate partition X for Boost releases. Or you can use
+ an environment variable BOOST_ROOT set to your Boost place, and include
+ that. Visual Studio before 2010 provided Tools, Options, VC++ Directories
+ to control directories: Visual Studio 2010 instead provides property
+ sheets to assist. You may find it convenient to create a new one adding
+ \boost-latest_release; to the existing include items in $(IncludePath).
+ </li>
+<li>
+ <span class="emphasis"><em>I'm a FORTRAN/NAG/SPSS/SAS/Cephes/MathCad/R user and I don't
+ see where the properties like mean, median, mode, variance, skewness
+ of distributions are in Boost.Math?</em></span><br> They are all available
+ (if defined for the parameters with which you constructed the distribution)
+ via <a class="link" href="../dist/dist_ref/nmp.html#math.dist.cdf">Cumulative Distribution Function</a>,
+ <a class="link" href="../dist/dist_ref/nmp.html#math.dist.pdf">Probability Density Function</a>, <a class="link" href="../dist/dist_ref/nmp.html#math.dist.quantile">Quantile</a>, <a class="link" href="../dist/dist_ref/nmp.html#math.dist.hazard">Hazard
+ Function</a>, <a class="link" href="../dist/dist_ref/nmp.html#math.dist.chf">Cumulative Hazard Function</a>,
+ <a class="link" href="../dist/dist_ref/nmp.html#math.dist.mean">mean</a>, <a class="link" href="../dist/dist_ref/nmp.html#math.dist.median">median</a>,
+ <a class="link" href="../dist/dist_ref/nmp.html#math.dist.mode">mode</a>, <a class="link" href="../dist/dist_ref/nmp.html#math.dist.variance">variance</a>,
+ <a class="link" href="../dist/dist_ref/nmp.html#math.dist.sd">standard deviation</a>, <a class="link" href="../dist/dist_ref/nmp.html#math.dist.skewness">skewness</a>,
+ <a class="link" href="../dist/dist_ref/nmp.html#math.dist.kurtosis">kurtosis</a>, <a class="link" href="../dist/dist_ref/nmp.html#math.dist.kurtosis_excess">kurtosis_excess</a>,
+ <a class="link" href="../dist/dist_ref/nmp.html#math.dist.range">range</a> and <a class="link" href="../dist/dist_ref/nmp.html#math.dist.support">support</a>.
+ </li>
+<li>
+ <span class="emphasis"><em>I am a C programmer. Can I user Boost.Math with C?</em></span><br>
+ Yes you can, including all the special functions, and TR1 functions like
+ isnan. They appear as C functions, by being declared as "extern
+ C".
+ </li>
+<li>
+ <span class="emphasis"><em>I am a C# (Basic? F# FORTRAN? Other CLI?) programmer. Can I
+ use Boost.Math with C#?</em></span> <br> Yes you can, including all
+ the special functions, and TR1 functions like isnan. But you <span class="bold"><strong>must build the Boost.Math as a dynamic library (.dll) and
+ compile with the /CLI option</strong></span>. See the boost/math/dot_net_example
+ folder which contains an example that builds a simple statistical distribution
+ app with a GUI. See <a href="http://sourceforge.net/projects/distexplorer/" target="_top">Statistical
+ Distribution Explorer</a> <br>
+ </li>
+<li>
+ <span class="emphasis"><em>What these "policies" things for?</em></span> <br>
+ Policies are a powerful (if necessarily complex) fine-grain mechanism
+ that allow you to customise the behaviour of the Boost.Math library according
+ to your precise needs. See <a class="link" href="../policy.html" title="Policies">Policies</a>.
+ But if, very probably, the default behaviour suits you, you don't need
+ to know more.
+ </li>
+<li>
+ <span class="emphasis"><em>I am a C user and expect to see global C-style<code class="computeroutput"><span class="special">::</span><span class="identifier">errno</span></code>
+ set for overflow/errors etc?</em></span> <br> You can achieve what you
+ want - see <a class="link" href="../policy/pol_ref/error_handling_policies.html" title="Error Handling Policies">error
+ handling policies</a> and <a class="link" href="../policy/pol_tutorial/user_def_err_pol.html" title="Calling User Defined Error Handlers">user
+ error handling</a> and many examples.
+ </li>
+<li>
+ <span class="emphasis"><em>I am a C user and expect to silently return a max value for
+ overflow?</em></span> <br> You (and C++ users too) can return whatever
+ you want on overflow - see <a class="link" href="error_handling.html#overflow_error">overflow_error</a>
+ and <a class="link" href="../policy/pol_ref/error_handling_policies.html" title="Error Handling Policies">error
+ handling policies</a> and several examples.
+ </li>
+<li>
+ <span class="emphasis"><em>I don't want any error message for overflow etc?</em></span>
+ <br> You can control exactly what happens for all the abnormal conditions,
+ including the values returned. See <a class="link" href="error_handling.html#domain_error">domain_error</a>,
+ <a class="link" href="error_handling.html#overflow_error">overflow_error</a> <a class="link" href="../policy/pol_ref/error_handling_policies.html" title="Error Handling Policies">error
+ handling policies</a> <a class="link" href="../policy/pol_tutorial/user_def_err_pol.html" title="Calling User Defined Error Handlers">user
+ error handling</a> etc and examples.
+ </li>
+<li>
+ <span class="emphasis"><em>My environment doesn't allow and/or I don't want exceptions.
+ Can I still user Boost.Math?</em></span> <br> Yes but you must customise
+ the error handling: see <a class="link" href="../policy/pol_tutorial/user_def_err_pol.html" title="Calling User Defined Error Handlers">user
+ error handling</a> and <a class="link" href="../policy/pol_ref/policy_defaults.html" title="Using macros to Change the Policy Defaults">changing
+ policies defaults</a> .
+ </li>
+<li>
+ <span class="emphasis"><em>The docs are several hundreds of pages long! Can I read the
+ docs off-line or on paper?</em></span> <br> Yes - you can download the
+ Boost current release of most documentation as a zip of pdfs (including
+ Boost.Math) from Sourceforge, for example https://sourceforge.net/projects/boost/files/boost-docs/1.45.0/boost_pdf_1_45_0.tar.gz/download.
+ And you can print any pages you need (or even print all pages - but be
+ warned that there are several hundred!). Both html and pdf versions are
+ highly hyperlinked. The entire Boost.Math pdf can be searched with Adobe
+ Reader, Edit, Find ... This can often find what you seek, a partial substitute
+ for a full index.
+ </li>
+<li>
+ <span class="emphasis"><em>I want a compact version for an embedded application. Can I
+ use float precision?</em></span> <br> Yes - by selecting RealType template
+ parameter as float: for example normal_distribution&lt;float&gt; your_normal(mean,
+ sd); (But double may still be used internally, so space saving may be
+ less that you hope for). You can also change the promotion policy, but
+ accuracy might be much reduced.
+ </li>
+<li>
+ <span class="emphasis"><em>I seem to get somewhat different results compared to other
+ programs. Why?</em></span> We hope Boost.Math to be more accurate: our
+ priority is accuracy (over speed). See the section on accuracy. But for
+ evaluations that require iterations there are parameters which can change
+ the required accuracy. You might be able to squeeze a little more accuracy
+ at the cost of runtime.
+ </li>
+<li>
+ <span class="emphasis"><em>Will my program run more slowly compared to other math functions
+ and statistical libraries?</em></span> Probably, thought not always, and
+ not by too much: our priority is accuracy. For most functions, making
+ sure you have the latest compiler version with all optimisations switched
+ on is the key to speed. For evaluations that require iteration, you may
+ be able to gain a little more speed at the expense of accuracy. See detailed
+ suggestions and results on <a class="link" href="../perf.html" title="Performance">performance</a>.
+ </li>
+<li>
+ <span class="emphasis"><em>Where are the pre-built libraries?</em></span> <br> Good news
+ - you probably don't need any! - just #include &lt;boost/math/distribution_you_want&gt;.
+ But in the unlikely event that you do, see <a class="link" href="building.html" title="If and How to Build a Boost.Math Library, and its Examples and Tests">building
+ libraries</a>.
+ </li>
+<li>
+ <span class="emphasis"><em>I don't see the function or distribution that I want.</em></span>
+ <br> You could try an email to ask the authors - but no promises!
+ </li>
+</ol></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><div class="copyright-footer">Copyright &#169; 2006 , 2007, 2008, 2009, 2010 John Maddock, Paul A. Bristow,
+ Hubert Holin, Xiaogang Zhang, Bruno Lalande, Johan R&#229;de, Gautam Sewani and
+ Thijs van den Berg<p>
+ Distributed under 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)
+ </p>
+</div></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="tr1.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../main_overview.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="contact.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk