# Release v0.5.0 (2022/8/25) Refactored logging and ode modules, implemented some new algorithms in ode module, and etc... ## Breaking Change - Changed the name of class `heuristic_1dim_optimizer` to `heuristic_global_optimizer` ([Issue #151](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/merge_requests/151)). - Refactored logging ([Issue #178](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/178), [Issue #179](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/179), [Issue #164](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/164), [Issue #166](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/166), [Issue #182](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/182), [Issue #181](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/181)). - Refactored ode module for implementation of new algorithms ([Issue #192](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/192), [Issue #200](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/200), [Issue #208](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/208), [Issue #209](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/209), [Issue #212](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/212), [Issue #216](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/216), [Issue #218](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/218), [Issue #219](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/219), [Issue #221](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/221), [Issue #215](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/215), [Issue #223](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/223)). ## Feature - Modules - util - Format Eigen's dense matrices, dense vectors, and sparse matrices ([Issue #142](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/142)). - logging - Function to load logging configuration from files ([Issue #166](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/166)). - regularization - Implemented FISTA for L1 regularization ([Issue #147](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/147)). - opt - Heuristic global optimizer for multi-variate problems ([Issue #151](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/merge_requests/151)). - ode - Automatic computation of the initial step size in ODE solver ([Issue #203](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/203)). - New algorithm to automatically compute the next step size in ODE solver ([Issue #202](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/202)). - RODASP formula ([Issue #199](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/199)). - RODASPR formula ([Issue #213](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/213)). - DOPRI5 formula ([Issue #220](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/220)). - Approximate Jacobian matrix for some Rosenbrock formulas ([Issue #210](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/210)). - ARK formulas ([Issue #215](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/215), [Issue #224](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/224)). - Symplectic integration ([Issue #226](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/226)). - Solvers of Rosenbrock formulas for large problems ([Issue #211](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/211), [Issue #229](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/229)). - Mass matrix support in Rosenbrock method ([Issue #64](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/64)). ## Miscellaneous - Introduced [Approval Tests](https://approvaltests.com/) for tests ([Issue #139](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/139), [Issue #204](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/204)). - Update issue templates ([Issue #157](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/157)). - Fixed warnings on MSVC ([Issue #134](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/134)). - Set the default value of requirements_for_tests in conanfile.py to False ([Issue #159](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/159)). - Introduced profiling ([Issue #168](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/168)). - Introduced ccache ([Issue #177](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/177)). - Added concept of optimizers ([Issue #193](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/193)). - Added more tests of legendre function ([Issue #194](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/194)). - Changed CI configuration to upload coverage report ([Issue #196](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/196), [Issue #205](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/205), [Issue #206](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/206)). - Introduced [IWYU](https://github.com/include-what-you-use/include-what-you-use/) ([Issue #9](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/9)). - Decreased the size of artifacts in CI ([Issue #201](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/201)). - More example problems of ODEs ([Issue #218](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/218)). - Introduced lizard ([Issue #225](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/225), [Issue #227](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/227)). - Use [release CLI of GitLab](https://docs.gitlab.com/ee/user/project/releases/release_cli.html) ([Issue #207](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/207)). - Fixed clang-tidy check in CI ([Issue #180](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/180)). - Example to solve 1D wave equation ([Issue #236](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/236)). - Removed coverage measurement using GCC ([Issue #239](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/239)). - Use GCC 12 in CI ([Issue #240](https://gitlab.com/MusicScience37/numerical-collection-cpp/-/issues/240)).