keitaroyam / servalcat

Structure refinement and validation for crystallography and single particle analysis
Mozilla Public License 2.0
24 stars 3 forks source link

Problem reading dictionary for TYR from CCP4-ML #14

Closed rob-nicholls closed 7 months ago

rob-nicholls commented 7 months ago

Refmacat produces an error when attempting to refine the attached model. It complains about not having a dictionary for TYR, yet it is in the CCP4-ML.

tyr_issue.tar.gz

keitaroyam commented 7 months ago

I think you meant PYR, not TYR? This is what I got from refmacat in CCP4 8.0.018 (servalcat 0.4.32):

Creating restraints..
 Warning: definition not found for A/PYR 68/C2
 Warning: definition not found for A/PYR 68/C3
 Warning: definition not found for A/PYR 68/C1
 Warning: definition not found for A/PYR 68/O1

Chain info:
 chain B
  PeptideL: 4..67 (61 residues)
  ligands: PUT HOH (55 residues)
 chain A
  PeptideL: 68..327 (247 residues)
  ligands: HOH (168 residues)

Error: Provide restraint cif file(s) for PYR

while the latest servalcat (0.4.64) had no issue, just with a message

Updating atom names in PYR: C1->C O1->O O2->OXT C2->CA C3->CB H31->HB1 H32->HB2 H33->HB3

The atom names of PYR were changed due to the peptide backbone remediation by PDB https://github.com/MonomerLibrary/monomers/pull/40, and PYR.cif keeps the old names in _chem_comp_atom.alt_atom_id. Gemmi 0.6.4 or newer can read this information, so the newer servalcat worked with this pdb file.

So could you please try newer, preferably the latest versions? CCP4 9 should also work, I think.

rob-nicholls commented 7 months ago

Sorry yes I did mean PYR. Ok thanks for clarifying that it is in hand and works with the latest servalcat. I guess this means that the versions of servalcat and the monomer library are distributed as part of the current CCP4 distribution are incompatible? I don't know how long it will be until CCP4 9, so I wonder what the best solution is until then?

keitaroyam commented 7 months ago

Well this atom name updating does not always work, since some alt_atom_id are not right. The only solution in general is to use the new atom names. The remediation happened in the PDB, so it will just work if users re-download the coordinates from PDB. If we use the old monomer library, it also causes a trouble to users having new coordinates. Remediations are painful..

rob-nicholls commented 7 months ago

Yes, I can see that the new version of the ML will be appropriate for users who download coordinates from the PDB. But it means that anyone working on CCP4 projects prior to the latest CCP4 update (on 30th March) will suddenly have any new refinement jobs failing if they have any of the affected residues. And I suspect this will cause confusion for many.

keitaroyam commented 7 months ago

Yes it would happen - although I believe these remediated entries are relatively rare. Probably at least we should announce this (on ccp4bb?) It's a shame the new gemmi couldn't be included.. (yes I know the reason)

wojdyr commented 7 months ago

We went the extra mile to make this particular CCD remediation smoother: old atom names were added to ML, auto-detection of old atom names was added to gemmi and servalcat. I think that's all we can do. We don't directly update versions of gemmi and servalcat in CCP4 – that's up to the CCP4 core team.

rob-nicholls commented 7 months ago

I agree this is not a Servalcat/Gemmi issue, so this issue can be closed now. But it is an issue for CCP4 - I suggest further discussion with CCP4 core about how to strategise for the rest of CCP4 8, before the new Gemmi can be included in CCP4 9. Eugene is informed - I am currently with him in the Dubrovnik workshop and will figure out how to deal with this issue for the workshop, and thinking about the next CCP4 8 update will be the next step.