Commit graph

143 commits

Author SHA1 Message Date
Dzuchun
dc94c6ff05 Made README.md work in a cargo package 2025-12-22 22:27:58 +00:00
Dzuchun
d38bd8af78 Excluded unnecessary files from package 2025-12-22 22:27:58 +00:00
Dzuchun
37f6fc1dab Version bump to 0.3.7
also:
- removed unnecessary dependencies
- now all dependencies use `crates.io`-provided versions
2025-12-22 22:27:58 +00:00
Dzuchun
c6803c0882 Added meta necessary to publish 2025-12-22 22:27:58 +00:00
Dzuchun
a75f97a946 Doc typos fix 2025-12-22 22:27:58 +00:00
Dzuchun
7c6920a9e3 License update 2025-12-22 22:27:58 +00:00
Dzuchun
fa2263f58f derive: Added meta for publication 2025-12-22 22:27:58 +00:00
Dzuchun
f3941ccbf2 derive: dependencies bump 2025-12-22 22:27:58 +00:00
Dzuchun
cb3bb22e89 Updated miri action to a new syntax 2025-12-22 22:27:58 +00:00
Dzuchun
20caef57f1 [Cargo.lock] 2025-12-22 22:27:58 +00:00
Dzuchun
05e4f31a02 Proper crate version bumps 2025-12-22 22:27:58 +00:00
Dzuchun
60c0287346 Made clippy happier 2025-12-22 22:27:58 +00:00
Dzuchun
fccd11de0d Removed the tiny bit of unsafe present
So now there's no unsafe in this crate at all, and global
lint in workspace-level Cargo.toml strictly forbids it.
2025-12-22 22:27:58 +00:00
Dzuchun
05e240cccd Upgrade compatible 2025-12-22 22:27:58 +00:00
Dzuchun
c55b4ff5bf Moved tests into separate files 2025-12-22 22:27:58 +00:00
Dzuchun
8622c2f357 [Cargo.lock] 2025-12-22 22:27:58 +00:00
Dzuchun
3d224ff7ab Massive Gaussian functions rework.
- There are asymmetric gaussian models now.
- Now Gaussian model can be fit for both sigma and s_p in any
  combination.
- Renamed confusing `s` parameter to `sigma`.
- `Gaussian` and `GaussianW` are the same type now, whether
  fit happens for `sigma` is determined by a generic const.
2025-12-22 22:27:57 +00:00
Dzuchun
e59bc0d4d5 Made &mut mandatory in fit/fit_stat 2025-12-22 22:27:57 +00:00
Dzuchun
7da59b675c Fixed "model is still borrowed" bug 2025-12-22 22:27:57 +00:00
Dzuchun
8b9ad0a672 Convertion between identical FitStats 2025-12-22 22:27:57 +00:00
Dzuchun
943e25d095 Simplified FitBound/FitBoundErr
Now there's no need to specify `Y`-data container, if it's the same as
`X`-data container.
2025-12-22 22:27:57 +00:00
Dzuchun
81cec1b713 Renames of entity fields 2025-12-22 22:27:57 +00:00
Dzuchun
7c80e4db81 Even more aggressive bound simplfication 2025-12-22 22:27:57 +00:00
Dzuchun
e00fcbb0e0 One more large type substitution 2025-12-22 22:27:57 +00:00
Dzuchun
a760050839 Renamed Entity to Model in a bunch of places
(leftovers from earlier development stages)
2025-12-22 22:27:57 +00:00
Dzuchun
da26b480fd Scalar is now an associated type of FitModel
(that's a massive rewrite!)
This change might seem random, but it, in fact, simplifies usage A LOT.
Now, `Scalar` type is **determined** by model, which is what should
happen in the first place.
2025-12-22 22:27:57 +00:00
Dzuchun
c3f4b91428 Hidden polynomial module from doc 2025-12-22 22:27:57 +00:00
Dzuchun
6540c6e8fb [Cargo.toml] 2025-12-22 22:27:57 +00:00
Dzuchun
f3c5d2a0d4 Fixed typos action 2025-12-22 22:27:57 +00:00
Dzuchun
d4ef7a8072 Restructured the crate
- Now using `generic_array_storage` v0.1.1 (Conv trait drastically
  changed).
- `FitModel::ParamCount` type now has a less strict type bound, allowing
  use of `typenum::Const` and even `nalgebra::Const`, if you feel like
  it.
- Removed `Params` argument from `ConstOptimizationProblem` and
  `DynOptimizationProblem`.
2025-12-22 22:27:57 +00:00
Dzuchun
8a93581d31 Copied simpliest macro impl to a separate file
For easier macro output testing
2025-12-22 22:27:57 +00:00
Dzuchun
49b20999eb Removed mandatory dependency on libm over std 2025-12-22 22:27:57 +00:00
Dzuchun
61f437ff2a GenericArray is now a valid data source 2025-12-22 22:27:57 +00:00
Dzuchun
4c944d8726 Documented "reserved" name for the weights 2025-12-22 22:27:57 +00:00
Dzuchun
7bac6c753f FitModelErrors fix for Polynomial 2025-12-22 22:27:57 +00:00
Dzuchun
a1fd0a379d Tagged generic_array_storage 2025-12-22 22:27:57 +00:00
Dzuchun
9ff33495ea Ignored some tests for Miri
- model jacobian test, because of stacked borrows issue inside ViewStorage (help wanted!?)
- stddev test, as it took too long
2025-12-22 22:27:57 +00:00
Dzuchun
b67cdc74d3 [minor] double colon in front of core 2025-12-22 22:27:57 +00:00
Dzuchun
8bd1b66f0c [Cargo.lock] 2025-12-22 22:27:57 +00:00
Dzuchun
9becfc4a88 Added macro to generate test for model's jacobian 2025-12-22 22:27:57 +00:00
Dzuchun
0913e4195a Fixed error computation & added test to enforce it
Note that error formula is an approximation for case of large datapoint count, so it's strict enforcement is not possible, unfortunately.
2025-12-22 22:27:57 +00:00
Dzuchun
753a889f70 Ranged: changed parameters order 2025-12-22 22:27:57 +00:00
Dzuchun
993d70956b [minor] lint attribute in test 2025-12-22 22:27:57 +00:00
Dzuchun
5ab2cf0758 Polynomial now uses IntoArrayLength 2025-12-22 22:27:57 +00:00
Dzuchun
f9499e421e Gaussian impl bug fixes 2025-12-22 22:27:57 +00:00
Dzuchun
51d5eeb131 Composition model impl format 2025-12-22 22:27:57 +00:00
Dzuchun
20af9c5622 DifferentiableFunction and ModelMap re-design 2025-12-22 22:27:57 +00:00
Dzuchun
cf05044794 Fixed utility model and corresponding tests 2025-12-22 22:27:57 +00:00
Dzuchun
bddacdf23a fit_stat, corresponding macro and basic doc. 2025-12-22 22:27:57 +00:00
Dzuchun
bbd91fadd9 FitModelError impls for basic fit models 2025-12-22 22:27:57 +00:00