- ✨ Add simple decay megacomplexes (#860)
- 🩹 Fix Crash in optimization_group_calculator_linked when using guidance spectra (#950)
- 🔧 Improve packaging tooling (#923) 🔧🚇 Exclude test files from duplication checks on sonarcloud (#959)
- 🩹 Bugfix Use normalized initial_concentrations in result creation for decay megacomplex (#927)
- 🩹 Fix save_result crashes on Windows if input data are on a different drive than result (#931)
- 🚧 Forward port Improve result comparison workflow and v0.4 changelog (#938)
- 🚧 Forward port of #936 test_result_consistency
- ✨ Feature: Megacomplex Models (#736)
- ✨ Feature: Full Models (#747)
- ✨ Damped Oscillation Megacomplex (a.k.a. DOAS) (#764)
- ✨ Add Dataset Groups (#851)
- ✨ Performance improvements (in some cases up to 5x) (#740)
- 👌 Add dimensions to megacomplex and dataset_descriptor (#702)
- 👌 Improve ordering in k_matrix involved_compartments function (#788)
- 👌 Improvements to application of clp_penalties (equal area) (#801)
- ♻️ Refactor model.from_dict to parse megacomplex_type from dict and add simple_generator for testing (#807)
- ♻️ Refactor model spec (#836)
- ♻️ Refactor Result Saving (#841)
- ✨ Use ruaml.yaml parser for roundtrip support (#893)
- ♻️ Refactor Result and Scheme loading/initializing from files (#903)
- ♻️ Several refactoring in
glotaran.Parameter
(#910) - 👌 Improved Reporting of Parameters (#910, #914, #918)
- 👌 Scheme now excepts paths to model, parameter and data file without initializing them first (#912)
- 🩹 Fix/cli0.5 (#765)
- 🩹 Fix compartment ordering randomization due to use of set (#799)
- 🩹 Fix check_deprecations not showing deprecation warnings (#775)
- 🩹 Fix and re-enable IRF Dispersion Test (#786)
- 🩹 Fix coherent artifact crash for index dependent models #808
- 🩹 False positive model validation fail when combining multiple default megacomplexes (#797)
- 🩹 Fix ParameterGroup repr when created with 'from_list' (#827)
- 🩹 Fix for DOAS with reversed oscillations (negative rates) (#839)
- 🩹 Fix parameter expression parsing (#843)
- 🩹 Use a context manager when opening a nc dataset (#848)
- 🚧 Disallow xarray versions breaking plotting in integration tests (#900)
- 🩹 Fix 'dataset_groups' not shown in model markdown (#906)
- 📚 Moved API documentation from User to Developer Docs (#776)
- 📚 Add docs for the CLI (#784)
- 📚 Fix deprecation in model used in quickstart notebook (#834)
glotaran.model.Model.model_dimension
->glotaran.project.Scheme.model_dimension
glotaran.model.Model.global_dimension
->glotaran.project.Scheme.global_dimension
<model_file>.type.kinetic-spectrum
-><model_file>.default_megacomplex.decay
<model_file>.type.spectral-model
-><model_file>.default_megacomplex.spectral
<model_file>.spectral_relations
-><model_file>.clp_relations
<model_file>.spectral_relations.compartment
-><model_file>.clp_relations.source
<model_file>.spectral_constraints
-><model_file>.clp_constraints
<model_file>.spectral_constraints.compartment
-><model_file>.clp_constraints.target
<model_file>.equal_area_penalties
-><model_file>.clp_area_penalties
<model_file>.irf.center_dispersion
-><model_file>.irf.center_dispersion_coefficients
<model_file>.irf.width_dispersion
-><model_file>.irf.width_dispersion_coefficients
glotaran.project.Scheme(..., non_negative_least_squares=...)
-><model_file>dataset_groups.default.residual_function
glotaran.project.Scheme(..., group=...)
-><model_file>dataset_groups.default.link_clp
glotaran.project.Scheme(..., group_tolerance=...)
->glotaran.project.Scheme(..., clp_link_tolerance=...)
<scheme_file>.maximum-number-function-evaluations
-><scheme_file>.maximum_number_function_evaluations
<model_file>.non-negative-least-squares: true
-><model_file>dataset_groups.default.residual_function: non_negative_least_squares
<model_file>.non-negative-least-squares: false
-><model_file>dataset_groups.default.residual_function: variable_projection
glotaran.parameter.ParameterGroup.to_csv(file_name=parameters.csv)
->glotaran.io.save_parameters(parameters, file_name=parameters.csv)
- 🩹 Fix Performance Regressions (between version) (#740)
- 🧪🚇 Add integration test result validation (#754)
- 🔧 Add more QA tools for parts of glotaran (#739)
- 🔧 Fix interrogate usage (#781)
- 🚇 Speedup PR benchmark (#785)
- 🚇🩹 Use pinned versions of dependencies to run integration CI tests (#892)
- 🧹 Move megacomplex integration tests from root level to megacomplexes (#894)
- 🩹 Fix artifact download in pr_benchmark_reaction workflow (#907)
- 🩹🚧 Backport of bugfix #927 discovered in PR #860 related to initial_concentration normalization when saving results (#935).
- 🚇🚧 Updated 'gold standard' result comparison reference (old -> new)
- 🚇 Refine test_result_consistency (#936).
- Integration test result validation (#760)
- Fix unintended saving of sub-optimal parameters (0ece818, backport from #747)
- Improve ordering in k_matrix involved_compartments function (#791)
- Add basic spectral model (#672)
- Add Channel/Wavelength dependent shift parameter to irf. (#673)
- Refactored Problem class into GroupedProblem and UngroupedProblem (#681)
- Plugin system was rewritten (#600, #665)
- Deprecation framework (#631)
- Better notebook integration (#689)
- Fix excessive memory usage in
_create_svd
(#576) - Fix several issues with KineticImage model (#612)
- Fix exception in sdt reader index calculation (#647)
- Avoid crash in result markdown printing when optimization fails (#630)
- ParameterNotFoundException doesn't prepend '.' if path is empty (#688)
- Ensure Parameter.label is str or None (#678)
- Properly scale StdError of estimated parameters with RMSE (#704)
- More robust covariance_matrix calculation (#706)
ParameterGroup.markdown()
independent parametergroups of order (#592)
ProjectIo
'folder'/'legacy' plugin to save results (#620)Model
'spectral-model' (#672)
- User documentation is written in notebooks (#568)
- Documentation on how to write a
DataIo
plugin (#600)
glotaran.ParameterGroup
->glotaran.parameterParameterGroup
glotaran.read_model_from_yaml
->glotaran.io.load_model(..., format_name="yaml_str")
glotaran.read_model_from_yaml_file
->glotaran.io.load_model(..., format_name="yaml")
glotaran.read_parameters_from_csv_file
->glotaran.io.load_parameters(..., format_name="csv")
glotaran.read_parameters_from_yaml
->glotaran.io.load_parameters(..., format_name="yaml_str")
glotaran.read_parameters_from_yaml_file
->glotaran.io.load_parameters(..., format_name="yaml")
glotaran.io.read_data_file
->glotaran.io.load_dataset
result.save
->glotaran.io.save_result(result, ..., format_name="legacy")
result.get_dataset("<dataset_name>")
->result.data["<dataset_name>"]
glotaran.analysis.result
->glotaran.project.result
glotaran.analysis.scheme
->glotaran.project.scheme
model.simulate
->glotaran.analysis.simulation.simulate(model, ...)
- Force recalculation of SVD attributes in
scheme._prepare_data
(#597) - Remove unneeded check in
spectral_penalties._get_area
Fixes (#598) - Added python 3.9 support (#450)
- Re-release of version 0.3.1 due to packaging issue
- Added compatibility for numpy 1.20 and raised minimum required numpy version to 1.20 (#555)
- Fixed excessive memory consumption in result creation due to full SVD computation (#574)
- Added feature parameter history (#557)
- Moved setup logic to
setup.cfg
(#560)
- Significant code refactor with small API changes to parameter relation specification (see docs)
- Replaced lmfit with scipy.optimize
- Large refactor with significant improvements but also small API changes (see docs)
- Removed doas plugin
- Package was renamed to
pyglotaran
on PyPi
- Changed
nan_policiy
toomit
- Added support for multiple shapes per compartment.
- First release on PyPI, support for Windows installs added.
- Pre-Alpha Development