Recent Releases of rt1
rt1 - RT1 v2.0
new
- HDF5 containers can now be used instead of pickle-dumps to store
FitsandMultiFitsobjects RTprocessis now directly appending results to an HDF5-container during parallel processing- colored log-messages can be used (requires
coloramapackage) - there's now a proper container for
defdictto simplify get/set of variable definitions - indicate fit-results in
fit.plot.analyzemodel
changes
processfuncis now private (e.g._processfunc) -> userun_processinginstead!
fixes
- several bugfixes along the way
- Python
Published by raphaelquast over 2 years ago
rt1 - RT1 v1.5.2
new
- there's now a quick and easy data-export function
RTprocess.export_data()- extract parameters and performance-metrics from a folder of dump-files
- there's now an
RTresults.dump_fits- generator that directly returns Fits-objects RTprocessobject can now be initialized without a config-file- option to pass a list of dump-files to
rtprocess.run_finalout()added
fixes
- speedup for indexing of folders with large amounts of dump-files
- some minor logging updates
- Python
Published by raphaelquast over 4 years ago
rt1 - RT1 v1.5.1
new
- add possibility to provide numeric V & SRF functions for faster evaluation if no interaction-term is calculated
- there is now a property
fit.config_namethat indicates the config-name for fits that belong to aMultiFitsobject - datasets provided to
rtfits.Fitsare now checked for sorting (and automatically sorted if necessary)
fixes
- make
ncoefsa propery for "Rayleigh" and "Isotropic" phase-functions - improved logging messages
- don't log each successful progress step, only errors and warnings
- don't create a single file for each error (log traceback to log-file directly)
- keep minimal info from
fit.fit_outputwhen dumping fits to disc - improvements on caching and pre-computation steps
- pre-evaluate fn-coefficients during finalout-generation
- cache lambda-functions for
V.pandSRF.brdf
- fix sorting of fractional contributions in
rtplots.printsig0analysis() - some updates on
rtplots.polarplot()for symbolic parameter specification - make sure copying of config-files and modules is only attempted from the main process
- Python
Published by raphaelquast almost 5 years ago
rt1 - RT1 v1.5
new
- add possibility to provide numeric V & SRF functions for faster evaluation if no interaction-term is calculated
- there is now a property
fit.config_namethat indicates the config-name for fits that belong to aMultiFitsobject - datasets provided to
rtfits.Fitsare now checked for sorting (and automatically sorted if necessary)
fixes
- make
ncoefsa propery for "Rayleigh" and "Isotropic" phase-functions - improved logging messages
- don't log each successful progress step, only errors and warnings
- don't create a single file for each error (log traceback to log-file directly)
- keep minimal info from
fit.fit_outputwhen dumping fits to disc - improvements on caching and pre-computation steps
- pre-evaluate fn-coefficients during finalout-generation
- cache lambda-functions for
V.pandSRF.brdf
- fix sorting of fractional contributions in
rtplots.printsig0analysis() - some updates on
rtplots.polarplot()for symbolic parameter specification - make sure copying of config-files and modules is only attempted from the main process
- Python
Published by raphaelquast almost 5 years ago
rt1 - RT1 v1.4
new
- add possibility to call finalizer after
rt1.rtprocess.run_processing()finished- to "clean-up" after processing is done (or the process is terminated)
- add option to save dumps in
rtprocess.run_processing()even ifpostprocessis not called viart1.rtprocess.run_processing(..., dump_fit=True)
Multiconfig Fits
- add possibility to specify multiple configs in a single .ini file
- processing of multiple configs involves only a single call to
read()! - you can specify as many configs as you like in a single
.inifile! - to specify multiconfigs, add the config-specific changes to sections starting with
[#config <NAME> <SECTION>]
for example:
- processing of multiple configs involves only a single call to
```ini [defdict] --- the default defdict ---
[#config NAME defdict] --- all specifications that differ from the default defdict --- ```
- Multiconfig fits will be handled with a
rt1.rtfits.MultiFitsobject- use
rt1.rtfits.MultiFits.accessorto accessFitspropeties of all configs
- use
- all processed configurations can be saved in a single
.dump-file!- this avoids duplicating data that is shared between the configs
fixes
- fix issue in the default "domainfuncs" of
rt1.general_functions.scale() - make sure
rt1.rtfits.reinit_object()only copies relevant properties - speed up
rtprocess.RTresultsinitialization for folders with many files
- Python
Published by raphaelquast almost 5 years ago
rt1 - v1.3
new
- logging implemented
- incorporate basic NetCDF export functionality via
xarray(rt1.processing_config.postprocess_xarray()) - new
rtmetricsclass to provide easy access to common metrics calculation - add option to disable postprocessing va
RTprocess.run_processing(postprocess=False)- add option to run processing and NetCDF export in 2 separate runs
- e.g. via
run_processing()andrun_finalout()
- e.g. via
- add
dump_fitoption torun_processing()so fits are dumped even ifpostprocess=False
- add option to run processing and NetCDF export in 2 separate runs
changes
copyis now an argument of the__init__ofRTprocessinstead ofRTprocess.run_processing()
unittests
- switch tests to github actions
- use conda
.ymlfile for requirements
- use conda
- switch coverage reports to codecov
- reactivate stickler & flake8
- use github actions for PyPi upload
fixes
- fix processing and logging with
ncpu=1 - enure that the
processing_configclass and additional modules are loaded from the correct folder - fix future warnings in
sympyandmatplotlib - make
RTresults.load_fit()find fits faster- allow passing integers to load the nth result
- fix sorting in
printsig0analysis() - fix parsing error in
param_dyn_dict - use pickleable decoration of initializer function
- proper detection of submodules in
setup.py - incorporate pending changes in
scipy > v1.6.3(e.g. adjust call signature ofsympy.Lambdify)
- Python
Published by raphaelquast about 5 years ago
rt1 - v1.2
changes
- the reader-function in
rt1.rtprocessis now called without dict-unpacking!!
(e.g. viareader(reader_args)instead ofreader(**reader_args))
! this might require modifications in existing scripts !
fixes
- correct parsing of
Noneinrt1.rtparse - multiprocessing pool initializer also executed in single core processing (for debug)
rt1.rtprocessnow useswarnings.warninstead ofprintfor general messages
new
- convenience-method
interpolate_to_index()added tort1.genreal_functions
- Python
Published by raphaelquast over 5 years ago
rt1 - v1.1.9
changes
rtfits.preprocess()is now called prior to parallel-processing- a check if files already exist should now be done within the reader-function!
- copying of modules is shifted from the
rtparsetortprocessto avoid copying files when config is read - the configparser now has methods
get_module('modulename')as well asget_all_modules()to programmatically import modules - all parallel-processing functions have been shifted to the dedicated
rtprocessmodule
fixes
- corrections to the treatment of
integerparameter-dynamics specified infit.defdict - the cache is now only cleared at the beginning of a
fit.performfit()call - correct final message in
processfunc()progress-bar
new
a dedicated class for parallel processing (
rt1.rtprocess) has been introducedrt1.rtprocess.RTprocesscan be used to setup and run parallel jobsrt1.rtprocess.RTresultscan be used to provide easy-access to processing-results
some updates on rtplots.printsig0analysis()
- now one can select additional timeseries from both fit.res_df and fit.dataset
- ... and the styles can be set using the printparamstyles - dict
- Python
Published by raphaelquast over 5 years ago
rt1 - v1.1.8
changes
- manual parameter dynamics are no longer automatically used if a column
'param_dyn'is provided
... to use manual dynamics, you now must use one of the following:- explicitly specify parameter-dynamics as
'manual'infit.defdict - to combine a pandas datetime-offset
freqwith a manual-dyn use'freq + manual'
- explicitly specify parameter-dynamics as
new
- the
model_definitiontext has been updated to include more details - the property
fit._model_definitionis added to allow accessing the model_definition string
(useful for example to write it to a file) RT1_configparsernow provides a function.get_module(modulename)to import a specific module from a file
fixes
- fix import-location for copied modules in
rtparse(now modules are imported from the copy-path)
- Python
Published by raphaelquast over 5 years ago
rt1 - v1.1.6
added possibility to provide arbitrary start-values via the dataset
- dataset -columns "parameter_start" are now used to assign start-values for the parameters
there is now a
load()function inrt1.rtfitsto load fit-configurations dumped viafit.dump()
fixes
- cache mask during fit
- interpolation now works also with unsorted groupings -> now it's possible to fit interpolated seasonalities etc.
- ... some speed-ups
- Python
Published by raphaelquast almost 6 years ago
rt1 - v1.1.4
- add possibility for parsing (dtype-converted) lists in
rtparse.get_process_specs()
fixes
- fix of issue with inner-derivatives in case unequal groupings are used within sub-parameters
- speedup in the initialization of the jac-assign rules
- fix issue in
rtplots.analyzemodelwithint_Q = True
changes
- change of folder-structure used in default parallel-processing funcs
- put all files in sub-folders of dumpfolder (
cfg,results,dumps)
- put all files in sub-folders of dumpfolder (
- change of datetime format-specifications in .ini files
- "fmt=" is now used as separator instead of ","
- Python
Published by raphaelquast almost 6 years ago
rt1 - v1.1.1
intermediate_residuals()added tortplots- allows analyzing residual-development during fit-procedure with 2D or 3D plots
- fixed issues with unsorted (manual) parameter-groupings
- add possibility to use the
dataset-indexor thegroup-indexinprintsig0analysis - add public method
calc_model()as wrapper of_calc_modelthat directly returns apandas.DataFrame - get zenodo DOI and automatically deploy releases to pypi.org
- Python
Published by raphaelquast almost 6 years ago
rt1 - RT1 v1.0.0
First release of the RT1 module, consisting of:
rt1.rt1: basic calculation routines for symbolic and numerical evaluation of generic modelsrt1.surfaceandrt1.volume: a set of flexible surface- and volume scattering phase functionsrt1.rtfits: interface for (parallelized) nonlinear least-squares fittingrt1.rtplots: several nice plot-functions and interactive widgets to analyze resultsrt1.rtparse: a configparser to specify processing-routines via.inifilesrt1.processing_config: some useful default functions for processing
- Python
Published by raphaelquast almost 6 years ago
rt1 - fourth beta release
this is (still) a beta-release, so use it with care!
major updates of rtfits
- parallel processing
- configparser
- use properties to avoid storing duplicated data
- use caching to speed up fits
additional useful features added
- Python
Published by raphaelquast almost 6 years ago
rt1 - third beta release
this is a beta-release, so use it with care!
- the fit.result list has been removed and replaced with individual class-attributes
- several plotfunctions added
- setter- functions for parameters are removed (from now on, no axis is added when setting a value)
- Python
Published by raphaelquast over 6 years ago
rt1 - second beta release
a second beta-release with major changes
- Python
Published by raphaelquast over 7 years ago
rt1 - first beta release
this is a first beta-release, so be careful if you use it!
- Python
Published by raphaelquast over 8 years ago