Merged
Conversation
added 19 commits
March 12, 2026 08:08
…e sequence function
…e loaded with default bond REQ parameters
… set for mol2 files write out modxna metadata instead
… the old sequence mode
…tain backwards compatbility with modXNA
…t (and backwards compatible) output for ModXNA with 7.1.0 compared to 7.00.0.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Version 7.1.0.
The old
sequencecommand functionality and some new features have been added to ensure backwards compatibility with ModXNA (V1.9.2 as of right now).The changes to the
sequencecommand in CPPTRAJ V7 ended up breaking compatibility with ModXNA. Thesequencecommand in version 6 of CPPTRAJ didn't have the “right” code for generating coordinates around linkages (which is why we sometimes ended up with weird ModXNA geometries that needed to be minimized out). The newsequencecommand generates better coordinates around links, but the problem is that the way we strip the sugar (removing C1/C6 from C1’) leaves it without a defined chirality, and the default one (from LEaP’s routines) isn't always the one you need. One potential future workaround will be to use thegraftcommand with internal coordinates since that preserves the chirality around atoms that have had bonds removed.I have added a test to try to make sure compatibility doesn't become broken in the future.
The following files/classes/functions have been retained from CPPTRAJ V6.31.0 with very few changes:
Structure/BuildAtom.h,Structure/Model.h,Structure/Model.cppThe
OldBuilderclass inStructure/OldBuilder.cppandStructure/OldBuilder.his theBuilderclass from CPPTRAJ V6.31.0.The
Zmatrix::SetupICsAroundBond()function has been retained from CPPTRAJ V6.31.0Zmatrixclass so thatsequencecan be made to work the way it used to.Default bond Req parameters are set when reading in mol2 files. This is needed so that the RK/REQ columns are printed for the
bondscommand, which is expected/needed for modxna.sh to determine the name of the H atom bonded to O3' (--3capflag).ModXNA metadata (head/tail/anchor atom information) will be read from the title of Mol2 files if present and retained in the Topology. This metadata will be written back out to Mol2 files if another title has not been specified. This allows the
sequencecommand to automatically recognized when units have ModXNA information and switch back to the oldsequencemode automatically.