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

Covalent bond has no effect on ligand prediction #69

Open
BJHardy opened this issue Nov 29, 2024 · 2 comments
Open

Covalent bond has no effect on ligand prediction #69

BJHardy opened this issue Nov 29, 2024 · 2 comments

Comments

@BJHardy
Copy link

BJHardy commented Nov 29, 2024

I am trying to predict the structure of a protein containing a flavin post-translational modification, where FMN is covalently bound to a threonine residue via its phosphate group.

I first tried including this as a modification on the threonine residue using CCD "FMN", however the linkage is incorrectly predicted:

Screenshot 2024-11-29 122025

I then tried predicting the FMN as a separate ligand and defining a covalent bond between the threonine oxygen and the FMN phosphate. However, the covalent bond seems to have had no effect on the prediction. As you can see here, it has just made an arbitrary bond.

Screenshot 2024-11-29 122311

How can I ensure that the covalent bond will affect the position of the ligand?

@gcorso
Copy link
Collaborator

gcorso commented Nov 30, 2024

Hi @BJHardy could you send us the configs/input files you used?

@almeida85
Copy link

Hello,
I have the same problem. Below are the config files I am using. First, I use a residue modification as:

sequences:
  - protein:
      id: A
      sequence: SMNLERLAENTGEFQEVVRAFYDTLDAARSSIRVVRVERVSHPLLQQQYELYRERLLQRCERRPVEQVLYHGTTAPAVPDICAHGFNRSFCGRNATVYGKGVYFARRASLSVQDRYSPPNADGHKAVFVARVLTGDYGQGRRGLRAPPLRGPGHVLLRYDSAVDCICQPSIFVIFHDTQALPTHLITCEHV
      modifications:
        - position: 66   # index of residue, starting from 1
          ccd: AR6       # CCD code of the modified residue

If I use it like this I get a similar output to the first picture of @BJHardy. I tried to add a constraint section as:

constraints:
  - bond:
      atom1: [A, 66, OE2]  # protein
      atom2: [B, 1, C1D]    # covalent ligand

but I get:

Traceback (most recent call last):
  File "/opt/anaconda3/bin/boltz", line 8, in <module>
    sys.exit(cli())
  File "/opt/anaconda3/lib/python3.9/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "/opt/anaconda3/lib/python3.9/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "/opt/anaconda3/lib/python3.9/site-packages/click/core.py", line 1688, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/opt/anaconda3/lib/python3.9/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/opt/anaconda3/lib/python3.9/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "/opt/anaconda3/lib/python3.9/site-packages/boltz/main.py", line 566, in predict
    process_inputs(
  File "/opt/anaconda3/lib/python3.9/site-packages/lightning_utilities/core/rank_zero.py", line 42, in wrapped_fn
    return fn(*args, **kwargs)
  File "/opt/anaconda3/lib/python3.9/site-packages/boltz/main.py", line 293, in process_inputs
    target = parse_yaml(path, ccd)
  File "/opt/anaconda3/lib/python3.9/site-packages/boltz/data/parse/yaml.py", line 57, in parse_yaml
    return parse_boltz_schema(name, data, ccd)
  File "/opt/anaconda3/lib/python3.9/site-packages/boltz/data/parse/schema.py", line 788, in parse_boltz_schema
    c1, r1, a1 = atom_idx_map[(c1, r1 - 1, a1)]  # 1-indexed
KeyError: ('A', 65, 'OE2')

Then I tried to define the ligand separately and put a constraint for the covalent bond as:

sequences:
  - protein:
      id: A
      sequence: SMNLERLAENTGEFQEVVRAFYDTLDAARSSIRVVRVERVSHPLLQQQYELYRERLLQRCERRPVEQVLYHGTTAPAVPDICAHGFNRSFCGRNATVYGKGVYFARRASLSVQDRYSPPNADGHKAVFVARVLTGDYGQGRRGLRAPPLRGPGHVLLRYDSAVDCICQPSIFVIFHDTQALPTHLITCEHV
  - ligand:
      id: B
      ccd: AR6
constraints:
  - bond:
      atom1: [A, 66, OE2]  # protein
      atom2: [B, 1, C1D]   # covalent ligand

... and the result is similar to the second picture of @BJHardy.

Any help will be appreciated.

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

No branches or pull requests

3 participants