Commit Graph

630 Commits

Author SHA1 Message Date
Hans Dembinski
4a2e3db0e0
upload edits on docs and minor code fixes (#152)
* renaming naked to remove_cvref_t
* more static_asserts to check implicit conditions
* use new BOOST_TEST_TRAIT_SAME
* reorganize and add operator tests, fixes for array and map adaptors
* improved map adaptor
* storage does not have to support scaling operator anymore
* doc improvements
2019-02-10 22:45:00 +01:00
Hans Dembinski
53b66cafc8 squash a few warnings on the boost matrix 2019-02-09 17:11:42 +01:00
Hans Dembinski
b7b945a0bc fixing the test in both build systems 2019-02-09 15:56:08 +01:00
Hans Dembinski
718952e589 fixed building tests and examples 2019-02-08 17:11:26 +01:00
Hans Dembinski
ee6051f83c adding defines to test 2019-02-08 16:44:03 +01:00
Hans Dembinski
ddc20134ff fixing benchmark build 2019-02-08 16:26:41 +01:00
Hans Dembinski
123e91c312 removing more project ids 2019-02-08 15:52:39 +01:00
Hans Dembinski
918f6199b4 updating test builds 2019-02-08 15:47:36 +01:00
Hans Dembinski
e089280a12 moving benchmarks 2019-02-08 15:47:16 +01:00
Hans Dembinski
02f0004863 fix ci 2019-02-07 20:08:37 +01:00
Hans Dembinski
1aeeddd6a8 be more self-documenting [ci skip] 2019-02-06 23:53:45 +01:00
Hans Dembinski
f20abe19fb rename adaptive_storage to unlimited_storage, closes #150 2019-02-06 23:34:58 +01:00
Hans Dembinski
df4fefac18 histogram supports add, sub, mul, div 2019-02-06 00:29:22 +01:00
Hans Dembinski
b5eed0d90c fix ci 2019-02-05 13:25:04 +01:00
Hans Dembinski
f521864203 better way to pass data files to test 2019-02-05 09:21:24 +01:00
Hans Dembinski
d1f5156b7c test for overflow 2019-02-04 01:58:07 +01:00
Hans Dembinski
6e62514f10 dont compare serialized formats, only check unserialization 2019-02-04 01:15:26 +01:00
Hans Dembinski
c8fe13d2fa better serialization test 2019-02-04 00:57:20 +01:00
Hans Dembinski
1b6adadae4 nicer stream for histogram 2019-02-03 21:57:53 +01:00
Hans Dembinski
7978ddef03 test and bug-fix of subtraction 2019-02-03 19:01:03 +01:00
Hans Dembinski
bdc8cb1975 fix CI 2019-02-03 18:11:36 +01:00
Hans Dembinski
e559694fa8 avoid warning on msvc 2019-02-03 17:22:34 +01:00
Hans Dembinski
5657d31c38 make histogram and all builtin storages subtractable 2019-02-03 17:14:29 +01:00
Hans Dembinski
da05be7128 improved benchmarks in docu 2019-02-03 12:45:04 +01:00
Hans Dembinski
beda2065a4 nicer type handling 2019-01-31 20:53:03 +01:00
Hans Dembinski
72d9ce635f axis:replaced operator() with index and operator[] with bin 2019-01-27 20:56:15 +01:00
Hans Dembinski
0bb5c1b3f4 faster indexed iteration, replaced boost::container::X with std::X 2019-01-27 19:46:46 +01:00
Hans Dembinski
451f36c774 simple 2019-01-27 16:46:42 +01:00
Hans Dembinski
37c16139b1 better bench 2019-01-27 12:40:44 +01:00
Hans Dembinski
d56f60d32e nicer bench 2019-01-27 11:53:35 +01:00
Hans Dembinski
ed5af698bc use std::enable_if_t for check, to get better error messages 2019-01-24 21:35:17 +01:00
Hans Dembinski
5396998eb7 improved stdlib compat, fixed bug in reference 2019-01-24 00:16:38 +01:00
Hans Dembinski
fd0b7dea8d better reference docu 2019-01-22 22:14:38 +01:00
Hans Dembinski
2ea4051e62 big clean-up of reference docu, fix for axis::variant<const Ts&...>, renamed operator_ostream header to ostream 2019-01-20 22:48:39 +01:00
Hans Dembinski
b6f454f493 enable underflow and overflow for growing axis where possible 2019-01-19 23:19:04 +01:00
Hans Dembinski
d0a59b9830 return iterator to current bin after fill 2019-01-19 14:57:47 +01:00
Hans Dembinski
61a4bf0c3e fix benchmark 2019-01-19 14:34:21 +01:00
Hans Dembinski
9d22f3791c implemented ctor with step size for regular axis, closes #88 2019-01-19 13:21:42 +01:00
Hans Dembinski
f8ebf85a05 accessor [] to index and indices 2019-01-17 21:56:02 +01:00
Hans Dembinski
bc6ee8f89e switch second indexed argument to enum class and use use_default everywhere 2019-01-16 22:00:59 +01:00
Hans Dembinski
a51811c25a more testing 2019-01-16 20:45:34 +01:00
Hans Dembinski
acb5b7ba1e fix CI 2019-01-16 20:36:31 +01:00
Hans Dembinski
2a7f9cdf61 support for growing variable axis 2019-01-16 09:16:56 +01:00
Hans Dembinski
6c74da60ed regular axis growable; removed axis::base; replaced int with index_type 2019-01-16 00:52:41 +01:00
Hans Dembinski
cadc27135f make category growable and add missing deduction guides 2019-01-15 00:13:04 +01:00
Hans Dembinski
f1ac913246 better solution for adding optional update method when axis has growth 2019-01-13 23:18:39 +01:00
Hans Dembinski
8e9dd85837 wip: growing axis for axis::integer 2019-01-13 22:14:53 +01:00
Hans Dembinski
0479c512e3 rename option_type to option, new growth option, new utiltity functions test and join 2019-01-13 14:25:34 +01:00
Hans Dembinski
2476e98259 growing axis fully working 2019-01-13 00:21:02 +01:00
Hans Dembinski
a9be9b0841 another growing axis 2019-01-13 00:00:51 +01:00
Hans Dembinski
ac47484483 simper and slightly faster adaptive_storage 2019-01-12 23:37:31 +01:00
Hans Dembinski
5ba3c694b0 fix 2019-01-12 21:40:11 +01:00
Hans Dembinski
3cec3edb9c working test: simpler variant visit, simpler linearize functions, extended traits; get_if for std compliance 2019-01-12 20:42:45 +01:00
Hans Dembinski
2e4ad7a5df enable growing axis support at compile-time only when needed 2019-01-11 23:33:30 +01:00
Hans Dembinski
54eb52d80d wip: growing axis for static 1d working 2019-01-11 00:38:34 +01:00
Hans Dembinski
7be6dd27f6 wip, support for growing axes 2019-01-11 00:11:34 +01:00
Hans Dembinski
e77e9ab2fe update 2019-01-11 00:06:26 +01:00
Hans Dembinski
b0b1f9065e exact comparison for references 2019-01-11 00:06:26 +01:00
Hans Dembinski
347ac33d2c make accessor writeable 2019-01-11 00:06:26 +01:00
Hans Dembinski
608a89fef3 fix travis 2019-01-11 00:06:26 +01:00
Hans Dembinski
76dddd6d95 removing debris 2019-01-11 00:06:26 +01:00
Hans Dembinski
e80ae946e6 full iterator support 2019-01-11 00:06:26 +01:00
Hans Dembinski
188bf8ecbe Introduce grid type and derive histogram from grid 2019-01-11 00:06:26 +01:00
Hans Dembinski
37ac219921 added profile example and improved interface of mean and weighted_mean 2019-01-11 00:06:26 +01:00
Hans Dembinski
2d5fb32b88 improved support and testing of axes over boost::units 2019-01-11 00:06:26 +01:00
Hans Dembinski
68ce22a323 deduction guides for histogram class 2019-01-11 00:06:26 +01:00
Hans Dembinski
d96f749a52 deduction guides for histogram 2019-01-11 00:06:26 +01:00
Hans Dembinski
12a79e5197 regular axis with unit can now also use transforms 2019-01-11 00:06:26 +01:00
Hans Dembinski
cbdd77f629 getting rid of value_bin_view, since we dont need to use bins as indices anymore 2019-01-11 00:06:26 +01:00
Hans Dembinski
20e4711c85 testing and plotting iteration performance 2019-01-11 00:06:26 +01:00
Hans Dembinski
c4c2476012 use indexed in reduce and project, making index_mapper obsolete 2019-01-11 00:06:26 +01:00
Hans Dembinski
168e41dc83 change the iteration order from 0...N-1 overflow underflow to underflow 0 ... N -1 overflow, move axis allocators at the end of template argument 2019-01-11 00:06:26 +01:00
Hans Dembinski
74d1b95d72 fixing deduction guide testing; better error when google benchmark is not found 2019-01-11 00:06:26 +01:00
Hans Dembinski
81abaa23eb fix for travis 2019-01-11 00:06:26 +01:00
Hans Dembinski
fb7ca0a0ef added deduction guides for axis types; removed circular axis implementation, implemented circular option for regular, integer, and variable axis; simplified transform spec; added axis::allocator alias 2019-01-11 00:06:26 +01:00
Hans Dembinski
5752fd8f87 axis benchmark and simpler circular index calculation 2019-01-11 00:06:26 +01:00
Hans Dembinski
d6c7e81515 faster indexing when iterating over all bins 2019-01-11 00:06:26 +01:00
Hans Dembinski
f21d396179 better value access and fixes for CI builds 2019-01-11 00:06:26 +01:00
Hans Dembinski
1f814cecd9 better benchmark 2019-01-11 00:06:26 +01:00
Hans Dembinski
94a3364c83 better test of indexed range adaptor and new benchmark for indexed 2019-01-11 00:06:26 +01:00
Hans Dembinski
ab8201eca1 fixes for complaints by cppcheck 2019-01-11 00:06:26 +01:00
Hans Dembinski
1e0dcc72fb switch to int everywhere 2019-01-11 00:06:26 +01:00
Hans Dembinski
84641d0f41 added option for indexed to skip extra bins (new default); avoid mp11 in interface; use int as return type for axis::size() 2019-01-11 00:06:26 +01:00
Hans Dembinski
8013048c71 restore axis_size command to track size of axis types 2019-01-11 00:06:26 +01:00
Hans Dembinski
a4fe842b4a added density method to indexed proxy, hide details of axes_buffer 2019-01-11 00:06:26 +01:00
Hans Dembinski
31c762b359 new interface for proxy returned by indexed, new test and fixes for boost.range support 2019-01-11 00:06:26 +01:00
Hans Dembinski
b7dd2865cc use correct size for buffer if size is known at compile-time 2019-01-11 00:06:26 +01:00
Hans Dembinski
00cd2e866e changed axis::option_type to compile-time option, replaced fancy histogram iterator with indexed range adaptor, cleanup of various headers 2019-01-11 00:06:26 +01:00
Hans Dembinski
7ad5ea180d removed superfluous include 2019-01-11 00:06:26 +01:00
Hans Dembinski
db8fe44e9e added support for variable axis 2019-01-11 00:06:26 +01:00
Hans Dembinski
82186969f3 added support for circular axis 2019-01-11 00:06:26 +01:00
Hans Dembinski
4533bd9fd4 added reduce algorithm to shrink and rebin, fixed bug in polymorphic_bin in the process, to-do: add more axis support for shrink and rebin 2019-01-11 00:06:26 +01:00
Hans Dembinski
bac1490525 fix 2019-01-11 00:06:26 +01:00
Hans Dembinski
cfc037dc4e remove obsolete array includes and enable deactivated serialization tests 2019-01-11 00:06:26 +01:00
Hans Dembinski
3b429d889c fix 2019-01-11 00:06:26 +01:00
Hans Dembinski
3661b238b6 clean up of accumuators, use consistent naming, make sure that sum accumulator can be used as RealType in weighted_sum 2019-01-11 00:06:26 +01:00
Hans Dembinski
855653ed14 fix win 2019-01-11 00:06:26 +01:00
Hans Dembinski
692f8082c8 fix win 2019-01-11 00:06:26 +01:00
Hans Dembinski
49ebd1c3ce doc fix 2019-01-11 00:06:26 +01:00
Hans Dembinski
8ec2daed87 rewrote accumulators to use more numerically stable algorithms, do not propagate weight_type down to the accumuator anymore, added neumaier summation, simplified interface of weight accumulator 2019-01-11 00:06:26 +01:00
Hans Dembinski
bf7170c9a1 fix ci 2019-01-11 00:06:26 +01:00
Hans Dembinski
4bc30a74f0 added sum algorithm 2019-01-11 00:06:25 +01:00
Hans Dembinski
04acab427d lifted condition that indices must be rising 2019-01-11 00:06:25 +01:00
Hans Dembinski
3020e72b53 moved reduce_to to project, closes issue 77 2019-01-11 00:06:25 +01:00
Hans Dembinski
521b43778a refactoring of make_histogram factories 2019-01-11 00:06:25 +01:00
Hans Dembinski
a6cb396704 more tests 2019-01-11 00:06:25 +01:00
Hans Dembinski
b82aa3b632 first working accumulator support 2019-01-11 00:06:25 +01:00
Hans Dembinski
773539f59b generalization of has_method_value_with_..., removed obsolete classify_container 2019-01-11 00:06:25 +01:00
Hans Dembinski
04ca7a3fee wip for adding profile support 2019-01-11 00:06:25 +01:00
Hans Dembinski
15e6a44466 better warning fix 2019-01-11 00:06:25 +01:00
Hans Dembinski
faede986fd fix 2019-01-11 00:06:25 +01:00
Hans Dembinski
d3d4f17ddb silence some warnings 2019-01-11 00:06:25 +01:00
Hans Dembinski
b808de8154 support for axis types which accept multiple arguments 2019-01-11 00:06:25 +01:00
Hans Dembinski
8546683a4f fix 2019-01-11 00:06:25 +01:00
Hans Dembinski
4cc4cf0955 fix 2019-01-11 00:06:25 +01:00
Hans Dembinski
3c25dbdecf fix 2019-01-11 00:06:25 +01:00
Hans Dembinski
0b18bd6f0d removed handling of dynamic containers passed via operator() to obtain better non-surprising solution for tuples passed to 1d histogram, weights can be passed at the beginning or end again of the call to histogram::operator() 2019-01-11 00:06:25 +01:00
Hans Dembinski
ed4da69965 added tests for dynamic axis access 2019-01-11 00:06:25 +01:00
Hans Dembinski
69bfe0f7df support for runtime index access of axis on static histogram 2019-01-11 00:06:25 +01:00
Hans Dembinski
23790f4008 support for vector of non-variant axes 2019-01-11 00:06:25 +01:00
Hans Dembinski
693bb0d1d9 now also support vector of plain axis types 2019-01-11 00:06:25 +01:00
Hans Dembinski
2131875ea7 simpler 2019-01-11 00:06:25 +01:00
Hans Dembinski
8c4c502c00 nicer comments 2019-01-11 00:06:25 +01:00
Hans Dembinski
07b95ae579 win fix 2019-01-11 00:06:25 +01:00
Hans Dembinski
1ccd5375e2 missing file 2019-01-11 00:06:25 +01:00
Hans Dembinski
ae5a539336 win fix 2019-01-11 00:06:25 +01:00
Hans Dembinski
f0c87418b1 fixed serialization and benchmark 2019-01-11 00:06:25 +01:00
Hans Dembinski
e20243e9d4 preliminary fix 2019-01-11 00:06:25 +01:00
Hans Dembinski
fb80067aa5 added support for boost::accumulators, reintroduced add method to storage interface 2019-01-11 00:06:25 +01:00
Hans Dembinski
d326514ac8 all tests pass for adapted vector and array, map still failing 2019-01-11 00:06:25 +01:00
Hans Dembinski
2e4a77123a todo note 2019-01-11 00:06:25 +01:00
Hans Dembinski
61be24b94d working version 2019-01-11 00:06:25 +01:00
Hans Dembinski
a17a6c677c wip, histogram_test fails 2019-01-11 00:06:25 +01:00
Hans Dembinski
c6e24e4747 refactor 2019-01-11 00:06:25 +01:00
Hans Dembinski
92d062ceb9 more testing 2019-01-11 00:06:25 +01:00
Hans Dembinski
450f80cb8a generialization of axis::variant 2019-01-11 00:06:25 +01:00
Hans Dembinski
2164ea85b3 refactoring 2019-01-11 00:06:25 +01:00
Hans Dembinski
390fe636a2 more noexcept and fixed iterator_value_type 2019-01-11 00:06:25 +01:00
Hans Dembinski
6df93a17f0 win fix 2019-01-11 00:06:25 +01:00
Hans Dembinski
1c7d28ca9b factoring out test code 2019-01-11 00:06:25 +01:00
Hans Dembinski
949775a9f4 try win fix 2019-01-11 00:06:25 +01:00
Hans Dembinski
876b951931 suppress pragma warning and ignore failing test on msvc 2019-01-11 00:06:25 +01:00
Hans Dembinski
2212870fba test for quantity transform 2019-01-11 00:06:25 +01:00
Hans Dembinski
5b32131fd5 win fix 2019-01-11 00:06:25 +01:00
Hans Dembinski
b8d158e94e refactoring axis types into separate functions, make them use compressed_pair instead of crappy custom empty base optimization 2019-01-11 00:06:25 +01:00
Hans Dembinski
e0b7070276 fixing serialization 2019-01-11 00:06:25 +01:00
Hans Dembinski
3b60fd9102 replaced overload with static_if 2019-01-11 00:06:25 +01:00
Hans Dembinski
6664a8684c all tests without streamers passing, need to fix streamers 2019-01-11 00:06:25 +01:00
Hans Dembinski
c02e7b0f22 wip, axis_test passes 2019-01-11 00:06:25 +01:00
Hans Dembinski
7822c87f4f fixed axis_test 2019-01-11 00:06:25 +01:00