2
0
mirror of https://github.com/boostorg/math.git synced 2026-01-27 07:02:08 +00:00
Commit Graph

1611 Commits

Author SHA1 Message Date
jzmaddock
7d2002db80 Quadrature: add gauss and gauss-kronrod quadrature. 2017-08-31 19:42:26 +01:00
jzmaddock
e7e915816f Merge branch 'gauss_konrod' of https://github.com/NAThompson/math into gauss
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2017-08-24 11:47:26 +01:00
jzmaddock
e100973d53 Merge pull request #81 from lakshayg/noexcept
make move constructor and operator= noexcept
2017-08-23 19:02:49 +01:00
jzmaddock
f301e2a197 Merge pull request #72 from boostorg/pr66
PR66: Moved to here for integration testing.
2017-08-23 18:47:46 +01:00
Lakshay Garg
4fc8d43b4b make move constructor and operator= noexcept
This change helps the polynomial class play well with STL
containers.

> If the move constructor for an element type in a container
> is not noexcept then the container will use the copy constructor rather
> than the move constructor -- HIC++ Version 4.0

Benchmarking shows that the number of calls to copy constructor
are reduced.
2017-08-22 12:41:32 +05:30
jzmaddock
f6495af64c Polynomial: more simplifications and modernizations.
Also update msvc performance results.
2017-08-21 13:15:39 +01:00
jzmaddock
d9858963d0 Merge branch 'move' of https://github.com/lakshayg/math into pr79 2017-08-20 09:16:20 +01:00
jzmaddock
b70d7b1359 Add polynomial performance test. 2017-08-20 08:28:41 +01:00
Lakshay Garg
36b272c42b enable move semantics for polynomial 2017-08-17 09:11:40 +05:30
jzmaddock
68c80b5fc8 Merge branch 'pr66' of https://github.com/NAThompson/math into pr66_78
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2017-08-09 18:02:36 +01:00
jzmaddock
3770719aff Quadrature: Remove the minimum levels requirement on tanh_sinh. 2017-08-07 19:04:42 +01:00
jzmaddock
a928ff3df3 Quadrature: Correct logic in finding the first abscissa values which are stored as complements. 2017-08-06 13:14:42 +01:00
jzmaddock
1225612a28 quadrature: Remove unneeded test case, adjust one error rate, and finally silence some warnings. 2017-08-06 12:50:53 +01:00
jzmaddock
70e87cb407 Merge pull request #75 from boostorg/jzmaddock-patch-1
Remove forward references to gcd/lcm types:
2017-08-06 08:38:58 +01:00
jzmaddock
623263e726 Disable abs overload for __float128 when building with gcc-7 and later. 2017-08-03 11:38:16 +01:00
jzmaddock
e84195d3a6 Quadrature: Update docs.
Also add ability to get the # levels consumed from the integrators.
[skip ci]
2017-07-28 19:26:04 +01:00
jzmaddock
c3eb9e73d9 quadrature: move the tolerance into the integrate method from the constructor.
Since nothing in the constructor depends on the tolerance, and we may wish to use different integration tolerances with the same integrator object.
Update the tests to match the new interface.  Also add "direct" integration methods which do not adapt the range at all, but assume that we are using the integrators native range.
2017-07-25 18:26:21 +01:00
jzmaddock
27c1fa591f sinh_sinh: add pre-computed coefficients. 2017-07-23 18:50:38 +01:00
jzmaddock
6232615fd6 Remove forward references to gcd/lcm types:
These are no longer part of Boost.Math, but moved to Integer.
2017-07-21 18:19:56 +01:00
jzmaddock
397d8ce9c9 exp_sinh: add support for pre-computed constants. 2017-07-20 19:55:44 +01:00
jzmaddock
9d86bdefa6 Fix atomic namespaces. 2017-07-20 19:54:56 +01:00
jzmaddock
eb18bcd5aa tanh_sinh: add some missing using declarations. 2017-07-18 18:34:51 +01:00
jzmaddock
6259b8c795 tanh_sinh: add support for 2 arg user functions.
Update tests accordingly and get everything passing locally.
2017-07-16 19:18:20 +01:00
jzmaddock
3f9ae1db4e tanh_sinh: fix atomic/mutex usage to work on platforms that don't support the std:: versions. 2017-07-15 19:09:23 +01:00
jzmaddock
4334ced6a7 tanh_sinh: make the new version thread safe. 2017-07-15 17:07:59 +01:00
jzmaddock
4984809487 tanh_sinh: Add support for a minimum complement value,
so we can prune the table size when going to extreme ends of the range isn't required.
2017-07-15 16:47:55 +01:00
jzmaddock
80125ffb2c tanh_sinh: Hook up infinite limits code to use the available complements of abscissa values where appropriate. 2017-07-12 19:17:29 +01:00
jzmaddock
c986efa8f7 tanh_sinh: add precomputed coefficients for double/long double/__float128. 2017-07-11 18:45:28 +01:00
jzmaddock
2f837ee55a tanh_sinh: add back pre-computed coefficients for float case.
Also refactored code back into one header/class.
2017-07-10 19:19:46 +01:00
jzmaddock
4a5871ac71 tanh_sinh: Rework base class to cache refinements on demand. 2017-07-10 17:07:23 +01:00
jzmaddock
18938213e7 tanh_sinh: begin transforming code to calculate and store complements of abscissa values,
and use these in the range transformations so that there is no cancellation error when transforming to an abscissa value very close to zero.
2017-07-09 18:22:21 +01:00
jzmaddock
8b40c2cbb1 quadrature: Fix cpp_dec_float tests. 2017-06-26 09:02:09 +01:00
jzmaddock
6f96c8b229 quadrature: Get tests clean with older compilers.
Also make tanh_sinh constants static members since they're constants.
2017-06-25 11:44:08 +01:00
jzmaddock
040feb0240 Get the tests hooked up and working with a variety of compilers. 2017-06-24 09:48:32 +01:00
jzmaddock
b55167446f Quadrature: Policify the code,
Make tanh_sinh quadrature arbitrary precision.
Rework tests so the object files are not so large.
Added some more example integrals to the tanh_sinh tests.
2017-06-21 18:29:46 +01:00
jzmaddock
5e3fd1574e Merge branch 'double_exponential' of https://github.com/NAThompson/math into pr66 2017-06-17 18:10:25 +01:00
jzmaddock
9a8324c989 Merge pull request #71 from boostorg/pr65
PR based on #65 prepared for CI testing
2017-06-17 09:02:56 +01:00
jzmaddock
fdd959a32f Merge branch 'cleanup' of https://github.com/NAThompson/math into pr65.
Also made a couple of  minor modifications.
2017-06-16 19:35:13 +01:00
jzmaddock
34d413e830 trapezoidal: More fixes prior to merging:
Add new documentation section for integrators.
Remove isfinite from std_real_concept.hpp - it's not part of our conceptual requirements.
Add workarounds for older compilers that can't handle the default arguments to the function.
Restrict testing test_trapezoidal.cpp to compilers that handle lambdas.
Make the concept checks C++03.
Make test_trapezoidal.cpp compile with VC11's broken lambda support.
2017-06-16 18:13:42 +01:00
jzmaddock
f435cd3451 Bring trapezoidal.hpp more into line with the rest of Boost.Math:
Add policy support for error handling and epsilon.
Fix some warnings in the test case (msvc).
2017-06-15 19:14:31 +01:00
jzmaddock
a8bb78d25b Merge branch 'romberg' of https://github.com/NAThompson/math into pr59
# Resolved Conflicts:
#	test/Jamfile.v2
2017-06-15 18:26:48 +01:00
jzmaddock
cf0668eb62 Fix bessel N functions to behave correctly with decimal number types. 2017-06-13 18:54:48 +01:00
jzmaddock
4b90631b84 next.hpp: workarounds for std libs with no max_digist10
Only invoke numeric_limits<>::max_digits10 for decimal multiprecision types.
Also make sure our traits classes are instantiated on the actual number type, not an expression template.
2017-06-11 19:49:43 +01:00
jzmaddock
9b2f878103 Update next.hpp and ulp.hpp to work with decimal types. 2017-06-10 11:11:58 +01:00
jzmaddock
5c3624c0b8 Address CI failures:
* Fix bjam command line in appveyor file.
* Fix assertions triggered in bessel_i0.hpp.
* Remove common factor testing - it's moved to integer.
* Add lots of additional {} in initializers to silence clang warnings.
2017-06-04 13:12:33 +01:00
jzmaddock
0242c64eec float_distance: Fix cases that span several orders of magnitude.
Add more tests.
See https://github.com/boostorg/multiprecision/issues/22.
2017-06-02 19:40:52 +01:00
jzmaddock
37783e519a Bessel_I0: decimal number types shouldn't use numeric_limits::digits to judge precision. 2017-05-21 08:49:06 +01:00
Nick Thompson
23403b61a1 Add concept test and include test. 2017-05-18 19:02:29 -06:00
Nick
1753d6e9e4 Merge branch 'develop' into romberg 2017-05-18 17:34:52 -06:00
Nick Thompson
7660162d41 Add concept and include test. 2017-05-18 17:33:45 -06:00