Thank you very much. Your explanations helped a lot.
I had a close look at the source file and tried a run with a constraint file as you suggested. Namely using HG1 or HD1 as a general descriptor for all three protons of a methyl-group. This works indeed very well. So there is no need for any “#”.
For the record:
Degenerate protons are implemented in Rosetta using the AmbiguousNMRDistance constraint definition and the respective general identifier (e.g. HG1 for HG11; HG12; HG13) without any symbols or extra characters
Unfortunately, this brings me directly to a follow-up problem:
If I mix AtomPair and AmbiguousNMRDistance constraints I receive the following error which indicates that Rosetta might not be reading and therefore not using all constraints. (Occurs right at the beginning of abinitio “Stage 4”.)
core.io.constraints: read constraints section –NO_SECTION—
core.io.constraints: no section header [ xxx ] found, try reading line-based format… DON’T MIX
core.io.constraints: read constraints from ./constraints.fa_cst
core.io.constraints: ERROR: reading of AtomPair failed.
Sorting the restraints to have all AtomPair constraints and after that the AmbiguousNMRDistance constraints in the input file gives a similar error:
I understand that Rosetta usually looks for sections in the constraints input file. If I define all AtomPair constraints in a “[ atompairs ]” section Rosetta quits with a segmentation fault error message during reading of the constraints file (even if there are only AtomPair definitions present).
How should I combine AtomPair and AmbiguousNMRDistance constraints? Or how does a section end? According to the ConstraintIO.cc definition something like this seems not implemented; i.e. one section ends when another begins.
PS: Would it be hard to have a copy of AmbiguousNMRDistance constraints which inherits from AtomPairs and not from Ambiguous constraints (maybe called NMRDistance or something like that)? The idea behind would be to have degenerate hydrogens and full scoring for all constraints.