Skip to content

Refactor protein-DNA forces into independent modules#28

Open
cabb99 wants to merge 53 commits into
masterfrom
force_bias
Open

Refactor protein-DNA forces into independent modules#28
cabb99 wants to merge 53 commits into
masterfrom
force_bias

Conversation

@cabb99

@cabb99 cabb99 commented Jun 4, 2026

Copy link
Copy Markdown
Owner

No description provided.

stevenluo22 and others added 30 commits April 22, 2024 23:00
…dds log of forces_setup.py into output sub-directory; fixes energy output log to output subdirectory; updates default steps to 1e7
Add new line to output after Caution message.
ftclark3 and others added 22 commits May 27, 2026 17:04
… this maintains backward compatibility while allowing for future modification
…osition of the protein along the helical axis
Brings in Steven Luo's production-run and analysis scripts. The overlapping
force-code changes are taken from PR #27 (the consolidated rework of the same
work); PR #26's multi-chain string classes are superseded there and will be
folded into a single generalized class during the follow-up refactor.
Move the bias and collective-variable classes from dna.py, protein_dna.py to force/bias.py and force/collective_variables.py
Only the core force-field terms exported by default.

  group_constraint_by_position      -> bias.PositionRestraint
  measure_from_position             -> collective_variables.DistanceFromPoint
  BiasElectrostaticsProteinDNA      -> bias.ElectrostaticBias
  proteinBasePairGroupsHarmonicBias -> bias.BasePairProteinHarmonicBias
  proteinBasePairGroupsPosition     -> collective_variables.BasePairProteinPosition
  StringProteinDNA (protein_dna)    -> bias.StringProteinDNA

Other changes:
- PositionRestraint uses the geometric centroid (not the raw coordinate sum), k_new = k_old * mass
- DistanceFromPoint reports the true centroid distance (not the squared deviation of a raw sum)
- StringProteinDNA accepts one or many chains; its distance-only mode is now collective_variables.StringLength.
- Bias/CV force-group defaults come from force_groups; readouts use MEASUREMENT.

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @cabb99, your pull request is larger than the review limit of 150000 diff characters

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants