All notable changes to this project will be documented in this file.
- #1243 Added testing for Python 3.9.
- #1213, #1216 Added the truncated Gaussian distribution as a log prior,
TruncatedGaussianLogPrior
. - #1212 Added the
PooledLogPDF
class to allow for pooling parameters across log-pdfs. - #1204 This CHANGELOG file to show the changes introduced in each release.
- #1190 A new
ConstantAndMultiplicativeGaussianLogLikelihood
was added. - #1183 Three new methods were added for diagnosing autocorrelated or time-varying noise:
plot_residuals_binned_autocorrelation
,plot_residuals_binned_std
, andplot_residuals_distance
. - #1175 Added notebooks showing how to interface with the
statsmodels
Python package which allows fitting ARIMAX and state space models in PINTS. - #1165 A new
Transformation
abstract class was added, along withComposedTransformation
,IdentityTransformation
,LogitTransformation
,LogTransformation
,RectangularBoundariesTransformation
,ScalingTransformation
subclasses to achieve more effective and efficient optimisation and sampling. - #1165 A new optional argument
transform
was added to bothOptimisationController
andMCMCController
to transform parameters during optimisation and sampling. - #1112 A new
NoUTurnMCMC
sampler (NUTS) was added, along with aDualAveragingAdaption
class to adaptively tune related Hamiltonian Monte Carlo methods. - #1025 Added a stochastic logistic growth problem for use with ABC.
- #1250 The returned values from
SingleChainMCMC.tell()
andMultiChainMCMC.tell()
have been extended from current positionx
tox, fx, accepted
, wherefx
is the current log likelihood andaccepted
is a bool indicating whether tell performed an acceptance step in this call. - #1195 The installation instructions have been updated to reflect that PINTS in now pip-installable.
- #1191 Warnings are now emitted using
warnings.warn
rather thanlogging.getLogger(..).warning
. This makes them show up like other warnings, and allows them to be suppressed with filterwarnings. - #1112 The new NUTS method is only supported on Python 3.3 and newer; a warning will be emitted when importing PINTS in older versions.
- #1112 The
pints.Logger
can now deal withNone
being logged in place of a proper value.
- #1201 The method
pints.rhat_all_params
was accidentally removed in 0.3.0, but is now back in deprecated form.
- #1250 The methods
SingleChainMCMC.current_log_pdf()
andMultiChainMCMC.current_log_pdf()
have been removed.
- #1264 Fixed a bug relating to how NUTS handles nans when values outside the range of the priors are proposed.
- #1257 Fixed a bug in
GaussianLogPrior
, which meant the distribution could be instantiated with a non-positive standard deviation. - #1246 Fixed a long-standing bug in
PopulationMCMC
, which caused it to sample incorrectly. - #1196 The output of the method
pints.HalfCauchyLogPrior.sample
had the wrong shape.
- This is the first pip installable release. The changelog documents all changes since this release.