Python fitter package for multiple computational back-ends
APACHE-2.0 License
Bot releases are visible (Hide)
Published by release-drafter[bot] over 3 years ago
See all documentation for this version here.
Fixes the tqdm
progress bar so that it gives a time estimate when calling generate_phsp
and generate_data
.
Implementation of TR-001. Requires https://github.com/ComPWA/ampform/pull/75 and AmpForm v0.9.2 (upcoming).
Published by release-drafter[bot] over 3 years ago
See all documentation for this version here.
Larger SymPy expressions that take a long time to lambdify can now be lambdified faster (order of 10-100x) with split_expression()
, optimized_lambdify()
, and the max_complexity
argument.
https://tensorwaves.rtfd.io/en/0.2.7/usage/faster-lambdify.html
Published by release-drafter[bot] over 3 years ago
See all documentation for this version here.
If the amplitude model is complicated, it can take over an hour to lambdify it to a Model
. So it's annoying to have to do that twice if you use the same backend for data generation and fitting. This PR allows reusing a LambdifiedFunction
for fitting.
Simple fix: just casts ScalarSequence
back into a numpy
array so that a lambdified Function
can handle it.
Many thanks to @mayou36 for releasing phasespace
v1.3!
Published by release-drafter[bot] over 3 years ago
Added support for analytic continuation. See all documentation for this version here.
Adds support for analytic continuation in particular.
Lambdifying to with modules=numpy.__dict__
does not work with conditionals (sympy.Piecewise
). If using numpy.dict, Piecewise is lambdified to if-else (which doesn't worky with numpy arrays), while it should convert to numpy.select
.
Published by release-drafter[bot] over 3 years ago
See all documentation for this version here.
(Maintenance release: mainly improves mobile version of the website.)
In addition, extract pytest configuration to pytest.ini
and define testpaths
there. Since b9b72ed, it is become impossible to run tests through VSCode. Defining testpaths fixes this. In addition, it removes the last 'non-tox' section from the tox.ini file (see 7eb3866)
With the release of pip-tools
v6.1.0, pip-compile
now correctly handles extras_require
. This allows for a big clean-up of the set-up introduced by https://github.com/ComPWA/expertsystem/pull/412.
Advantages:
pip install -e .[dev]
to get started developing, pip install -e .[dev] -U
to try out upgrades, and pip install -c .constraints/py3.8.txt -e .[dev] -U
in case you exactly want to reproduce the dependencies for some commit.setup.cfg
Makes it easier to understand function signatures.
Added references to requirement pinning
Also cleans up the .pylintrc
config file
Better to only keep tox job definitions in the tox.ini file. Note that config files are only extracted if their respective tools supports a config file name that starts with a dot
Published by release-drafter[bot] over 3 years ago
See all documentation for this version here.
expertsystem
has been replaced by ampform
and qrules
master
branch has been renamed to main
.Published by release-drafter[bot] over 3 years ago
See all documentation for this version here.
Closes #100
Wrapped the optimize dict
output in a FitResult
class. It's a rather simple attr
data container that wraps what was previously in a dict
form. Optimizer-specific info has been put under a specifics
attribute.
The csv.DictReader
crashes when there are complex values (and using QUOTE_NONNUMERIC
). This was not spotted, because the tests only work with float parameters. Now one additional (complex) parameter is set free and the bug has been fixed. To speed up the tests, the UnbinnedNLL fixture uses Jax now.
See https://github.com/ComPWA/expertsystem/pull/535
npm
), because they are now executed as a pre-commit
hook. See ComPWA/mirrors-cspell and ComPWA/mirrors-pyright..pre-commit-hooks
with hooks from the ComPWA/meta repository. Now the tox -e sty
job works again.Published by release-drafter[bot] over 3 years ago
See all documentation for this version here.
ScipyMinimizer
adapter as an interface to scipy.optimize.minimize
(#231, #235, and #241)Callback
interface (#234)physics
module help extracting intensity components from the amplitude model (#244)tensorflow
(#245)Callback
interface: .on_optimize_start()
and .on_optimize_end()
(#234)physics
(#244)pandas
anymore: the CSVSummary
callback uses csv.DictWriter
instead (#239)expertsystem
v0.7.1 (#248)collapsible_headings
for Jupyter Lab (#233)extras_require
are now also pinned through the developer dependencies (#240)@redeboer and @spflueger
Published by release-drafter[bot] over 3 years ago
See all documentation for this version here.
Several breaking changes!
All physics (amplitude
, dynamics
, and kinematics
modules) has been moved to the expertsystem
, where the amplitude model is now formulated in terms of SymPy (see v0.7.0). TensorWaves is now more abstract: the core has become a template Model
class that can be 'lambdified' into a Function
with different computational backends. The esimator
and data
modules are still there, but changed slightly because of the intermediate Model
layer.
Since the responsibilities of tensorwaves
have changed quite a bit and much code has been removed, the module structure has been changed drastically as well. The example workflow notebooks therefore changed as well.
The new workflow is described here.
@redeboer and @spflueger
Published by release-drafter[bot] over 3 years ago
See all documentation for this version here.
This is the final release before the switch to SymPy. See #222 and expertsystem
v0.7.0a0.
tqdm.autonotebook
(#223)expertsystem
v0.6.10 (#224)iminuit
v2.x (#213)pydeps
has been removed (#202)import
statement so that it is easier to see where the sub-module is located (#217)See also changes listed in expertsystem
v0.6.10
typing
folder (#216)pre-commit
hooks are now automatically upgraded through GitHub Actions(#220)tox -e doclive
as well (#225)@redeboer
Published by release-drafter[bot] almost 4 years ago
See all documentation for this version here.
expertsystem
0.6.5 to expertsystem
0.6.8 (#199), see release notes 0.6.6, 0.6.7 and 0.6.8
Estimator
now requires a phase-space sample for normalization and the constructor of the IntensityBuilder
does not require one (#192)@redeboer and @spflueger
Published by release-drafter[bot] almost 4 years ago
See all documentation for this version here.
Callback
s (see tensorwaves.optimizer.callbacks
). This also allows the user to break off a fit and pick it up anytime from the dumped fit result. Callbacks
also offer different ways of logging and monitoring the optimization process (#159)expertsystem
β tensorwaves
does not provide default dynamics anymore (#180)markdownlint
is run as pre-commit hook, not only as a separate npm
package (#178)pycompwa
(#182)requirements*.txt
files are updated automatically for each PR and through a cron job (#185)@redeboer, @sebastianJaeger and @spflueger
Published by release-drafter[bot] almost 4 years ago
See all documentation for this version here.
expertsystem
0.6.3 to fix problems with canonical formalism (#150)tensorwaves
on Google Colab again.tensorwaves
in documentation (#145). Was previously pointing to the expertsystem
.@redeboer and @spflueger
Published by release-drafter[bot] almost 4 years ago
See all documentation for this version here.
tf.random.Generator
instead of tf.random.uniform
(#141)expertsystem
0.6.2 (#134)@Leongrim and @redeboer
Published by spflueger about 4 years ago
See all documentation for this version here.
RelativisticBreitWigner
. This change is triggered by the expertsystem 0.2.0 update, which does not specify decay dynamics anymore. One exception is the top node in a decay, which is still set exported as NonDynamic
by the expertsystem.Published by redeboer over 4 years ago