Max_Molecule_Size Error

Hello,
I want to get the score of around 600 docked files. If I input 15/20 files, the scoring gives successful output. However, when I input all the molecule in molecules=[" "] section, it gives following error:
2024-02-12 00:06:46,602 libutil ERROR] Too many molecules defined, max is {max_molecules_allowed}.
Traceback (most recent call last):
File “/opt/haddock3/src/haddock/libs/libutil.py”, line 310, in log_error_and_exit
yield
File “/opt/haddock3/src/haddock/clis/cli.py”, line 135, in main
params, other_params = setup_run(
File “/opt/haddock3/src/haddock/gear/prepare_run.py”, line 262, in setup_run
raise ConfigurationError(“Too many molecules defined, max is {max_molecules_allowed}.”) # noqa: E501
haddock.core.exceptions.ConfigurationError: Too many molecules defined, max is {max_molecules_allowed}.
[2024-02-12 00:06:46,603 libutil ERROR] Too many molecules defined, max is {max_molecules_allowed}.
[2024-02-12 00:06:46,603 libutil ERROR] An error has occurred, see log file. And contact the developers if needed.
[2024-02-12 00:06:46,603 libutil INFO] Finished at 12/02/2024 00:06:46. For any help contact us at Issues · haddocking/haddock3 · GitHub. Adéu-siau! Ciao! Au revoir!.

What should I do in this situation if I want to get the score from those 600 complexes.

Thank you!

I want to add that this is Haddock3, and I am running it in cluster.

Hi,

you should merge all the molecules together in an ensemble pdb file, as in haddock3/examples/scoring/capri-scoring-test.cfg at main · haddocking/haddock3 · GitHub . For that you can use the following command:

pdb_mkensemble model_1.pdb ... model_600.pdb | pdb_tidy > my_ensemble.pdb

This uses the pdbtools package that is part of the haddock3 python environment.

1 Like

What you can do is to create an ensemble PDB file with all your models.

This can be done for example with the pdb_mkensemble command from pdb-tools

You then only specify one input file in the scoring script

Are you using the emscoring.cfg example from the examples/scoring directory?

1 Like

Hi,
Thank you both. pdb_mkensemble is working.

And yes, I am following the emscoring.cfg example. However, I have a question. Should I also include md_scoring? The purpose is just to get the score of all complexes and get the best ones.

(script:
directory in which the scoring will be done
run_dir = “/work/…”

execution mode

ncores = 64
mode = “local”

ensemble to be scored

Directory containing the ClusPro folder

molecules=[“my_ensemble.pdb”]

====================================================================

Parameters for each stage are defined below

[topoaa]

[emscoring]
tolerance = 20

[caprieval]

emscoring should be fine (and much faster)

If you have more clashes though, you could consider mdscoring, but it will take more time as it performs a very short MD simulation in explicit water.

1 Like