Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

USER-CGDNA quasi-unique base pairing #1730

merged 9 commits into from Oct 25, 2019


Copy link

ohenrich commented Oct 17, 2019


The changes in this pull request comprise an enhancement in form of quasi-unique base pairing, minor restructuring in two source code files in preparation for the oxRNA force field and the removal of a minor discrepancy in an input parameter of the oxDNA and oxDNA2 stacking interaction.


Oliver Henrich, University of Strathclyde, Glasgow, UK


By submitting this pull request, I agree, that my contribution will be included in LAMMPS and redistributed under either the GNU General Public License version 2 (GPL v2) or the GNU Lesser General Public License version 2.1 (LGPL v2.1).

Backward Compatibility

All changes retain backward compatibility.

Implementation Notes

(1) Unique base pairing means that a nucleotide can only form a base pair with a specific complementary nucleotide, usually the original hybridisation partner in a duplex during initialisation. Quasi-unique base pairing means that hybridisation between non-original complementary bases is only prevented over a limited distance along the backbone. To realise this, the implementation draws on a larger number of atom types (e.g. 32 or 64 types) and uses a modulo %4 operation to determine whether two atom types are complementary.

(2) The prefactors for the sequence-specific stacking and hydrogen bonding strengths are now initialised in the constructor of each class. This is done to minimise code duplication in the emerging oxRNA force field.

(3) An input parameter in the oxDNA and oxDNA2 stacking interaction has been changed to 0.75 (the value in the oxDNA standalone code) from 0.6 (the value in Ouldridge's original code). The parameter controls where the Morse interaction transitions to a smoothing interaction in the radial modulation factor of the stacking interaction. This minor difference has virtually no effect on the numerical results, which is why it hasn't been picked up during the verification stage.

Post Submission Checklist

Please check the fields below as they are completed after the pull request has been submitted. Delete lines that don't apply

  • The feature has been verified to work with the CMake based build system
@akohlmey akohlmey self-assigned this Oct 17, 2019
@akohlmey akohlmey requested review from athomps, sjplimp and stanmoore1 Oct 17, 2019
@akohlmey akohlmey merged commit 33b1489 into lammps:master Oct 25, 2019
8 checks passed
8 checks passed
lammps/pull-requests/build-docs-pr head run ended
lammps/pull-requests/cmake/cmake-kokkos-cuda-pr head run ended
lammps/pull-requests/cmake/cmake-kokkos-omp-pr head run ended
lammps/pull-requests/cmake/cmake-serial-pr head run ended
lammps/pull-requests/kokkos-omp-pr head run ended
lammps/pull-requests/openmpi-pr head run ended
lammps/pull-requests/serial-pr head run ended
lammps/pull-requests/shlib-pr head run ended
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
3 participants
You can’t perform that action at this time.