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

1670 Commits

Author SHA1 Message Date
Matt Borland
4d20bfd0bf Fix X11 naming clash in roots 2024-03-27 12:40:48 +01:00
jzmaddock
7fa77fcac6 Update revision history.
Regenerate docs.
2024-03-03 17:36:56 +00: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
Nick
4ee83916c5 Differential evolution (#1062)
* Differential evolution

---------

Co-authored-by: Matt Borland <matt@mattborland.com>
2024-01-01 17:09:16 -08:00
Matt Borland
8332808ebc Address review comments [CI SKIP] 2023-12-22 07:13:10 -05:00
Matt Borland
de67ad3207 Rename our components 2023-12-22 05:09:32 -05:00
Matt Borland
f7f96150df Update version history (#1053) 2023-11-18 15:28:38 +01:00
Matt Borland
2dd018b8c7 Revert "Update version history."
This reverts commit d938d3e836.
2023-11-18 08:30:17 +01:00
jzmaddock
d938d3e836 Update version history.
[CI SKIP]
2023-11-17 18:25:02 +00: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
32aef74edb Add chatterjee_correlation to doc index (#991) 2023-06-02 13:03:28 +02:00
Matt Borland
ba36dbecab Update docs 2023-05-31 09:38:47 +02:00
Matt Borland
0a222f6e92 Fix out of date links in the distribution docs (#986) 2023-05-22 13:20:02 +02:00
jzmaddock
7203fa2def Fix library version number.
Regenerate docs.
[CI SKIP]
2023-02-23 18:15:50 +00:00
jzmaddock
016da990e2 Update history.
Regenerate docs.
2023-02-23 17:13:51 +00: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
jzmaddock
aad4f85955 Improve powm1 error handling.
Makes 0^-n an overflow error (which matches std::pow which returns +INF rather than a NaN).
Fixes https://github.com/boostorg/math/issues/781.
2022-11-24 18:43:32 +00:00
jzmaddock
4631716f66 s/constructable/constructible/
[CI SKIP]
2022-11-10 18:49:37 +00:00
Rose
fe48a3bba7 Junk removal
Removal of junk headers, typos, or mistakenly duplicated keywords
2022-11-05 12:14:12 -04:00
jzmaddock
86c24916b2 Assert when features which require C++17 are compiled for an earlier C++ version.
Also document C++17 requirement for norms.
2022-10-25 18:51:29 +01:00
jzmaddock
a8f0f0a1e2 Update history.
Regenerate docs.
Fix a few quickbook build warnings.
[CI SKIP]
2022-10-24 18:49:57 +01:00
Warren Weckesser
eb3fa54761 DOC: Fix a typo in the 'Standalone Usage' section. (#852) 2022-10-23 14:30:41 -07: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
jzmaddock
10bd7be0f1 ellint_1/2 performance tweaks.
Add Google bench to probe changes more easily.
Update graphs and docs.
2022-08-17 19:21:03 +01:00
RL-S
631888be03 Corrected path of cubic_roots.hpp in doc 2022-07-15 17:14:17 +02:00
RL-S
2722120dae Corrected path of quartic_roots.hpp in doc 2022-07-15 17:14:14 +02:00
Matt Borland
1cbf7e2c3d constexpr signbit (#793)
Implements constexpr signbit with annotated caveats during compile time.
2022-07-02 11:47:03 -07:00
Matt Borland
ae0fe3d751 Constexpr next (#789)
Implements constexpr: nextafter, nextafterf, nextafterl, nexttoward, nexttowardf, and nexttowardl as described in P0533R9
2022-06-29 08:44:54 -07:00
jzmaddock
4ffe9bb26c Update history and regenerate docs.
[CI SKIP]
2022-06-25 19:38:28 +01:00
Matt Borland
3107abaa8a Constexpr fma (#734)
* constexpr fma

* Improve use of intrinsics for calculation

* Changes to intrinsics and address sonarlint comments
2022-05-30 13:35:54 -07:00
Matt Borland
e5eae18f14 Chatterjee Correlation Coefficient (#770)
* Implement rank vector

[ci skip]

* Add documentation. Admittedly terrible.

* Add unit tests.

* Cleanup method of detecting if execution policies are valid or not

[ci skip]

* Implement and test chatterjee correlation

[ci skip]

* Add spot checks and special handling for constant Y

[ci skip]

* Add performance file

[ci skip]

* Add execution policy support to rank

[ci skip]

* Remove duplicates from v when generating the order vector

[ci skip]

* Fix macro error for use of <execution>

[ci skip]

* Use explicit types instead of auto to avoid warnings 

[ci skip]

* Add execution policy testing to rank

[ci skip]

* Add threaded implementation

[ci skip]

* Added threaded testing

* Fix formatting and ASCII issues in test

* Fix more ASCII issues

* refactoring

* Fix threaded impl

* Remove non-ASCII apostrophe

[ci skip]

* Doc fixes and add test comparing generally to paper values

* Significantly tighten tolerance around expected values from paper

* Change tolerance for sin comparison

Co-authored-by: Nick Thompson <nathompson7@protonmail.com>
2022-05-25 08:13:24 -07:00
jzmaddock
0a1c4ca3aa Merge pull request #774 from boostorg/color_table_eg
Add further color map example
2022-03-14 17:30:33 +00:00
jzmaddock
f0b818a6d0 Regenerate docs, add missing files.
[CI SKIP]
2022-03-12 16:02:18 +00:00
jzmaddock
5da27935f2 Added further color table example. 2022-03-10 19:33:51 +00:00
jzmaddock
b22105f141 Update version number in docs.
[CI SKIP]
2022-03-08 16:08:03 +00:00
jzmaddock
b5589965e6 Update history and regenerate docs.
Also fix some missing documentation links.
[CI SKIP]
2022-03-08 15:56:22 +00:00
Gregory Lee
c001a885dc small correction to F distribution docs (#766) 2022-02-24 21:40:02 -08:00
Matt Borland
e8c40e309c Implement logaddexp (#763)
* Implement logaddexp

* Disable test for ASAN

* Implement logsumexp

* Add performance file and include results in the docs

* Address review comments

* Simplify overflow test and comply with min/max guidelines

* Minor cleanup

* FIxes to comments and docs [ci skip]

* Return status code.

Co-authored-by: Nick Thompson <nathompson7@protonmail.com>
2022-02-24 07:55:25 -08:00
Nick
d063799531 Do not use an unguarded Newton iterate to polish roots; it goes crazy near a double root. (#759) 2022-02-13 16:06:02 -08:00
jzmaddock
a6ee67e19a Fix 2 minor typos in distribution docs.
[CI SKIP]
2022-02-10 18:45:36 +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
Matt Borland
50008bb6ba constexpr isunordered (#745) 2022-01-21 08:07:07 -08:00
Matt Borland
e1601f129a Complete CI test with standalone mode (#680) 2022-01-14 08:12:22 -08:00
Matt Borland
18a0874056 Constexpr comparison functions (#736) 2022-01-09 09:28:13 -08:00
Matt Borland
9e369be7a4 Constexpr fmin and fmax (#732) 2022-01-06 11:02:41 -08:00