1. 11 Dec, 2025 1 commit
    • Evan Pretti's avatar
      Add LCPO method (#5130) · adfd84c2
      Evan Pretti authored
      * Basic LCPO support
      
      * Add basic test for LCPO from a prmtop file
      
      * API for LCPOForce
      
      * Started LCPO reference implementation
      
      * Finished reference forces & test cases
      
      * Use other test for finite difference since grid might have discontinuous forces
      
      * Reference platform formatting
      
      * Initial implementation of CPU platform
      
      * Bugfixes
      
      * More vectorization and improve neighbor list query speed
      
      * Parallelize part of neighbor search
      
      * Check box size for LCPO with periodic boundary conditions
      
      * Fixes for updating parameters in context
      
      * GBSAOBCForce doesn't use first & last indices for updates, so no need for this optimization here
      
      * Changes to neighbor checking and optimization
      
      * Fixes and minor changes
      
      * Add global surface tension parameter
      
      * Only process half of the pairs in the neighbor list
      
      * Remove unnecessary checks
      
      * Initial version of common platform implementation
      
      * Asynchronously download neighbor list size
      
      * Debugging
      
      * Do pair precomputation in copyPairsToNeighborList
      
      * Recompute interactions instead of scanning neighbor list in inner loop
      
      * Condense position array before computations
      
      * Also make neighbor count download asynchronous on device
      
      * Fixes for kernel launching
      
      * Topology-based LCPO parameter assignment
      
      * Fixes, and use test system for LCPO with nucleic acids
      
      * Always raise instead of warn when LCPO parameters can't be assigned
      
      * Use Amber convention for phosphates
      adfd84c2
  2. 18 Nov, 2025 1 commit
  3. 14 Oct, 2025 1 commit
  4. 19 Sep, 2025 1 commit
    • João Morado's avatar
      Reader of Tinker files (#4769) · 939e0af5
      João Morado authored
      
      
      * Add basic version of TinkerFiles
      
      * Refactor TinkerFiles
      
      * Update docstring, type hints, and fix bug when setting box vectors
      
      * Small fixes
      
      * Add unit tests for the TinkerFiles class
      
      * Fixes and updates to TinkerFiles
      
      * Add simuteTinker example
      
      * Update Modeller to work with AMOEBA force fields
      
      * Small fixes
      
      * Relax type hinting
      
      * Fix indices in modeller
      
      * Fix modeller indices
      
      * Fix type hints and usage of Quantity
      
      * Remove numpy protector
      
      * Add reader of .seq files
      
      * Add topology parsing of some protein residues, waters, ions, and generic molecules.
      
      * Miscellaneous improvements
      
      * Update amino acids and nucleotides list
      
      * Various fixes to XML writing, and separate XML writing into a new class
      
      * Comments/warnings
      
      * Add nucleic topological definitions
      
      * Improved handling of peptide residues
      
      * Fix for CYX (disulfide bonds)
      
      * Refactor the topology creation methods
      
      * General improvements, and add support for nucleic-like residues
      
      * No need to handle MP, DP, TP
      
      * Minor improvements
      
      * General refactoring, add automatic determination of topology
      
      * Add TinkerAtomType dataclass, and remove references to biotypes as they are not needed
      
      * Re-add missing parsing of forces and scalars
      
      * Updates to createSystem()
      
      * Add AMOEBA forces
      
      * Add angle-related forces to createSystem
      
      * Add placeholders for missing forces
      
      * Beginning of support for AmoebaMultipoleForce
      
      * Finished support for AmoebaMultipoleForce
      
      * Support for AmoebaVdwForce
      
      * TinkerFiles supports vdw
      
      * Misc updates, and add AmoebaTorsionTorsion, AmoebaWcaDispersion, and AmoebaGeneralizedKirkwood
      
      * Remove XML writer
      
      * Fixes
      
      * Fix wrong indentation in _findBitorsions
      
      * Remove pdb debugging
      
      * Documentation and fixes
      
      * Remove files
      
      * Revert checks in AmoebaVdwForceBuilder and ## @private  markers
      
      * Remove duplicated static methods _getChiralAtomIndex
      
      * Fix GK force
      
      * Fix WcaDispersion force
      
      * Fix WcaDisp
      
      * Fixes and updates
      
      * Cleanup and removing duplicated code
      
      * Bug fixes
      
      * A few more unit conversions
      
      * Minor cleanup
      
      * Misc fixes and updates
      
      * Fix Add AmoebaStretchBendForce
      
      * Simplify force builders
      
      * Update ForceField
      
      * Fix AmoebaPiTorsionForce
      
      * Only add AmoebaWcaDispersionForce if using implicitSolvent
      
      * Simplify amoebaforces
      
      * Stretch torsion and angle torsion
      
      * Misc. fixes
      
      * Improve tests
      
      * Fix cap group identification
      
      * Add/improve tests
      
      * Remove whitespaces from residue names
      
      * Improve tests
      
      * Consistent use of atomClasses list
      
      * Fix match condition in AmoebaOutOfPlaneBendForceBuilder
      
      * Fix AmoebaStretchBendForce
      
      * Final fix for AmoebaStretchBendForce
      
      * Fix AmoebaAngleForce
      
      * Small fixes and improvements
      
      * Update assertion tolerances
      
      * Simplify torsion-torsion force creation
      
      * Small fixes in the tests
      
      * Review comments, type hints, docs for tinkerfiles.py
      
      * Only use standard PDB for AA
      
      * Type hint and docs for amoebaforces
      
      * Reduce tolerances for failing tests
      
      * Fixed error with ZOnly axis type when x particle is not specified
      
      ---------
      Co-authored-by: default avatarpeastman <peastman@stanford.edu>
      939e0af5
  5. 16 Sep, 2025 1 commit
  6. 02 Jul, 2025 1 commit
  7. 05 May, 2025 1 commit
  8. 02 May, 2025 1 commit
  9. 01 May, 2025 1 commit
  10. 10 Mar, 2025 1 commit
  11. 04 Oct, 2024 1 commit
  12. 27 Sep, 2024 1 commit
  13. 17 Jul, 2024 1 commit
    • Peter Eastman's avatar
      Debug CI failures (#4588) · e30e5b69
      Peter Eastman authored
      * Debug CI failures
      
      * Debugging
      
      * Debugging
      
      * Debugging
      
      * Debugging
      
      * Debugging
      
      * Debugging
      
      * Debugging
      
      * Debugging
      
      * Removed build that was failing
      
      * Fixed URL that had changed
      e30e5b69
  14. 18 Mar, 2024 1 commit
  15. 13 Feb, 2024 1 commit
  16. 10 Oct, 2023 1 commit
  17. 05 Jun, 2023 1 commit
  18. 22 Apr, 2023 1 commit
    • Raul's avatar
      Adding an XTC reporter (#4001) · eda091f2
      Raul authored
      * Preliminary work on XTC reporter
      1. Move and adapt xtc writer/reader from moleculekit (explicit permission
      granted by the authors to do so)
      2. Create XTCTrajectoryFile
      3. Create XTCReporter
      
      * Add licence and attribution to c++ xtc library
      Apply clang-format to it
      Remove some unused functions and document the rest
      
      * Add attribution and licence to cython wrappers for the xtc library
      Remove some unused functions
      
      * Change XTCTrajectoryFile to XTCFile
      Simplify the interface and document the class
      
      * Add test for the xtc file parser
      
      * Update XTC reporter with new parser name
      
      * Fix incorrect function name in XTCReporter
      
      * XTCFile:
      	* Add function to get number of frames
      	* Add function to read a group of frames from a file
      	* Add tests for the above
      
      * Ensure data is passed as float32 in XTC file
      
      * Add XTCReporter and tests
      
      * Add more tests to XTCReporter
      
      * Remove unnecessary pdb reporter in XTC tests
      
      * Copy test xtc file in python/tests/systems to build directory for testing
      
      * Remove XTC file reading from the interface
      Make XTCFile mimic DCDFile more closely
      
      * Use xtc_read to test the correctness of the XTC reporter
      
      * Add a test for reporting triclinic boxes
      
      * Make XTC library compatible with triclinic boxes.
      Adapt XTCFile to triclinic boxes
      
      * Change XTCFile to take a file as argument instead of a filename
      
      * Match DCDFile handling of the box
      
      * Fix comment
      
      * Revert "Change XTCFile to take a file as argument instead of a filename"
      
      This reverts commit 9815d4790b3886cc8a741586792268e80a227ba0.
      
      * Fix dangling file name issue
      
      * Remove index file functionality from XTC parser.
      Remove unused define switch PLATFORM_Linux
      
      * Fix formatting
      
      * Remove inconsistent variable naming in xtcfile.py
      
      * Change file argument name to match other reporters
      
      * Do not turn off error checking in cython wrappers
      
      * Fix leftover fileName in reporter
      
      * Rewrite wrapper to xtclib in C++
      
      * Small changes to wrapper code
      
      * Small changes to wrapper code
      
      * Small changes to wrapper code
      
      * XTCFile: Get number of atoms directly from topology
      
      * DCDFile: Get number of atoms directly from topology
      
      * Change constexpr to const
      
      * Check precision in XTC file matches the written one
      
      * Add a write function to XTCFrame.
      Make write check for errors C++ side.
      
      * Rewrite large trajectory files without loading the whole file to memory
      
      * Remove unused code in XTC test
      
      * Avoid spurious copy of the positions array when calling xtc_write_frame
      
      * Pass box as reference
      
      * Remove unnecessary imports and definitions
      
      * Fix formatting
      
      * Use std::string instead of char*
      
      * Use .c_str()  instead of .data()
      
      * Fix crash in Mac by correctly checking precision
      
      * Use TemporaryDirectory for tests instead of NamedTemporaryFile (Fixes windows ci)
      
      * Remove unnecessary file creation
      
      * Propagate exceptions via cython
      
      * Switch to TemporaryDirectory in xtcfile.py
      
      * Remove unnecessary include
      
      * Update some comments and document functions
      
      * Add XTC reporter to the docs
      eda091f2
  19. 27 Feb, 2023 1 commit
  20. 09 Jan, 2023 1 commit
  21. 29 Nov, 2022 1 commit
  22. 28 Jun, 2022 1 commit
    • Alex Izvorski's avatar
      OPC and OPC3 water (#3654) · 583471a6
      Alex Izvorski authored
      * Add benchmarks from Amber20 benchmark suite to standard benchmark script
      
      * Add ensemble option; don't change hydrogen mass in amber input files
      
      * Download and extract .tar.gz using pure python code, no wget/tar dependencies
      
      * Rename amber tests
      
      * add opc and opc3 models
      
      * update to match https://bioinformatics.cs.vt.edu/~izadi/OPC_Gromacs/opc.top
      
      
      
      * opc box, converted from ambertools-22.0-py38h6177452_1/dat/leap/lib/opcbox.off
      
      * change values to make serialized system match one created from prmtop as close as possible
      
      * unit test for opc water
      
      * opc - final values, match frcmod.opc; derivation in comments
      
      * opc3 water - final values, shows derivation
      
      * opc3box made from ambertools 22 dat/leap/lib/opc3box.off
      
      * add opc3 water test
      
      * add opc and opc3 to docs
      
      * move tests to TestForceField.py
      
      * move opc tests out of amoeba tests, oops
      
      * move opcbox and opc3box pdb files
      Co-authored-by: default avatarAlex Izvorski <alex@genesistherapeutics.ai>
      583471a6
  23. 29 Oct, 2021 1 commit
  24. 26 Oct, 2021 1 commit
    • Peter Eastman's avatar
      Added AMOEBA 2018 force field (#3299) · 06767dde
      Peter Eastman authored
      * Adding support for new AMOEBA features
      
      * Support modern method of specifying in-plane angles
      
      * Implemented stretch-torsions
      
      * Implemented angle-torsions
      
      * More AMOEBA fixes
      
      * Bug fix
      
      * Converted AMOEBA 2018 force field
      
      * Added documentation for AMOEBA 2018
      
      * Added a missing file for tests
      06767dde
  25. 08 Sep, 2021 1 commit
    • Peter Eastman's avatar
      Implicit solvent for modern force fields (#3214) · 654c6c9c
      Peter Eastman authored
      * Created OBC2 that works with current force fields
      
      * Created HCT, OBC1, GBn, and GBn2 that works with current force fields
      
      * Added documentation for GB models
      
      * Updates to documentation and tests based on comments
      
      * Added formula for screening parameter
      654c6c9c
  26. 16 Jul, 2021 1 commit
    • Josh A. Mitchell's avatar
      Reorganise documentation (#3165) · f5166695
      Josh A. Mitchell authored
      * Break user guide into parts
      
      * Break up file I missed
      
      * Add basic .gitignore to suit out-of-tree builds in build, build1, build2 ... build9
      
      * Small changes to autonumber.py for doc compilation
      
      This is a small change designed not to fix the incorrect logic of
      autonumber.py, but just to get the docs compiling. While assigning
      numbers, the code now just ignores the autonumber_by_chapter
      setting for a particular object if it can't find the appropriate
      section in section_numbers. This is a temporary fix!
      
      * Include part and chapter in autonumbered objects
      
      * Fix autonumber.py to correctly reference autonumber roles in file-level sections
      
      * Unify and simplify styling across documentation
      
      * Break dev docs down into individual chapter-files
      
      * Correct absolute links to relative
      
      * Disable browser suggestions for lunrsearch box in API docs
      
      * Remove part name from chapter 2.1
      
      * Rename ambiguous 'Home' link to OpenMM.org
      
      * Typo
      
      * Minor fixes and reversions
      
      Reverts some changes I had made and later thought better of,
      and fixes some recurring typos across the documentation.
      
      * Number developers guide chapters
      
      * Fix responsiveness
      
      * Remove header.rst and center captions
      
      * Add a level of depth to main TOC and styling to accomodate
      
      * Add third level to Part-level TOCs
      
      * Use :numref: instead of :ref: to number links to sections
      
      * Continuously number chapters in user guide
      
      * navbar links to other docs relative, not absolute
      
      * Improve navbar spacing with new template
      
      * Fix sidebar while allowing it to scroll
      
      * Hard -> Soft links for navigation.html template
      
      * Add navigation.html template to cmakelists
      
      * Add another level of .. to relative links
      
      * Fix flex on C++ and remove layer of ..
      f5166695