Recent Releases of faunus

faunus - Version 2.16.3

  • Conda build fix Full Changelog: https://github.com/mlund/faunus/compare/v2.16.2...v2.16.3

- C++
Published by mlund over 1 year ago

faunus - Version 2.16.2

  • Stabilised build system for Conda

Full Changelog: https://github.com/mlund/faunus/compare/v2.16.1...v2.16.2

- C++
Published by mlund over 1 year ago

faunus - Version 2.16.1

What's Changed

  • Fix MPI build.
  • Fix dependency warnings with newer cmake versions.

Full Changelog: https://github.com/mlund/faunus/compare/v2.16.0...v2.16.1

- C++
Published by mlund over 1 year ago

faunus - Version 2.16.0

What's Changed

  • Partial migration from range-v3 to std::ranges by @mlund in https://github.com/mlund/faunus/pull/452
  • Tempering update by @mlund in https://github.com/mlund/faunus/pull/441
  • Tempering update by @IVinterbladh in https://github.com/mlund/faunus/pull/454
  • Use optional integer to store exchange partner by @mlund in https://github.com/mlund/faunus/pull/455
  • Update Voronota-LT, add alternative modes to Voronoi analysis. by @kliment-olechnovic in https://github.com/mlund/faunus/pull/456
  • Fix anglescan when the two molecules are different by @mlund in https://github.com/mlund/faunus/pull/458

New Contributors

  • @kliment-olechnovic made their first contribution in https://github.com/mlund/faunus/pull/456

Full Changelog: https://github.com/mlund/faunus/compare/v2.15.0...v2.16.0

- C++
Published by mlund over 1 year ago

faunus - Version 2.15.0

What's Changed

  • Make atomic displacement parameters optional by @mlund in https://github.com/mlund/faunus/pull/451

Full Changelog: https://github.com/mlund/faunus/compare/v2.14.0...v2.15.0

- C++
Published by mlund almost 2 years ago

faunus - Version 2.14.0

What's Changed

  • Add harmonic potential to constraint by @mlund in https://github.com/mlund/faunus/pull/445
  • Output inter-particle bond info by @mlund in https://github.com/mlund/faunus/pull/450
  • Clang tidy fixes by @mlund in https://github.com/mlund/faunus/pull/447
  • Apply clang format by @mlund in https://github.com/mlund/faunus/pull/449
  • Update list of contributers by @mlund in https://github.com/mlund/faunus/pull/446

Full Changelog: https://github.com/mlund/faunus/compare/v2.13.0...v2.14.0

- C++
Published by mlund almost 2 years ago

faunus - Version 2.13.0

What's Changed

  • Voronoi surface area analysis using Voronota-LT by @mlund in https://github.com/mlund/faunus/pull/444
  • Version bump of spdlog, pybind11, nlohmann_json.
  • Dangling reference fix (b0fee39)

Full Changelog: https://github.com/mlund/faunus/compare/v2.12.0...v2.13.0

- C++
Published by mlund about 2 years ago

faunus - Version 2.12.0

What's Changed

  • Write state file for minimum system energy by @mlund in https://github.com/mlund/faunus/pull/442
  • changed misspelled mininum to minimum in files by @IVinterbladh in https://github.com/mlund/faunus/pull/443
  • yason.py support script now requires the ruamel.yaml python package

Full Changelog: https://github.com/mlund/faunus/compare/v2.11.0...v2.12.0

- C++
Published by mlund about 2 years ago

faunus - Version 2.11.0

What's Changed

  • Add SASA analysis and test by @Smutekj in https://github.com/mlund/faunus/pull/399
  • Add save_min_conf to systemenergy analysis to save minimum energy configuration. By @mlund in https://github.com/mlund/faunus/pull/440
  • Use upstream ruamel.yaml instead of ruamel_yaml by @mbargull in https://github.com/mlund/faunus/pull/435
  • Update versions of external libraries
  • Fix readthedocs setup
  • Fix Github CI for C++20 by @mlund in https://github.com/mlund/faunus/pull/439

New Contributors

  • @mbargull made their first contribution in https://github.com/mlund/faunus/pull/435

Full Changelog: https://github.com/mlund/faunus/compare/v2.10.1...v2.11.0

- C++
Published by mlund over 2 years ago

faunus - Version 2.10.1

Changes

  • Fix install target for anglescan examples

Full Changelog: https://github.com/mlund/faunus/compare/v2.10.0...v2.10.1

- C++
Published by mlund almost 3 years ago

faunus - Version 2.10.0

What's Changed

  • Support for Gibbs ensemble for studying phase equilibria.
    • Gibbs ensemble: volume exchange by @mlund in https://github.com/mlund/faunus/pull/430
    • Gibbs ensemble: matter exchange by @mlund in https://github.com/mlund/faunus/pull/431
  • Updated documentation about multipole analysis by @IVinterbladh in https://github.com/mlund/faunus/pull/432
  • Add Random slump parameter for tempering by @IVinterbladh in https://github.com/mlund/faunus/pull/434. This should make it possible to use grand canonical schemes with parallel tempering.

Full Changelog: https://github.com/mlund/faunus/compare/v2.9.1...v2.10.0

- C++
Published by mlund almost 3 years ago

faunus - Version 2.9.1

Changes

  • Fix "progresstracker" compilation error on some systems, incl.

Full Changelog: https://github.com/mlund/faunus/compare/v2.9.0...v2.9.1

- C++
Published by mlund about 3 years ago

faunus - Version 2.9.0

What's Changed

  • Add a preface section to the user input which may contain a list of actions to be run prior to simulation. The discrete angle analysis below is an example of this.
  • Added --norun command line option to skip simulation.
  • Discrete angle integration by @mlund in https://github.com/mlund/faunus/pull/427 This allows for explicit angular integration of two rotating, rigid bodies. Energies and quaternions are streamed to disk and free energies and thermally averaged energies are reported.
  • Update minimum cmake version stated in manual by @SHervoe-Hansen in https://github.com/mlund/faunus/pull/424
  • Add VSC dev container config files by @mlund in https://github.com/mlund/faunus/pull/425
  • Enabled OpenMP by default

Full Changelog: https://github.com/mlund/faunus/compare/v2.8.0...v2.9.0

- C++
Published by mlund about 3 years ago

faunus - Version 2.8.0

What's Changed

  • Fix speciation moves for parallel tempering by @mlund in https://github.com/mlund/faunus/pull/419
  • Custom group to group pair-potential by @mlund in https://github.com/mlund/faunus/pull/421
  • Rename namespace and base classes by @mlund in https://github.com/mlund/faunus/pull/422
  • Upgrade nanobench from v3 to v4 by @mlund in https://github.com/mlund/faunus/pull/423
  • Table cleanup by @mlund in https://github.com/mlund/faunus/pull/420
  • Fix GCC warnings

Full Changelog: https://github.com/mlund/faunus/compare/v2.7.0...v2.8.0

- C++
Published by mlund over 3 years ago

faunus - Version 2.7.0

What's Changed

  • Add minimum distance option to groupmatrix analysis by @MarcoPolimeni in https://github.com/mlund/faunus/pull/418
  • Add scipy clustering example for groupmatrix analysis
  • Add optional particle-particle threshold to cluster move (com keyword)
  • Add PSC patchy particle unittest (964948e199d1f14fa6e2e22d5f7e6ab3c6094cb1)
  • Upgraded external libraries (0bf11d2352064aefc1378dd7fa9746a8b3cd4590)
  • Updated installation instructions (8bc5f8c706ed722f47114eed9e6caaecfb837bb4)
  • Updated TBB instructions for when using C++17 parallel algorithms and certain GCC installations.
  • Fixed a potentially dangling reference (7d168cbe3d247e399eec9750e2b6fa669c34b5e9)
  • OpenMP is now disabled by default (62036d3ac6101134744912c22532e1df3a3e0180)
  • Fixed GCC 12 warnings
  • Clarify positions keyword in manual (6da63c8d36625a6ce63c83a4d3fac134991ab612)
  • Fix plot pair-potential notebook

Full Changelog: https://github.com/mlund/faunus/compare/v2.6.1...v2.7.0

- C++
Published by mlund over 3 years ago

faunus - Version 2.6.1

What's Changed

  • Add policy to swap PSC patch information only by @mlund in https://github.com/mlund/faunus/pull/415
  • Group matrix analysis by @mlund in https://github.com/mlund/faunus/pull/416

Full Changelog: https://github.com/mlund/faunus/compare/v2.6.0...v2.6.1

- C++
Published by mlund about 4 years ago

faunus - Version 2.6.0

Since the last release, 139 commits have been added. Full list of changes from v2.5.0 to v2.6.0.

New features

  • Generalised smart Monte Carlo move with support for regions (#405)
  • Quadratic charge move (#406)
  • Debye screening length can be deduced for complex salts
  • MPL is used for all MPI calls (#398)
  • Faster, internal SASA hamiltonian with support for periodic boundary conditions (#397)
  • Separate density analysis for atoms and groups
  • Reduce parallel summation memory requirement by a factor of two
  • Patchy sphero-cylinders (PSCs) are back! (#408)
    • PSC trajectory format
    • VMD visualiation
    • Ancients tests are back
  • Enhanced translational displacement analysis for Dynamic MC (experimental)
  • Ability to save penalty function tables to disk during simulation

Compatibility

  • Compilation defaults to C++20 standard meaning that a pretty modern compiler is needed.
  • A scripts/Dockerfile is provided for creating containers with JupyterLab and Faunus preinstalled.

Partial list of fixes and enhancements

  • Refactoring of speciation move to allow for future expansion (#410)
  • Fix dirrot mass center error (bf088b45c77f97b71f882b86d3edb4d922f1f6dd)
  • Update manual for units on angles (dprot)
  • Fix potential harmonic bond breaking (#403)
  • Fix time stamp in output (#395)
  • Fix ion-ion Ewald energy (28f0c41b9ffd2ab7148fb6bf7faf8c07b4164f7d)
  • Enable C++20 mode compilation (a975438d8cd95a3b34b7f08f811f65cebbe58ab2)
  • Correctly handle inactive particles when using group output with xtc files (#402)
  • Fix 'constraint' energy when loading state (0d27a68f2c6ef60377a33c9d7a62c62823a5c513)
  • Safer xtc file handling

- C++
Published by mlund about 4 years ago

faunus - Version 2.5.0

Since 2.4.0 we have included more than 120 commits and closed 59 pull requests. While mostly invisible for users, we have made lots of internal refactoring and unit-testing to make Faunus more robust and maintainable.

Enhancements

  • Electric potential analysis (#379)
  • Constant interval moves (#381)
  • Force calculation and LD propagation of angular potentials (#368)
  • FASTA file loader
  • Improved structure file I/O (#376)
  • PCG Random number generator supprt (#369)
  • Add Langevin Dynamics that can be mixed with Monte Carlo moves (#298). It works with common pair-potentials and a subset of bonded interactions.
  • Add particle energy histogram to transrot move (#358)
  • Add shape anisotropy analysis to clustermove (#336)
  • Add copy_policy to conformation swap move (#354)
  • Support mapping of hexagonal cells to cuboids (#328)
  • Allow cuboids and hexagons in scattering analysis (#327)
  • Enable Intel Threading Building Blocks (#325)
  • Polymer shape analysis and tensor file output (#323, ea7c628)
  • Enable integer selection for inactive molecules (#317)
  • Introduced overwrite option to savestate (#309)
  • Allow Gzip compression a number of streaming outputs (#289, #308)
  • Add replay move (52e5364)
  • Optional to perform filename increment for savestate (#292)
  • Anisotropic volume perturbation (#291)
  • Optimize cluster search in ClusterMove (#285)
  • Relax Gouy-Chapman input (#248)
  • Add conformation id analysis (2e929b8)
  • Add python support module (555e8e7)
  • Add Apple M1 support (#355)
  • Store simulation duration in json output (#290)
  • Added example: bend for mixed MC/MD
  • Handle build dependencies using CPM (#380)

Bug Fixes and Optimisations

  • Fix empty error message from Hamiltonian (#360)
  • Use CPM.cmake for CMake dependency handling (#380)
  • Respect active particles in Langevin Dynamics (#324)
  • Refactor widom analysis (#310)
  • Splining of Yukawa fails bug (#301)
  • Fix speciation check for full or empty groups (#300)
  • Enable JSON output for nonbonded energy (#288)
  • Fix moltransrot if atomic group (#287)
  • Dipole mass center fix (#334)
  • Parallel Temper fix (#333)
  • VirtualVolumeAnalysis (Space is a reference) (#330)
  • AAM file reader (atoms begin at line 2) (#329)
  • Update crankshaft in schema.yml (#307)
  • Fix numeric overflow in energy (4f57102, 9b42049)
  • Fix possible infinite math in Release mode (b0859d9)
  • Clarify keyword inactive in manual (#316)
  • Optimisation: binary search in Bonded energy (#335)
  • Upgrade external libraries (#297)

- C++
Published by mlund almost 5 years ago

faunus - Version 2.4.2

Changes

Bug fix

  • Fixes a bug (#300) where products or reactants could be wrongly (de)activated even if the groups are full/empty. This is a problem important only when simulating at extreme conditions where the groups are nearly empty or nearly full. The issue could appear as a non-zero net-charge upon restarting an equilibration run which would typically be initiated with all molecules in their active state. The issue would not appear with swap moves and only if multiple products or reactants were involved in the reaction.

  • Fixed broken Eigen library URL

Nothing else has changed since v2.4.1

- C++
Published by mlund about 5 years ago

faunus - Version 2.4.1

In v2.4.0, the make install target is broken. This patches (#281) this problem, while the main Faunus code is unchanged.

- C++
Published by mlund about 6 years ago

faunus - Version 2.4.0

New features

  • Support for JSON schema giving more robust input file checking (#240)
  • Allow implicit molecules and finite reservoirs in reactive Monte Carlo (#259)
  • Excluded neighbors in non-bonded interaction (#161)
  • Draw from active molecular groups (#277)
  • Add molarity keyword for insertmolecules (#263)
  • Enhanced Gouy-Chapman support (#264)
  • Non-electroneutrality compensation in Ewald summation (#255)
  • OpenMP parallelisation for scattering analysis (#243)
  • Virtual translation move for force calculation (#236)
  • Enable muVT ensemble with cluster move (#230)
  • Enable gzip compression for reactioncoordinate analysis (#280)
  • Write analysis to disk every macro step (#227)
  • PQR output respects inactive particles (#279)

Other improvements

  • Fix: Group::contains for inactive groups fix (#267)
  • Fix: pybind11 bug (#233)
  • Fix: Speciation move gives segfault if all molecules are inactive (#249)
  • Additional speciation tests (#252)
  • Unittest for multipoledistribution analysis (#266)
  • Better performance (#214)
  • Warning for transrot move on the rigid molecule (#276)
  • Provide debug output to the user (#160)
  • Update auxiliary libraries and add C++17 requirement (#229)
  • Refactoring of Ewald summation policies and Energy class (#247)
  • Update manual for runtime steps (#275)

Checksums for tar.gz file

  • sha256: 14b5628a6a05857a809d9ef56b97d0c67db9923e26683a69e65384fa7eaaa07a
  • md5: 9e6d9440b1bde8a0b4e3cb66ac9077d1

- C++
Published by mlund about 6 years ago

faunus - Version 2.3.0

  • New features

    • all nonbonded interactions can be tabulated
    • custom molecule-molecule thresholds and satellite groups for cluster move (f976cddb753b7ee6e0ddec696e6760390eadaee1)
    • center of mass option in sliceddensity
    • periodic, hexagon prism container (#116)
    • isochoric moves for cylinder and hexagon
    • molecule selection for xtc trajectory output
    • added group/particle vector check to sanity analysis
    • cluster move analysis include size distribution (a2ee06fad1ae73e505ba07cd00476d37a9b66339)
    • added customexternal potential for arbitrary external potentials
    • GCMC works for molecular groups
    • shell progress bar shows total runtime (b222d68717d5952d61e2464f96d975f1377dbbad)
    • stockmayer example and anisotropic particles are operational (#135)
    • readthedocs documentation (#148)
    • controlled info and log support via the spdlog library (#164, #160)
    • Hertz pair potential (#119)
    • Electrostatics through the CoulombGalore library.
  • Internal changes and fixes

    • refactored pair potential self-energies (#138)
    • consistent control of mixing rules for LJ, WCA, hardsphere, Hertz, squarewell (#159)
    • fix for on-the-fly sasa calculation (#101)
    • Group::contains: optionally check also for inactive particles; unittests
    • fixed unit on Cv calculation in energy analysis
    • faster cluster move by skipping internal cluster energy
    • openmp optimizations
    • unknown atom given in custom LJ now force program abort
    • geometry refactoring
    • overall refactoring to reduce partial compile times
    • fixed stability of virtual volume move (#151)

- C++
Published by mlund over 6 years ago

faunus - Version 2.2.0

  • New features

    • molecular titration added to rcmc move (beta status)
    • custom pair potential for mathematical expressions
    • analysis: added nskip keyword for skipping initial frames
    • chargefluctuations analysis for tracking charge states
    • wildcard, * for selecting atoms and molecules (in moves, analysis etc.)
    • new examples/tests: stripes, phosphate, sodiumphosphate
    • The yason.py conversion script accepts jinja2 replacements and links for external files
    • atomprofile analysis can calc. charge density
    • moleculelist: new keepcharges flag when loading from PQR/AAM
    • allow for molecules w. zero mass
    • mass center cutoff can be set for individual molecule combinations
    • constrain energy for limiting the system using reaction coordinates
    • end-to-end distance reaction coordinate
  • Fixes and internal improvements:

    • relative drift produced NaN if initial energy == 0. While correct, we instead print absolute drift for this case.
    • documentation: fix broken PDF tables; updated install instructions to match conda-forge
    • fixed random position error for cylindrical geometry
    • stricter LennardJones/WCA input and checking
    • fix conformational swap move in non-cuboidal geometries (overlap check fix)
    • sanity check analysis w. more verbose output
    • catch too large molecules in pivot move and fixed a potential error when using pbc geometries
    • fix sign error on capacitance in multipole analysis
    • fix Average::stddev()
    • eliminated cppcheck warnings

- C++
Published by mlund over 7 years ago

faunus - Version 2.1.1

  • Fixes and internal improvements:
    • Where available, CMake dependency downloading changed from ExternalProject to FetchContent.
    • cluster works with inactive molecules (still not dynamically updated, though)
    • improved memory efficiency for FunctorPotential
    • developer travis/osx build: mpich back to openmpi 1.6 due to abort trap 6 error (compiler mismatch)
    • cmake build compatible with conda-forge (circle/ci, travis)
    • fix compiler warning on GCC7
    • MPI destruction / MPI_Finalize() order fix for more stable MPI runs

- C++
Published by mlund over 7 years ago

faunus - Version 2.1.0

SHA256=26c807341502d1ec5f933d72273d89927113fbb8d0366b4b9207552104d10329 (faunus-2.1.0.tar.gz)

  • New features

    • starting from this version, we aim to release using semantic versioning
    • tips are given in case of incorrect input. Disable from command line with --notips
    • added akesson mean field correction energy
    • added confid molecular reaction coordinate
    • added qrfile analysis and VMD script for visualising grand canonical ensembles
    • html manual install into share/faunus. Can be launched from shell with faunus-manual.
    • example/test for double-layer in slit geometry
    • example/test for weighted conformational swap moves
    • /usr/bin/env yason.py shebang added to example YAML files to automatically convert to JSON when executed. One can thus run simulations with ./minimal.yml | faunus
  • Fixes and internal changes:

    • compilation passes with -Wall -Wextra -pedantic-errors
    • updated to latest versions of pybind11; nlohmann/json; Eigen
    • fixed random position generation in slit geometry
    • fixed penalty function error when loading from state file
    • bugfix: penalty function broken reference to space particles / molecules
    • anaconda osx: openmpi -> mpich
    • solved travis build timeout issue
    • added Equidistance2DTable for random-access, constant complexity lookup tables
    • added Space::activeParticles() for range-based for loops

- C++
Published by mlund over 7 years ago

faunus - Version 2.0.4

  • overlap check with non-cuboidal simulation containers
  • individual energy terms are timed
  • moleculelist: FASTA sequence loader
  • pivot: optimised energy evaluation
  • bonded: optimisation of energy calculation
  • nonbonded: control of OpenMP behaviour
  • conda builds with OpenMP on Linux_x64 (not yet on osx)
  • added chargemove
  • added reactioncoordinate analysis
  • added sanity analysis
  • new reaction coordinates:
    • atom: charge
    • molecule: COM, number of atoms, net charge, dipole moment, angle, muangle
    • system: radius
  • polymers example/test
  • improved documentation
  • fix translational moves on sphere/disc/line (needed for Dynamic MC)
  • multiple minor fixes

- C++
Published by mlund over 7 years ago

faunus - Version 2.0.2

  • Cluster move: rewritten mass-center routine
  • Virtual volume move analysis: fix for numerical overflow error
  • Geometries selectable from input (cuboid, slit, sphere, cylinder)
  • Documentation update
  • py36 and py37 targets in Anaconda (OSX and Linux)
  • Multiple minor bugfixes

- C++
Published by mlund over 7 years ago

faunus - Version 2.0.1

- C++
Published by mlund over 7 years ago

faunus - Version 2.0-beta.3

Bugfixes, more robust input handling, additional examples.

- C++
Published by mlund over 7 years ago

faunus - Version 2.0-beta.2

  • many bugfixes
  • manual improvements
  • speciation examples

- C++
Published by mlund over 7 years ago

faunus - Version 2.0 Beta

Re-written version of Faunus, feature incomplete compared to earlier versions. Noticeable differences:

  • a single executable, faunus, for running most simulations and tests
  • much improved error handling
  • a manual! (pdf and online)
  • completely re-written internals

- C++
Published by mlund over 7 years ago

faunus - Version 1.0.2

Changes since last release:

  • chargefile keyword for molecules for overwriting atomic charges
  • PowerSASA energy term restored
  • Atomic translation now uses a unit sphere instead of a unit cube (important for dynamic MC)

- C++
Published by mlund over 8 years ago

faunus - Version 1.0.1

List of changes:

  • Capped or "death star" particles
  • Widom insertion for molecules
  • Multipole analysis, arbitrary multipoles
  • Energy matrix for storing old energies
  • Improvements to grand canonical salt
  • Akesson long range correction
  • Tabulated potentials
  • Updated documentation
  • 2D hypersphere example
  • Coulomb Galore pair potential
  • Error checks and improved warnings
  • Bug fixes

- C++
Published by mlund over 8 years ago

faunus - Version 1.0

First release! It's pretty stable, but by no means free from bugs and the interface is as usual pretty rough. Use this over the master branch until next release.

- C++
Published by mlund over 9 years ago