Recent Changes
- Commit
Fix missing : syntax error (#149) by Evan Berkowitz at 2024-09-23 12:17:03
Version/1.0.0 (#148) by Evan Berkowitz at 2024-09-23 11:32:45
* Bump to version 1
documentation/publications (#147) by Evan Berkowitz at 2024-09-23 11:19:23
DOCS ADDITIONS ============== * Publications * Compact boson documentation * Update 3450 reference with publication details * Support * Sidebar links * ORCID IDs + handle trademark rights * Contributor + collaborator affiliations + contact * Zenodo badge * CITATION.cff DOCS FIXES ========== * Squash example/plot/{comparison,forms}.py warning The fix was simple: just separate the marker styling from coloring. The point is that in the p={1,2} we just want to draw background-color markers, not color them according to a cmap. * We no longer restraing W=1 in the Villain case. * Remove TODO about lattice irrep projection * Include supervillain logo on main docs page
Hotfix: dopey axis labeling (#146) by Evan Berkowitz at 2024-09-18 09:08:02
Documentation/lattice derivative pictures (#145) by Evan Berkowitz at 2024-09-18 08:56:32
LATTICE DOCUMENTATION ===================== * Examples visualizing Lattice2D.{d,delta} + explanation. * Example visualizing data layout + explanation.
Feature/production (#144) by Evan Berkowitz at 2024-09-13 09:10:33
* Legible str(Worm generators) * Log generator report during ensemble.generate * Derived registry This makes it easy to loop everything a Bootstrap object understands: the primary observables AND the derived quantities, by doing eg. ```python for o in (supervillain.observables | supervillain.derivedQuantities): ... ``` * cli.input_file type to parse modules * Use hammer in tests * Bootstrap.estimate only collapses the bootstrap axis Previously the estimate of any observable at all whatsoever would produce a single number, even a two-point correlator, which should have produced a whole volume's worth of numbers. * Feature/numba worm (#142) * numba-aware _Lattice2D stub * numba acceleration of worldline worm * old implementation moved to reference_implementations.worldline.ClassicWorm * Add numba to installation requirements.txt * Needs numba 0.60.0 to avoid [issue when passing np.rng objects](https://numba.discourse.group/t/numba-not-recognizing-numpy-random-generator-obj/1766/5) * Monitors Monitors are do-nothing generators which let you perform arbitrary actions during the generation loop. * Fix example/action-comparison.py cli defaults + types * Require recent pandas * Villain worm with numba acceleration * test_validity checks no constraint-violating cfgs are generated * Spun out production scripts into their own repo. See supervillain-generalized-bkt-transition commit c6ef22b9044f8af9a06dd2240584f6e0baa95698
changes.rst contains recent git log (#141) by Evan Berkowitz at 2024-08-27 14:09:57
Also remove the untracked / uncommitted changes; that seems to appear on RtD even though the repo there should be clean. I assume it's because the compilation produces some h5 files, but why aren't they ignored?
Feature/infinite w (#140) by Evan Berkowitz at 2024-08-23 19:37:48
# W=∞ Documentation ------------- * What follows: (integer v)/W --> (real v)/2π Derive the substitution rule for the rest of this branch. * Comments explaining choices in Hammers. Code ---- * Critical scaling dimensions Δ_V and Δ_S for the W=∞ case * Worldline Action adaptations for W=∞ * Introduce _W to make the simple replacement W-->2π when v is real. * v is float when W=∞. * Most Worldline updates just need to use _W * The VortexUpdate is trickier with W=∞ The main thing is that it needs to draw from a real-valued distribution, not a discrete choice of integers. * Update all W dependent observables It's only 2! Almost all that are sensitive to W are through Links, which we update here. * Tweak validity for Villain configurations at W=∞ * Harmonize worm tallying This isn't a bugfix exactly, but it does affect the matching between self-dual W=∞ computations. The issue is essentially that by tallying at different times we slightly change the histograms of the inline observables. In particular, different choices slightly change the tally at 0 displacement, resulting in differing normalizations. This harmonizes those choices so that the self-dual correlator match as close as we care to measure. * Update Villain hammer to handle W=∞ specially * Adjustable Hammer The worm is pure python and the slowest generator included in the Hammers. Therefore we add an adjustable parameter to control how many worms are done per iteration. This essentially controls both the runtime and the number of inline observables. Examples -------- * example/no-vortices.py Produces results at W=∞. * Generators log at the DEBUG level, not INFO so that examples can log at the INFO level more helpfully. * Correctly parse W=∞ using supervillain.cli.W * Tweak default parameters for inline demo
Project plotted correlators to A1 by default. (#139) by Evan Berkowitz at 2024-08-19 12:26:30
By irrep projecting in the plotting utility we can avoid overwriting the measured correlators.
Feature/blocked inline observables (#138) by Evan Berkowitz at 2024-08-15 15:09:44
* Generator sugar gives The Hammer * Block inline measurements with KeepEvery generator * Don't block an .every ensemble