Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
USER-CGDNA quasi-unique base pairing #1730
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).
All changes retain backward compatibility.
(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