Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge updates from main into functional testing branch #1510

Merged
merged 459 commits into from
Dec 12, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
459 commits
Select commit Hold shift + click to select a range
ba6d5ce
Merge pull request #1432 from pints-team/additional-stochastic-models
phumtutum Mar 16, 2022
f8bf6f4
Added URL meta data to setup.py
MichaelClerx Mar 17, 2022
64bd474
Merge branch 'master' into i-96-abc-routine
MichaelClerx Mar 17, 2022
a5e026c
Merge leftovers
MichaelClerx Mar 17, 2022
95c910e
Test tweak
MichaelClerx Mar 17, 2022
7380440
Merge pull request #1413 from pints-team/i-96-abc-routine
rccreswell Mar 22, 2022
5dc3ec5
mentioned that it is also called ABC PMC
phumtutum Mar 24, 2022
166e9b1
Merge branch 'master' into i-1055-abc-smc
phumtutum Mar 24, 2022
84817d5
fixed smc reference
phumtutum Mar 24, 2022
36b4a89
fixed ipynb + tests
phumtutum Mar 24, 2022
096dc20
test coverage fix + doc fix
phumtutum Mar 25, 2022
54b6723
ident + doc fix
phumtutum Mar 25, 2022
dc1c400
doc fix + coverage fix
phumtutum Mar 25, 2022
2816bc1
tests ubuntu fix?
phumtutum Mar 25, 2022
0f902d7
test fix
phumtutum Mar 25, 2022
da3f8ea
add multiple logpdfs to mcmc controller
rccreswell Mar 29, 2022
d7fd323
check number of positions
rccreswell Mar 29, 2022
615a599
add tests
rccreswell Mar 29, 2022
aecf5d2
add docs
rccreswell Mar 29, 2022
fc295f4
extend from evaluator
rccreswell Mar 29, 2022
c234e7c
test that multiple logpdfs are called
rccreswell Mar 29, 2022
fdfcc51
fix coverage
rccreswell Mar 29, 2022
a3ad2cd
fix pr comments
phumtutum Mar 30, 2022
22f4558
doc fix
phumtutum Mar 30, 2022
488815a
doc fix
phumtutum Mar 30, 2022
ada6ef7
coverage fix
phumtutum Mar 30, 2022
013617c
improvements to code and errors
rccreswell Mar 30, 2022
f6cea34
fix tests for new errors
rccreswell Mar 30, 2022
48a1d90
Update pints/_evaluation.py
rccreswell Mar 31, 2022
6ca1c80
Merge pull request #1444 from pints-team/issue-1443-multiple-logpdfs
rccreswell Mar 31, 2022
3211652
add explanation of evaluator
rccreswell Mar 31, 2022
e778d1c
changelog
rccreswell Mar 31, 2022
5873959
Merge pull request #1445 from pints-team/issue-1443-explain
rccreswell Mar 31, 2022
e72ee16
Merge pull request #1440 from pints-team/setup-py-more-meta
MichaelClerx Apr 12, 2022
5a769f4
fixed some comments + using lists for storing current and last genera…
phumtutum Apr 13, 2022
daabd98
Optimised smc with storing only last 2 generations
phumtutum Apr 13, 2022
251b770
fixed smc description
phumtutum Apr 13, 2022
0af48c8
fixed smc test
phumtutum Apr 13, 2022
3881de3
Added ask&tell to smc ipynb + log fixes to smc
phumtutum Apr 13, 2022
e20e2f3
coverage fix
phumtutum Apr 13, 2022
928b104
Apply suggestions from code review
MichaelClerx Apr 14, 2022
f0c9e2b
Docstring fix
MichaelClerx Apr 14, 2022
bf495a8
fixed ipynb + description of ABC SMC
phumtutum Apr 14, 2022
5a86eaa
Merge branch 'i-1055-abc-smc' of https://github.com/pints-team/pints …
phumtutum Apr 14, 2022
b8898ab
SMC now returns the intermediate generation samples as well
phumtutum Apr 15, 2022
c3fa399
test coverage fix
phumtutum Apr 15, 2022
9b08811
fixed parallelisation issue on ABC rejection
phumtutum Apr 19, 2022
e6a0c15
removed ask-tell from abc smc ipynb
phumtutum Apr 20, 2022
42ce8a6
Merge pull request #1442 from pints-team/i-1055-abc-smc
phumtutum Apr 20, 2022
77ab8df
made return similar to the one in ABC SMC
phumtutum Apr 20, 2022
f08e612
Merge branch 'master' into abc-parallel-fix
phumtutum Apr 21, 2022
ef95580
fixed accepted array
phumtutum Apr 21, 2022
bb1e1df
fix for tests
phumtutum Apr 21, 2022
a75d3cf
Update pints/_abc/_abc_rejection.py
MichaelClerx May 2, 2022
281b4f2
Added test for preventing future bugs
phumtutum May 5, 2022
37b6f24
Merge pull request #1447 from pints-team/abc-parallel-fix
ben18785 May 10, 2022
7989db6
Changed del(x) to del x
MichaelClerx Aug 3, 2022
9c24091
Changed assert(x) to assert x
MichaelClerx Aug 3, 2022
7b39e9d
Style tweak
MichaelClerx Aug 3, 2022
c061c8d
Test fixes (equal -> almostEqual).
MichaelClerx Aug 3, 2022
0ea655d
Set language in docs conf to 'en'.
MichaelClerx Aug 3, 2022
7330d3a
Made consistent with by removing and adding .
MichaelClerx Aug 11, 2022
dfeb765
Fixed a bug in .
MichaelClerx Aug 11, 2022
88e56fe
Update pints/_log_likelihoods.py
MichaelClerx Aug 11, 2022
b6135bd
Fixed bugs in bugfix in MarkovJumpModel.
MichaelClerx Aug 11, 2022
2e21d62
Improved errors and error checking in MarkovJumpModel.
MichaelClerx Aug 11, 2022
2afaee9
Merge pull request #1449 from pints-team/del-operator
MichaelClerx Aug 11, 2022
b42e649
Merge branch 'master' into 1402-transformed-interfaces
MichaelClerx Aug 11, 2022
761d498
Dram set_hyperparameters are now eta, sigma_scale_1, sigma_scale_2
MichaelClerx Aug 11, 2022
b5ac435
Merge branch 'master' into i1337-dram-bug
MichaelClerx Aug 11, 2022
b825380
Style fix
MichaelClerx Aug 11, 2022
e2539d3
Merge branch 'master' into i1376-lognormal-loglikelihood
MichaelClerx Aug 11, 2022
a7350d8
Added missing tests to dram
MichaelClerx Aug 11, 2022
113869c
Updated changelog
MichaelClerx Aug 11, 2022
4667886
Style fix
MichaelClerx Aug 11, 2022
c69a748
Updated changelog
MichaelClerx Aug 11, 2022
99203ab
Merge pull request #1339 from pints-team/i1337-dram-bug
MichaelClerx Aug 11, 2022
7194881
Merge pull request #1378 from pints-team/i1376-lognormal-loglikelihood
MichaelClerx Aug 11, 2022
975d6ac
Merge branch 'master' into 1402-transformed-interfaces
MichaelClerx Aug 11, 2022
0534674
Updated changelog
MichaelClerx Aug 11, 2022
158496f
Fixed tests for transformed boundaries.
MichaelClerx Aug 11, 2022
728d86f
Merge pull request #1450 from pints-team/1402-transformed-interfaces
MichaelClerx Aug 11, 2022
841ac63
Gave ScalingTransformation private properties and added equation to d…
MichaelClerx Aug 14, 2022
42f974d
Docstring tweak
MichaelClerx Aug 14, 2022
d0a4972
Updated ScalingTransform docstring.
MichaelClerx Aug 15, 2022
94d975a
Merge pull request #1455 from pints-team/1454-scaling-trans
MichaelClerx Aug 15, 2022
05b2a20
Added translation to scalingtransformation and added unitcube transfo…
MichaelClerx Aug 15, 2022
04f89f0
Sorted classes.
MichaelClerx Aug 15, 2022
a31b64e
Fixed UnitCubeTransformation tests
MichaelClerx Aug 15, 2022
0eb71f1
Fixed typo in deprecation warning on UnknownNoiseLikelihood.
MichaelClerx Aug 15, 2022
a7925b5
Update CHANGELOG.md
MichaelClerx Aug 15, 2022
935393a
Updated changelog
MichaelClerx Aug 15, 2022
0065f8f
Made gradient descent set its learning rate as min(sigma0). Updated i…
MichaelClerx Aug 16, 2022
03aa6c7
Updated changelog
MichaelClerx Aug 16, 2022
bc6970a
Merge pull request #1457 from pints-team/typo-deprec
DavAug Aug 16, 2022
27d8d26
Merge pull request #1458 from pints-team/1105-grad-desc-1
MichaelClerx Aug 16, 2022
b6809a8
Adding iRprop- local optimiser.
MichaelClerx Aug 16, 2022
2cb428c
Updated irprop test
MichaelClerx Aug 16, 2022
b889d91
Added iRprop- example
MichaelClerx Aug 16, 2022
120697b
Style fix in irprop- test
MichaelClerx Aug 16, 2022
1e4c005
Fixed typo in examples/readme
MichaelClerx Aug 16, 2022
af4ba7f
Adding Adam optimiser
MichaelClerx Aug 16, 2022
fd6afc1
Added Adam example
MichaelClerx Aug 16, 2022
edff89e
Tweaked comments & docstrings irpropmin
MichaelClerx Aug 17, 2022
9acb238
Merge pull request #1459 from pints-team/1105-irpropmin
MichaelClerx Aug 17, 2022
0695d82
Merge branch 'master' into 1105-adam
MichaelClerx Aug 17, 2022
6b7019f
Merge branch 'master' into 1453-scaling-translation-transfomation
MichaelClerx Aug 17, 2022
810d7f7
Merge pull request #1456 from pints-team/1453-scaling-translation-tra…
MichaelClerx Aug 17, 2022
d178581
Added max evaluations stopping criterion to opt controller. Closes #937.
MichaelClerx Aug 17, 2022
fc1e402
Tweaks to Adam after review DavAug.
MichaelClerx Aug 17, 2022
4f6c445
Fix to Adam test
MichaelClerx Aug 17, 2022
f8ebc24
Improved initialisation for irpropmin
MichaelClerx Aug 17, 2022
ac1e520
Tweak
MichaelClerx Aug 17, 2022
f75911e
Merge pull request #1460 from pints-team/1105-adam
MichaelClerx Aug 17, 2022
858489d
Merge branch 'master' into 937-max-evals
MichaelClerx Aug 17, 2022
ed1b137
Fix to set_max_evaluations test
MichaelClerx Aug 17, 2022
bef9d02
Update pints/_optimisers/__init__.py
MichaelClerx Aug 17, 2022
ab33fe2
Merge pull request #1462 from pints-team/937-max-evals
MichaelClerx Aug 17, 2022
3940aad
Simplified notation in MeanSquaredError.__call__.
MichaelClerx Aug 24, 2022
dd43a26
Merge pull request #1463 from pints-team/mse-refactor
DavAug Aug 24, 2022
c51ae92
Fixes to ABC controller test.
MichaelClerx Aug 24, 2022
84aebc7
Extended IRPropMin with boundary support and methods to set min and m…
MichaelClerx Aug 25, 2022
eed241b
Updated changelog
MichaelClerx Aug 25, 2022
096b204
Added TransformedRectangularBoundaries class.
MichaelClerx Aug 25, 2022
2832cc6
Fix to new TransRectBound
MichaelClerx Aug 25, 2022
5b2ca4f
Suppressing some warnings in tests
MichaelClerx Aug 25, 2022
42aba19
Added test for irpropmin min and max step sizes
MichaelClerx Aug 25, 2022
e998d04
Improved step size reduction in IRPropMin when using non-rectangular …
MichaelClerx Aug 25, 2022
1d5a9fb
Apply suggestions from code review
MichaelClerx Aug 26, 2022
c71f617
Style fix
MichaelClerx Aug 26, 2022
d72ca64
Merge pull request #1466 from pints-team/1451-trans-rect-bound
MichaelClerx Aug 26, 2022
d9a9100
Merge branch 'master' into rprop-bounds
MichaelClerx Aug 26, 2022
d4ba352
iRprop- now checks that max_step_size > min_step_size.
MichaelClerx Aug 29, 2022
931d02b
Merge pull request #1465 from pints-team/rprop-bounds
MichaelClerx Aug 29, 2022
24ae543
Fix to irpropmin test
MichaelClerx Aug 31, 2022
b585dba
Added pseudo-code to docs for Adam. Added momentum parameters to Adam…
MichaelClerx Aug 31, 2022
a464ca8
Removed comment
MichaelClerx Aug 31, 2022
3c3bb55
Fixed annulus notebook: Was using deprecated/removed matplotlib synta…
MichaelClerx Oct 3, 2022
b7f1f56
Update README.md
MichaelClerx Nov 8, 2022
c93b78f
Upgraded github action versions. Temporarily replaced tests running o…
MichaelClerx Nov 9, 2022
d2557b9
Added Python 3.11 to testing.
MichaelClerx Nov 9, 2022
733164f
Merge pull request #1475 from pints-team/no-311
MichaelClerx Nov 9, 2022
ce54ba1
#1477 update badge url
martinjrobins Jan 26, 2023
c67bbf8
#1473 remove deprecated decorator
DavAug Feb 15, 2023
f9a147e
Update license
DavAug Feb 15, 2023
45ebeec
Update python versions
DavAug Feb 15, 2023
4018d40
#1473 test 3.7, 3.8, 3.9, 3.11
DavAug Feb 15, 2023
9ff760f
replace np.float by np.float64
DavAug Feb 15, 2023
80567fa
replace np.float('inf') by np.inf
DavAug Feb 15, 2023
d2ab595
fix bool check in PooledLogPDF
DavAug Feb 15, 2023
a75aa45
fix ComposedPrior.mean() test
DavAug Feb 15, 2023
cd4c3ff
fix abc test
DavAug Feb 15, 2023
c9a0b70
remove obsolete assert
DavAug Feb 15, 2023
d943594
add Python 3.10
DavAug Feb 15, 2023
7ac4c2d
#1473 increase coverage
DavAug Feb 15, 2023
c419299
flake 8
DavAug Feb 15, 2023
2792580
update changelog
DavAug Feb 15, 2023
508724c
Update CHANGELOG.md
MichaelClerx Mar 17, 2023
dbcd56f
Update .github/workflows/unit-test-python-coverage.yml
MichaelClerx Mar 17, 2023
7e2883e
Merge pull request #1479 from pints-team/issue-1473-nuts-coroutines
MichaelClerx Mar 17, 2023
62790ad
Triggering build
MichaelClerx Mar 17, 2023
2a0e3fb
Update README.md
MichaelClerx Mar 17, 2023
da566d2
Merge branch 'master' into test-on-311
MichaelClerx Mar 17, 2023
492faef
Merge pull request #1478 from pints-team/i1477-badges
MichaelClerx Mar 17, 2023
b837316
Re-ran annulus notebook: works!
MichaelClerx Mar 17, 2023
c741158
Merge pull request #1476 from pints-team/test-on-311
MichaelClerx Mar 17, 2023
86237c1
Merge pull request #1472 from pints-team/notebook-annulus-fix
MichaelClerx Mar 17, 2023
9609376
Tweaked and corrected Adam docs.
MichaelClerx Mar 21, 2023
6ca0d19
Tweaked and corrected Adam docs.
MichaelClerx Mar 21, 2023
8bd6eb9
Merge branch 'master' into abc-controller-test
MichaelClerx Mar 21, 2023
249f2b7
ABC controller tweak
MichaelClerx Mar 21, 2023
6c56e5e
Merge pull request #1469 from pints-team/1105-adam-boundaries
MichaelClerx Mar 21, 2023
5c4bd01
Merge pull request #1464 from pints-team/abc-controller-test
MichaelClerx Mar 21, 2023
827561d
Add GaussianIntegratedLogUniformLogLikelihood
chonlei Jul 25, 2023
e097d2a
Fix typo
chonlei Jul 25, 2023
984da80
Add GaussianIntegratedLogUniformLogLikelihood
chonlei Jul 25, 2023
f0f198f
Add Gauss
chonlei Jul 25, 2023
95cf359
Add GaussianIntegratedLogUniformLogLikelihood
chonlei Jul 25, 2023
a7b072c
Fix typo
chonlei Jul 25, 2023
8e40c22
Updated testing from Ubuntu 18+22 to 20+22.
MichaelClerx Jul 25, 2023
7c99d81
Updated changelog
MichaelClerx Jul 25, 2023
e46f770
Merge pull request #1485 from pints-team/ubuntu-update-18-to-20
chonlei Jul 25, 2023
4f73da8
Clean up division
chonlei Jul 25, 2023
dee34f5
Tidy up code
chonlei Jul 25, 2023
411f12e
Clean up docstring
chonlei Jul 25, 2023
6f4820c
Update changelog for #1484
chonlei Jul 25, 2023
b8247ef
Added .readthedocs.yaml
MichaelClerx Jul 25, 2023
f00c95b
Update docstring
chonlei Jul 25, 2023
b321bdb
Fix to readthedocs yaml
MichaelClerx Jul 25, 2023
97498e5
Update docstring
chonlei Jul 25, 2023
c46361e
Merge pull request #1484 from pints-team/i1483-GaussianIntegratedLogU…
chonlei Jul 25, 2023
03dc1e5
Fix to readthedocs yaml
MichaelClerx Jul 25, 2023
db94514
Fix to readthedocs yaml
MichaelClerx Jul 25, 2023
6890f70
Fix to readthedocs yaml
MichaelClerx Jul 25, 2023
d872ec7
Fix to readthedocs yaml
MichaelClerx Jul 25, 2023
4f72900
Indenting fix to readthedocs.yaml
MichaelClerx Jul 25, 2023
7c73738
Merge pull request #1488 from pints-team/1487-readthedocs-yaml
MichaelClerx Jul 25, 2023
9c94421
Renaming master to main
MichaelClerx Jul 26, 2023
ab1850c
Updated changepoint testing repo name
MichaelClerx Jul 26, 2023
6bf08b8
Fixed typo
MichaelClerx Jul 26, 2023
ca636d2
Merge pull request #1489 from pints-team/1486-main
MichaelClerx Jul 26, 2023
dd2f48c
Doc fix
MichaelClerx Jul 26, 2023
3ba4958
Merge pull request #1490 from pints-team/1486-main-2
MichaelClerx Jul 26, 2023
25c1be9
Updated changelog in preparation for 0.5.0 release.
MichaelClerx Jul 26, 2023
5997bbe
Updated setup.py to reflect that 3.7 is the minimum supported version…
MichaelClerx Jul 26, 2023
b832c88
Updated version number
MichaelClerx Jul 27, 2023
d2f498c
Merge pull request #1492 from pints-team/release-0.5.0
MichaelClerx Jul 27, 2023
0aad100
Moving to next version
MichaelClerx Jul 27, 2023
d8cec9b
Merge pull request #1493 from pints-team/post-0.5.0
MichaelClerx Jul 27, 2023
bd52ae3
Updated matplotlib.patches. Ellipse syntax to match 3.x version (but …
MichaelClerx Sep 25, 2023
22df291
#1496 replace np.product by np.prod everywhere
DavAug Oct 9, 2023
1ba17cb
#1496 update changelog
DavAug Oct 9, 2023
b07f75e
Merge pull request #1497 from pints-team/issue-1496-deprecation-warni…
DavAug Oct 9, 2023
4323e8b
Merge pull request #1495 from pints-team/cmaes-bare-notebook-ellipse
MichaelClerx Oct 9, 2023
2827882
add uniform log prior
aabills Oct 12, 2023
20c0c7b
test and implement loguniformlogprior
aabills Oct 18, 2023
bfc559d
docs
aabills Oct 18, 2023
32987d8
style fixes
aabills Oct 18, 2023
e11f292
Update pints/_log_priors.py
aabills Oct 20, 2023
06bf199
code review fixes
aabills Oct 20, 2023
925b8f4
Merge branch 'main' into less-daunting-contribution-text
MichaelClerx Oct 21, 2023
3ff0f3e
Merge pull request #1474 from pints-team/less-daunting-contribution-text
MichaelClerx Oct 21, 2023
5544f2b
Merge pull request #1499 from abillscmu/feature/reciprocal-prior
ben18785 Oct 23, 2023
12e08f1
Update CHANGELOG.md
MichaelClerx Oct 31, 2023
ea408ed
Merge pull request #1501 from pints-team/1499-missing-changelog-update
ben18785 Nov 7, 2023
74395b9
Convert input to the right size
chonlei Nov 7, 2023
42693c0
Do not change the input vector
chonlei Nov 7, 2023
41da58d
Removed units from time headers in controllers. Closes #1467.
MichaelClerx Nov 7, 2023
5affaaf
Updating tests and changelog
MichaelClerx Nov 7, 2023
c576517
Fix import bug
chonlei Nov 7, 2023
770079a
Add test for incorrect input error
chonlei Nov 7, 2023
870aa03
Change mode to executable
chonlei Nov 7, 2023
36adc72
Fix input dimension error issue
chonlei Nov 7, 2023
fd89506
Add test for incorrect input error
chonlei Nov 7, 2023
fa17729
Updated tests for #1467.
MichaelClerx Nov 7, 2023
7e6d228
Reverted accidental notebook update
MichaelClerx Nov 7, 2023
84377fa
Fix typo
chonlei Nov 7, 2023
0d2840d
Updated optimiser first example to show how to change settings of opt…
MichaelClerx Nov 7, 2023
101c65f
Updated optimisation example notebook to use the controller. Closes #…
MichaelClerx Nov 7, 2023
67a9786
Add note to readme on discrete parameters
MichaelClerx Nov 7, 2023
1e361ea
Added note on parameter types to ErrorMeasure and LogPDF
MichaelClerx Nov 7, 2023
569b957
Updated changelog
MichaelClerx Nov 7, 2023
e9aebba
Update _twisted_gaussian_banana.py
chonlei Nov 7, 2023
bf12ae1
Update CHANGELOG.md for #1505
chonlei Nov 7, 2023
107af2f
Merge pull request #1505 from pints-team/i612-toy-inputs
chonlei Nov 7, 2023
220e49d
Merge pull request #1506 from pints-team/682-no-discrete-parameters
MichaelClerx Nov 14, 2023
cb0a4c3
Merge pull request #1503 from pints-team/1467-csv-time-field
k-shep Nov 21, 2023
211662f
#1491 correct typos in first-example opt notebook
ben18785 Dec 5, 2023
88ad47c
#1491 correct typo in nelder-mead and add a clarification for ask-tel…
ben18785 Dec 5, 2023
e82aae3
Merge pull request #1507 from pints-team/1491-opt-examples
MichaelClerx Dec 5, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 5 additions & 6 deletions .github/workflows/copyright-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: Copyright
on:
push:
branches:
- master
- main
pull_request:
# Run workflow when PR is changed, or when changed from draft to ready
types: [opened, synchronize, reopened, ready_for_review]
Expand All @@ -20,13 +20,12 @@ jobs:
if: github.event.pull_request.draft == false

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3

- name: Set up Python 3.9
uses: actions/setup-python@v1
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
architecture: x64
python-version: '3.11'

- name: install pints
run: |
Expand Down
11 changes: 5 additions & 6 deletions .github/workflows/coverage-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: Coverage
on:
push:
branches:
- master
- main
pull_request:
# Run workflow when PR is changed, or when changed from draft to ready
types: [opened, synchronize, reopened, ready_for_review]
Expand All @@ -20,13 +20,12 @@ jobs:
if: github.event.pull_request.draft == false

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3

- name: Set up Python 3.9
uses: actions/setup-python@v1
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
architecture: x64
python-version: '3.11'

- name: install pints
run: |
Expand Down
11 changes: 5 additions & 6 deletions .github/workflows/docs-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: Doctest
on:
push:
branches:
- master
- main
pull_request:
# Run workflow when PR is changed, or when changed from draft to ready
types: [opened, synchronize, reopened, ready_for_review]
Expand All @@ -20,13 +20,12 @@ jobs:
if: github.event.pull_request.draft == false

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3

- name: Set up Python 3.9
uses: actions/setup-python@v1
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
architecture: x64
python-version: '3.11'

- name: install pints
run: |
Expand Down
9 changes: 4 additions & 5 deletions .github/workflows/notebook-interfaces-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,12 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3

- name: Set up Python 3.9
uses: actions/setup-python@v1
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
architecture: x64
python-version: '3.11'

# We use e.g. install pints[stan] to install dependencies for interfaces
# that have some code in pints/interfaces. Dependencies that are not used
Expand Down
9 changes: 4 additions & 5 deletions .github/workflows/notebook-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,12 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3

- name: Set up Python 3.9
uses: actions/setup-python@v1
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
architecture: x64
python-version: '3.11'

- name: install pints
run: |
Expand Down
11 changes: 4 additions & 7 deletions .github/workflows/style-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: Style tests (flake8)
on:
push:
branches:
- master
- main
pull_request:
# Run workflow when PR is changed, or when changed from draft to ready
types: [opened, synchronize, reopened, ready_for_review]
Expand All @@ -20,13 +20,10 @@ jobs:
if: github.event.pull_request.draft == false

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3

- name: Set up Python 3.9
uses: actions/setup-python@v1
with:
python-version: 3.9
architecture: x64
- name: Set up Python
uses: actions/setup-python@v4

- name: install pints
run: |
Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/unit-test-os-coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: Unit tests (OS versions)
on:
push:
branches:
- master
- main
pull_request:
# Run workflow when PR is changed, or when changed from draft to ready
types: [opened, synchronize, reopened, ready_for_review]
Expand All @@ -21,16 +21,16 @@ jobs:

strategy:
matrix:
os: [ubuntu-18.04, macos-latest, windows-latest]
os: [ubuntu-20.04, macos-latest, windows-latest]
# Note: Ubuntu 22 is checked by other tests

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3

- name: Set up Python 3.9
uses: actions/setup-python@v1
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
architecture: x64
python-version: '3.11'

- name: install pints
run: |
Expand Down
15 changes: 10 additions & 5 deletions .github/workflows/unit-test-python-coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: Unit tests (python versions)
on:
push:
branches:
- master
- main
pull_request:
# Run workflow when PR is changed, or when changed from draft to ready
types: [opened, synchronize, reopened, ready_for_review]
Expand All @@ -21,13 +21,14 @@ jobs:

strategy:
matrix:
python-version: [3.5, 3.6, 3.7, 3.8, 3.9]
python-version: ['3.7', '3.8', '3.9', '3.10']
# Note: Latest version is tested by coverage test and os tests

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v1
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
architecture: x64
Expand All @@ -36,7 +37,11 @@ jobs:
run: |
python --version
python -m pip install --upgrade pip setuptools wheel
python -m pip install .[stan]
python -m pip install .

- name: install stan
if: matrix.python-version != '3.6'
run : python -m pip install .[stan]

- name: run unit tests
run: |
Expand Down
9 changes: 4 additions & 5 deletions .github/workflows/upload-to-pypi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,12 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3

- name: Set up Python 3.9
uses: actions/setup-python@v1
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
architecture: x64
python-version: '3.11'

- name: install dependencies
run: |
Expand Down
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ __pycache__/
# Jupyter checkpoints
.ipynb_checkpoints/

# Jupyter stan build files
examples/interfaces/build

# Apple stuff
.DS_Store

Expand All @@ -26,7 +29,8 @@ __pycache__/
studies

# Virtual environments
venv*
venv/*
env/*

# Build artifacts
build/*
Expand Down
38 changes: 38 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Read the Docs configuration file for Sphinx projects
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

# Set the OS, Python version and other tools you might need
build:
os: ubuntu-22.04
tools:
python: "3.9" # Currently (2023-07-25) seems to be the sweet spot...
# You can also specify other tool versions:
# nodejs: "20"
# rust: "1.70"
# golang: "1.20"

# Build documentation in the "docs/" directory with Sphinx
sphinx:
configuration: docs/source/conf.py
# You can configure Sphinx to use a different builder, for instance use the dirhtml builder for simpler URLs
# builder: "dirhtml"
# Fail on all warnings to avoid broken references
# fail_on_warning: true

# Optionally build your docs in additional formats such as PDF and ePub
# formats:
# - pdf
# - epub

# Optional but recommended, declare the Python requirements required
# to build your documentation
# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html
python:
install:
- requirements: .requirements-docs.txt
- method: pip
path: .

58 changes: 57 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,64 @@

All notable changes to this project will be documented in this file.

## [Unreleased]
## Unreleased

### Added
- [#1499](https://github.com/pints-team/pints/pull/1499) Added a log-uniform prior class.
- [#1505](https://github.com/pints-team/pints/pull/1505) Added notes to `ErrorMeasure` and `LogPDF` to say parameters must be real and continuous.
### Changed
- [#1503](https://github.com/pints-team/pints/pull/1503) Stopped showing time units in controller logs, because the units change depending on the output type (see #1467).
### Deprecated
### Removed
### Fixed
- [#1505](https://github.com/pints-team/pints/pull/1505) Fixed issues with toy problems that accept invalid inputs.


## [0.5.0] - 2023-07-27

### Added
- [#1484](https://github.com/pints-team/pints/pull/1484) Added a `GaussianIntegratedLogUniformLogLikelihood` class that calculates the log-likelihood with its Gaussian noise integrated out with an uninformative prior in log-space.
- [#1466](https://github.com/pints-team/pints/pull/1466) Added a `TransformedRectangularBoundaries` class that preserves the `RectangularBoundaries` methods after transformation.
- [#1462](https://github.com/pints-team/pints/pull/1461) The `OptimisationController` now has a stopping criterion `max_evaluations`.
- [#1460](https://github.com/pints-team/pints/pull/1460) [#1468](https://github.com/pints-team/pints/pull/1468) Added the `Adam` local optimiser.
- [#1459](https://github.com/pints-team/pints/pull/1459) [#1465](https://github.com/pints-team/pints/pull/1465) Added the `iRprop-` local optimiser.
- [#1456](https://github.com/pints-team/pints/pull/1456) Added an optional `translation` to `ScalingTransform` and added a `UnitCubeTransformation` class.
- [#1432](https://github.com/pints-team/pints/pull/1432) Added 2 new stochastic models: production and degradation model, Schlogl's system of chemical reactions. Moved the stochastic logistic model into `pints.stochastic` to take advantage of the `MarkovJumpModel`.
- [#1420](https://github.com/pints-team/pints/pull/1420) The `Optimiser` class now distinguishes between a best-visited point (`x_best`, with score `f_best`) and a best-guessed point (`x_guessed`, with approximate score `f_guessed`). For most optimisers, the two values are equivalent. The `OptimisationController` still tracks `x_best` and `f_best` by default, but this can be modified using the methods `set_f_guessed_tracking` and `f_guessed_tracking`.
- [#1417](https://github.com/pints-team/pints/pull/1417) Added a module `toy.stochastic` for stochastic models. In particular, `toy.stochastic.MarkovJumpModel` implements Gillespie's algorithm for easier future implementation of stochastic models.
- [#1413](https://github.com/pints-team/pints/pull/1413) Added classes `pints.ABCController` and `pints.ABCSampler` for Approximate Bayesian computation (ABC) samplers. Added `pints.RejectionABC` which implements a simple rejection ABC sampling algorithm.
- [#1378](https://github.com/pints-team/pints/pull/1378) Added a class `pints.LogNormalLogLikelihood`.

### Changed
- [#1485](https://github.com/pints-team/pints/pull/1485) PINTS is no longer tested on Ubuntu 18.04 LTS, but on 20.04 LTS and 22.04 LTS.
- [#1479](https://github.com/pints-team/pints/pull/1479) PINTS is no longer tested on Python 3.6. Testing for Python 3.11 has been added.
- [#1479](https://github.com/pints-team/pints/pull/1479) The `asyncio.coroutine` decorators have been removed from all of NUTS's coroutines in order to be compatible with Python 3.11.
- [#1466](https://github.com/pints-team/pints/pull/1466) `Transformation.convert_boundaries` will now return a `TransformedRectangularBoundaries` object if the transformation is element-wise and the given boundaries extend `RectangularBoundaries`.
- [#1458](https://github.com/pints-team/pints/pull/1458) The `GradientDescent` optimiser now sets its default learning rate as `min(sigma0)` (it can still be changed afterwards with `set_learning_rate()`).
- [#1445](https://github.com/pints-team/pints/pull/1445) Allowed multiple LogPDFs to be supplied to the MCMCController (one for each MCMC chain), and added an evaluator which evaluates each position on a separate callable.
- [#1439](https://github.com/pints-team/pints/pull/1439), [#1433](https://github.com/pints-team/pints/pull/1433) PINTS is no longer tested on Python 3.5. Testing for Python 3.10 has been added.
- [#1435](https://github.com/pints-team/pints/pull/1435) The optional Stan interface now uses (and requires) pystan 3 or newer. The ``update_data`` method has been remove (model compilation is now cached so that there is no performance benefit to using this method).
- [#1424](https://github.com/pints-team/pints/pull/1424) Fixed a bug in PSO that caused it to use more particles than advertised.
- [#1424](https://github.com/pints-team/pints/pull/1424) xNES, SNES, PSO, and BareCMAES no longer use a `TriangleWaveTransform` to handle rectangular boundaries (this was found to lead to optimisers diverging in some cases).

### Removed
- [#1424](https://github.com/pints-team/pints/pull/1424) Removed the `TriangleWaveTransform` class previously used in some optimisers.

### Fixed
- [#1497](https://github.com/pints-team/pints/pull/1497) Fixed deprecation warning of `np.product` globally in pints.
- [#1457](https://github.com/pints-team/pints/pull/1457) Fixed typo in deprecation warning for `UnknownNoiseLikelihood`.
- [#1455](https://github.com/pints-team/pints/pull/1455) The `s` and `inv_s` properties of `ScalingTransformation` have been replaced with private properties `_s` and `_inv_s`.
- [#1450](https://github.com/pints-team/pints/pull/1450) Made `TransformedBoundaries` consistent with `Boundaries` by removing `range()` and adding `sample()`.
- [#1449](https://github.com/pints-team/pints/pull/1449) Fixed a bug in `MarkovJumpModel.interpolate_mol_counts`.
- [#1399](https://github.com/pints-team/pints/pull/1339) Fixed a bug in `DramACMC`, and fixed the number of proposal kernels to 2.


## [0.4.0] - 2021-12-07

### Added
- [#1409](https://github.com/pints-team/pints/pull/1409) The `OptimisationController` now accepts a callback function that will be called at every iteration; this can be used for easier customisation or visualisation of the optimiser trajectory.
- [#1383](https://github.com/pints-team/pints/pull/1383) Added a method `toy.TwistedGaussianDistribution.untwist` that turns samples from this distribution into samples from a multivariate Gaussian.
- [#1322](https://github.com/pints-team/pints/pull/1322) Added a method `sample_initial_points` that allows users to generate random points with finite metrics (either log-probabilities or error measures) to use as starting points for sampling or optimisation.
- [#1243](https://github.com/pints-team/pints/pull/1243) Added testing for Python 3.9.
- [#1213](https://github.com/pints-team/pints/pull/1213), [#1216](https://github.com/pints-team/pints/pull/1216) Added the truncated Gaussian distribution as a log prior, `TruncatedGaussianLogPrior`.
- [#1212](https://github.com/pints-team/pints/pull/1213) Added the `PooledLogPDF` class to allow for pooling parameters across log-pdfs.
Expand All @@ -19,6 +73,7 @@ All notable changes to this project will be documented in this file.
- [#1025](https://github.com/pints-team/pints/pull/1025) Added a stochastic logistic growth problem for use with ABC.

### Changed
- [#1420](https://github.com/pints-team/pints/pull/1420) The `OptimisationController` now logs a best and a current score.
- [#1375](https://github.com/pints-team/pints/pull/1375) Changed all arguments called `transform` to `transformation` for consistency.
- [#1365](https://github.com/pints-team/pints/pull/1365) Dropped support for Python 2.7. PINTS now requires Python 3.5 or higher.
- [#1360](https://github.com/pints-team/pints/pull/1360) The `ParallelEvaluator` will now set a different (pre-determined) random seed for each task, ensuring tasks can use randomness, but results can be reproduced from run to run.
Expand All @@ -30,6 +85,7 @@ All notable changes to this project will be documented in this file.
- [#1112](https://github.com/pints-team/pints/pull/1112) The `pints.Logger` can now deal with `None` being logged in place of a proper value.

### Deprecated
- [#1420](https://github.com/pints-team/pints/pull/1420) The methods `pints.Optimisation.xbest()` and `fbest()` are deprecated in favour of `x_best()` and `f_best()`.
- [#1201](https://github.com/pints-team/pints/pull/1201) The method `pints.rhat_all_params` was accidentally removed in 0.3.0, but is now back in deprecated form.

### Removed
Expand Down
5 changes: 3 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ You now have everything you need to start making changes!
11. If you added a major new feature, perhaps it should be showcased in an [example notebook](#example-notebooks).
12. When you feel your code is finished, or at least warrants serious discussion, run the [pre-commit checks](#pre-commit-checks) and then create a [pull request](https://help.github.com/articles/about-pull-requests/) (PR) on [PINTS' GitHub page](https://github.com/pints-team/pints).
13. Update `CHANGELOG.md`, following the guidelines in the [changelog](#changelog) section.
14. Once a PR has been created, it will be reviewed by any member of the community. Changes might be suggested which you can make by simply adding new commits to the branch. When everything's finished, someone with the right GitHub permissions will merge your changes into PINTS master repository.
14. Once a PR has been created, it will be reviewed by any member of the community. Changes might be suggested which you can make by simply adding new commits to the branch. When everything's finished, someone with the right GitHub permissions will merge your changes into PINTS main repository.

Finally, if you really, really, _really_ love developing PINTS, have a look at the current [project infrastructure](#infrastructure).

Expand Down Expand Up @@ -414,12 +414,13 @@ Documentation is built using https://readthedocs.org/ and published on http://pi
Configuration files:

```
.readthedocs.yaml
.requirements-docs.txt
```

### Binder

Editable notebooks are made available using [Binder](mybinder.readthedocs.io) at https://mybinder.org/v2/gh/pints-team/pints/master?filepath=examples.
Editable notebooks are made available using [Binder](mybinder.readthedocs.io) at https://mybinder.org/v2/gh/pints-team/pints/main?filepath=examples.

Configuration files:

Expand Down
Loading
Loading