2
0
mirror of https://github.com/boostorg/math.git synced 2026-01-19 04:22:09 +00:00
Commit Graph

559 Commits

Author SHA1 Message Date
Matt Borland
c9be742a98 Fix example 2024-02-22 10:01:55 +01:00
Nick Thompson
b7a62c4a29 TLC for optimization docs 2024-02-12 14:23:01 -08:00
Nick Thompson
222d266048 CMA-ES 2024-02-09 12:09:53 -08:00
Nick
fccad84bf5 Random search (#1071) 2024-01-24 17:26:24 -08:00
Nick
a1f7a305ee Algorithm jSO (#1065)
Follows: Brest, Janez, Mirjam Sepesy Maucec, and Borko Boskovic. "Single objective real-parameter optimization: Algorithm jSO." 2017 IEEE congress on evolutionary computation (CEC). IEEE, 2017.
2024-01-22 14:06:52 -08:00
Nick
de9a1a0ee5 Fix race conditions in differential evolution (#1063)
Through a combination of silly mistakes, I missed a pile of race conditions in the OpenMP threading.

Switch to C++ threading. Note that this change requires serial generation of trial vectors.

Hopefully I can figure out to parallelize the generation of trial vectors to reduce the serial section a la Ahmdahl's law,
while simultaneously keeping thread sanitizer happy.
2024-01-17 10:20:41 -08:00
Matt Borland
79b4015d4d Add codecov run to CI (#1061)
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
2024-01-05 09:00:24 +01:00
Nick
4ee83916c5 Differential evolution (#1062)
* Differential evolution

---------

Co-authored-by: Matt Borland <matt@mattborland.com>
2024-01-01 17:09:16 -08:00
ryanelandt
2c74b149b0 has_denorm_now (#1029)
* initial commit

* remove == std::denorm_present

* remove extra ) in ccmath/next
2023-10-30 09:37:29 +01:00
Nick
7887d43f83 Numerical evaluation of Fourier transform of Daubechies scaling funct… (#921)
* Numerical evaluation of Fourier transform of Daubechies scaling functions.

* Update example/calculate_fourier_transform_daubechies_constants.cpp

Co-authored-by: Matt Borland <matt@mattborland.com>

* Update example/fourier_transform_daubechies_ulp_plot.cpp

Co-authored-by: Matt Borland <matt@mattborland.com>

* Update include/boost/math/special_functions/fourier_transform_daubechies_scaling.hpp

Co-authored-by: Matt Borland <matt@mattborland.com>

* Update include/boost/math/special_functions/fourier_transform_daubechies_scaling.hpp

Co-authored-by: Matt Borland <matt@mattborland.com>

* Rename include file to reflect it implements both the scaling and wavelet.

* Add performance to docs.

* Update test/math_unit_test.hpp

Co-authored-by: Matt Borland <matt@mattborland.com>

* Add boost-no-inspect to files with non-ASCII characters.

---------

Co-authored-by: Matt Borland <matt@mattborland.com>
2023-06-13 08:05:00 -07:00
Matt Borland
77c8e2aa14 Remove unneeded boost library includes 2023-03-09 08:26:46 -08:00
Nick
4aac532a88 Add Estrin's method for polynomial evaluation (#932)
* Add Estrin's method for polynomial evaluation

N.B.: This is a slightly modified version of the code provided by Thomas Dybdahl Ahle in a github issue.

[CI SKIP] [ci skip]

* Add comparisons to Horner with std::array.
[CI SKIP]

* Add Estrin's method for polynomial evaluation

N.B.: This is a slightly modified version of the code provided by Thomas Dybdahl Ahle in a github issue.

[CI SKIP] [ci skip]

* Fix hang in n=0 case.

* Fix out of bounds access in test.

* Fix endsect for estrin.qbk.

* Apply clang-format to make the 'inspect' stage happy.

* Add type_traits header to includes.

* Add ulp plot.

* Document decreased accuracy of Estrin's method.

* Add assertion for size of scratch pad

* Remove std::size since it is C++17

* Add C++14 testing

* estrin -> evaluate_polynomial_estrin.

---------

Co-authored-by: jzmaddock <john@johnmaddock.co.uk>
Co-authored-by: Matt Borland <matt@mattborland.com>
2023-02-04 10:32:06 -08:00
Rose
dbb1ae7667 Use cfloat instead of float.h
It would be more consistent to use the C++ headers instead of the C ones.
2022-12-09 11:07:42 -05:00
Rose
fe48a3bba7 Junk removal
Removal of junk headers, typos, or mistakenly duplicated keywords
2022-11-05 12:14:12 -04:00
jzmaddock
ddf0143a8c BREAKING CHANGE: Correct definition of user_rounding_error, (#836)
* BREAKING CHANGE: Correct definition of user_rounding_error,
To return correct type.
Likewise fix up a few other rounding error inconsistencies.
Fixes https://github.com/boostorg/math/issues/834.

* Remove redundant error handler.
2022-10-09 09:14:27 +01:00
Jonathan Wakely
b3cec0c732 Replace non-UTF-8 copyright character 2022-06-14 17:55:04 +01:00
Warren Weckesser
222b81e019 Fix repeated name in example/policy_eg_1.cpp 2022-04-13 15:42:51 -04:00
jzmaddock
5da27935f2 Added further color table example. 2022-03-10 19:33:51 +00:00
Matt Borland
3e950d9e3a Color Maps (#752)
* Color Maps

* Make color maps constexpr

[ci skip]

* Add newton fractal example

[ci skip]

* Remove some unused code.

* Make the color map base class generic in size

Fix naming convention
[ci skip]

* Begin documentation.

* Move helper functions from example into tools header

[ci skip]

* Update docs and remove non-ASCII characters from example

* Add image to docs

* Reduce size of virdis_newton_fractal from 1.31MB to 131KB

[ci skip]

* Add performance file

* Don't force linear complexity and fix CI failure for old clang versions

* Convert color_maps to free functions.

* Add missing header and remove constexpr test

* Convert tabs to spaces

[ci skip]

* Fix compile tests and make static constexpr uniform across data

* Add swatches to docs.

* Fix image links in docs

[ci skip]

Co-authored-by: Nick Thompson <nathompson7@protonmail.com>
2022-02-09 11:19:38 +01:00
jzmaddock
7850b8c2dd Correct some CI test failures.
Stop referencing boost::lexical_cast even in templates which aren't instantiated.
Fix missing macro definition in tr1.hpp.
Correct include order in some tests so we get consistent definitions for BOOST_HAS_FLOAT128.
2022-01-17 19:37:08 +00:00
Matt Borland
e1601f129a Complete CI test with standalone mode (#680) 2022-01-14 08:12:22 -08:00
jzmaddock
d4de174bbb Prep for 1.77:
Rework hypergeometric distro equations.
Fix up Fibonacci docs.
Fix Fibonacci constexpr and noexcept usage and add to testing.
Regenerate docs.
2021-06-27 19:38:05 +01:00
Nick
0cd6039cb1 Minimax and distribution_explorer to examples. (#620)
* Minimax and distribution_explorer to examples.

* Move minimax to tools.
2021-05-03 09:12:58 -04:00
Matt Borland
12b3c8a7e7 Standalone tests (#606)
* Add missing distribution compile tests

* Add cstdfloat compile tests

* Rename and finish differentiation

* Add interpolators compile tests and fixes

* Reorganize/add quadrature compile tests

* Add missing sf tests and fixes for failures

* Add tools incl tests and fixes

* Add compile tests to jamfile plus collected fixes

* Collected fixes for CI failures

* Fix fftw config

* Remove lexical cast from arcsine dist [ci skip]

* Improve cstdfloat tests [ci skip]

* Improve differentiation tests [ci skip]

* Improve distribution testing [ci skip]

* Updates to interpolator tests [ci skip]

* Improve quadrature tests [ci skip]

* Improve sf tests [ci skip]

* Improve tools tests

* Collected CI fixes

* Fix for MSVC 14.2 array allocation error
[windows]

* MSVC 14.2 workarounds
[windows]

* Fix float128 and interpolators tests

* Add standalone testing on clang
[standalone]

* Fixes for type mismatches on MSVC
[windows]

* Fix for MSVC 14.0 fail from missing header
[windows]

* Change barycentric rational namespace
[ci skip]

* Fix standalone clang warnings

* Change namespace in barycentric examples
2021-04-22 14:44:21 -04:00
jzmaddock
adcf95b784 Merge pull request #597 from mborland/standalone
Complete Standalone Mode
2021-04-04 17:35:10 +01:00
jzmaddock
e074db139c Merge pull request #599 from pratik-a/develop
return added
2021-04-04 09:17:21 +01:00
PRATIK AWASTHI
19d86ffa89 return added 2021-04-04 02:43:06 +05:30
jzmaddock
544258569b Fixes for inspect failures in doc/ and example/ 2021-03-30 11:04:16 +01:00
Matt Borland
ea323e6e1b Remove boost.lexical_cast dependency 2021-03-29 19:59:29 +03:00
Matt Borland
18af162377 Change include directories 2021-03-27 18:09:38 +03:00
Matt Borland
c79965c46c Add CMake Link Flags and Reduce CI for testing 2021-03-27 17:51:40 +03:00
Matt Borland
2c4c1a04e8 Get examples working with CMake and Standalone
[ci skip]
2021-03-27 14:41:59 +03:00
Matt Borland
070c1ceb78 Remove BOOST_CONSTEXPR 2021-03-23 20:32:55 +03:00
Matt Borland
8ebac14382 Bulk replacement of BOOST_MSVC 2021-03-23 18:39:09 +03:00
Matt Borland
26711525ca Remove uses of boost/cstdint without header called 2021-03-21 16:13:10 +03:00
Matt Borland
8c4bac90e9 Cleanup examples 2021-03-21 09:14:15 +03:00
Matt Borland
d6a04ab194 Remove all BOOST_MATH_STATIC_ASSERT_MSG 2021-03-16 22:42:09 +03:00
Matt Borland
c1f7a55aa6 Merge remote-tracking branch 'origin/develop' into assert [ci skip] 2021-03-16 20:30:05 +03:00
Madhur Chauhan
68d6a75f7c Fibonacci numbers (#376)
* Fibonacci: Initial commit. Working.

* Fibonacci: Address Nick's comments. Added unchecked factorial.

* Fibonacci: Improved overflow testing

* Fibonacci: Added unit tests

* Fibonacci: Performance report

* Fibonacci: Nick's comments - Complexity

* Fibonacci: Add UT to Jamfile

* Make Fibonacci and UT C++03 friendly.

Add UT to Jamfile.

* Fibonacci: Remove GMP dependency

* 1. Added fibonacci generator with unit tests
2. Added example of reciprocal fibonacci constant

* [CI SKIP] Fibonacci: First cut at documentation

* Fibonacci: Finishing up changes [CI SKIP]

* Fibonacci: Removing unnecessary html files

* fibonacci: rename to unchecked_fibonacci

* fibonacci: remove documentation

Co-authored-by: Created by Ansible <madhur@dev-sng-build1.kdev>
2021-03-16 09:11:10 -04:00
Matt Borland
fbadd8d653 remove boost.static_assert 2021-03-14 12:49:38 +03:00
Matt Borland
d59c734c5e Remove boost.assert 2021-03-14 12:22:26 +03:00
jzmaddock
93467954a9 Fix up Jamfiles for C++11 s a requirement.
Fixes: https://github.com/boostorg/math/issues/531.
2021-02-13 19:40:50 +00:00
Nick
cbd2af2890 Cohen acceleration (#415)
* Cohen acceleration

Accelerates convergence of an alternating series by a method designed by Cohen, Villegas, and Zagier.
2020-08-09 09:55:56 -04:00
Nick
ee2cd5d5e5 Luroth expansions (#401) 2020-07-18 09:28:39 -04:00
Nick
fbb62f01c5 Centered continued fractions (#379)
* Centered continued fraction [CI SKIP]

* Document centered cfrac. [CI SKIP]

* Unit tests for centered continued fraction [CI SKIP]

* Kick off build.

* Fix syntax error in docs [CI SKIP]

* Fix ADL.
2020-06-28 14:20:52 -04:00
Nick
1ac89b2b02 Simple continued fraction (#377)
* Simple continued fraction [CI SKIP]

* Comments on error analysis [CI SKIP]

* Simple continued fraction [CI SKIP]

* Clarify comment and kick off build.
2020-06-26 14:50:04 -04:00
Nick
7bffe68938 Fix agm_example.cpp build on Windows. [CI SKIP] 2020-05-31 13:01:39 -04:00
Nick
9a45e6a358 AGM 2020-05-29 21:50:25 -04:00
Nick
3c3217d2cd Remove some internal dependencies for Daubechies wavelets. (#356) 2020-05-20 14:07:19 -04:00
Edward Diener
6d678efbf7 Change __BORLANDC__ to BOOST_BORLANDC and __CODEGEARC__ to BOOST_CODEGEARC, which is defined in Boost config for the Embarcadero non-clang-based compilers. (#345) 2020-05-06 11:46:51 -04:00