forked from eltrompetero/coniii
-
Notifications
You must be signed in to change notification settings - Fork 0
/
RELEASE_NOTES
159 lines (132 loc) · 6.48 KB
/
RELEASE_NOTES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
Log for major changes in releases
v3.0.1 (Released 2022/10)
----------------------------------------------------
- Bug fix in setup script.
v3.0.0 (Released 2022/06)
----------------------------------------------------
- Conditional (fixed spin) Metropolis sampling now in C++).
- Standardized method names for generating samples and data member names for
sample to "generate_sample" and the singular "sample".
- Better handling of conda include paths and Python version in setup.
v2.4.4 (Released 2021/10)
----------------------------------------------------
- Updated conditional Metropolis sampling.
v2.4.3 (Released 2021/05)
----------------------------------------------------
- Maintenance release to quash multiple bugs including one introduced in last
release.
v2.4.2 (Released 2021/04)
----------------------------------------------------
- Fixed instantiation bug in model.Ising (thanks to saynbabul for pointing this
out).
v2.4.1 (Released 2021/01)
----------------------------------------------------
- Fixed new bugs in installation scripts.
v2.4.0 (Released 2021/01)
----------------------------------------------------
- Update for Python 3.8.3 and Boost 1.74.0.
- New SparseEnumerate class for handling sparsely constrained system.
v2.3.1 (Released 2020/10)
----------------------------------------------------
- Automated linking of Boost C++ module using conda-forge.
v2.3.0 (Released 2020/05)
----------------------------------------------------
- Sped up Metropolis sampling using Boost C++ extension. Up to 1000x speedup
achievable compared to Python version. This must be compiled separately and is
not yet available through a PyPI installation.
- Added variation of 3-state Potts model.
v2.2.1 (Released 2019/12/2)
----------------------------------------------------
- Random number generator use update in RegularizedMeanField.
v2.1.1 (Released 2019/11/29)
----------------------------------------------------
- Added convenient multiplier transformation functions utils.vec2mat and
utils.mat2vec.
- Output from ClusterExpansion.solve is of different order when
full_output=True. Now, entropy estimate comes second instead of first to
maintain consistency for when full_output=False.
v2.1.0 (Released 2019/11/28)
----------------------------------------------------
- Fixed bug in Pseudo. It was using a non-standard algorithm for solving the
Ising model. Find more details in Issue #8
(https://github.com/eltrompetero/coniii/issues/8).
v2.0.0 (Released 2019/11/28) VERSION RELEASE, BREAKS COMPATIBILITY, READ NOTES
----------------------------------------------------
- Simpler interface for using solvers with Ising model. No custom function
definitions required. All are defined by default. Note that this will break
compatibility with code relying on version 1. See usage_guide.ipynb for
examples with new interface.
- New "models.py" module to wrap evaluation of and sampling from maxent models.
- Added a convenient Metropolis sampler call, samplers.sample_ising.
v1.2.2 (Released 2019/09/19)
----------------------------------------------------
- Minor maintenance.
v1.2.1 (Released 2019/05/31)
----------------------------------------------------
- Pseudo solver sped up and Ising-specific calculation removed.
- Bugs.
v1.2.0 (Released 2019/05/02)
----------------------------------------------------
- Bugs fixed in package setup for PyPI.
v1.1.9 (Released 2019/04/22)
----------------------------------------------------
- Added support for Potts models in new module enumerate_potts.py.
- Typos fixed in usage guide Jupyter notebook.
- Added Ising class in .ising module for wrapping some useful functions for use with the
Ising model.
v1.1.8 (Released 2019/04/08)
----------------------------------------------------
- Bug fixes.
v1.1.7 (Released 2019/03/20)
----------------------------------------------------
- enumerate.py can now write files that handle arbitrary precision using mpmath. These are
written to files using the prefix '_hp.py'.
- Interface bug fixes.
- Updated dependency requirements to later versions of numba and numpy and new dependency
on mpmath.
- Some revisions to usage guide notebook.
v1.1.6 (Released 2019/03/12)
----------------------------------------------------
- Bug fixes.
- License date update.
v1.1.5 (Released 2019/02/24)
----------------------------------------------------
- Bug fixes.
v1.1.4 (Released 2019/01/06)
----------------------------------------------------
- Enumerate.solve() now uses scipy.optimize.root to find solution and is MUCH faster.
v1.1.3 (Released 2018/12/17)
----------------------------------------------------
- Update to Ising equation files in v1.1.0 to make them much smaller used Scipy's
logsumexp function which is slow! With own light implementation, code is at least
several times faster to evaluate.
v1.1.2 (Released 2018/12/16)
----------------------------------------------------
- Bug fix in type casting in Metropolis.generate_samples_parallel().
- convertTo kwarg for utils.convert_corr has been changed to convert_to to make it uniform
with other functions.
- convert_to is no longer a keyword argument and is now a regular argument that must be
specified as a string.
v1.1.0 (Released 2018/12/13)
----------------------------------------------------
- Bug fix in type casting in Metropolis.generate_samples_parallel().
- Now compatible with multiprocess v0.70.6
- Updated sampling method for Metropolis to be more efficient by running fewer systems for
longer and taking iterative samples instead of starting with a completely new system for
every sample (which takes longer to burn in and requires starting new processes). This
is automated such that the number of samples is divided evenly amongst all running
processes)..
- Added working version of ParallelTempering sampler.
- n_cpus and nCpus are now used to refer to number of allowed processes to spawn and got
rid of cpu_count which can be confused in `multiprocess.cpu_count`.
- Improvements to enumerate.py: More compact Ising equation files and better precision by
using scipy.special.logsumexp.
- Jupyter is no longer required for installation of ConIII by default.
- Ising functions (calc_e and functions that use it) assume that spins are now integer
types. TypeError in jit is thrown if not. Updates to other functions for compatibility
(e.g. utils.bin_states() return integer types).
- Removed use_numba switch for samplers.
- Removed FastMCIsing sampler.
v1.0.3 (Released 2018/11)
----------------------------------------------------
- First official release.