FAQ & Troubleshooting¶
Installation¶
- Modeller fails to import or run.
Modeller requires a license key. Register at https://salilab.org/modeller/ to obtain a free academic key, then set it as an environment variable:
export KEY_MODELLER="XXXX"
Ensure you installed Modeller from the
salilabconda channel (conda install -c salilab modeller). Theenvironment.ymlfile handles this automatically.- Multiwfn is not found.
Multiwfn must be installed separately. Download it from http://sobereva.com/multiwfn/ and ensure the executable is on your
PATH, or set themultiwfn_pathparameter in your config file:multiwfn_path: /path/to/Multiwfn
Multiwfn is only needed for the
qp analyzestage.
Protoss¶
- Protoss returns an error or times out.
Protoss is accessed via the ProteinsPlus web API and requires an internet connection. Common issues:
Rate limiting: The Protoss server may throttle users who submit too many requests in a short period. If you are processing a large batch, the server may reject some requests. QuantumPDB handles retries, but large batches may require running over multiple sessions.
File size: PDB files larger than 4 MB cannot be uploaded to Protoss.
Server downtime: The ProteinsPlus server may occasionally be unavailable. Check https://proteins.plus/ to verify the service is running.
- Protoss removes residues due to steric clashes.
This is expected behavior. Protoss identifies steric clashes in the structure, and QuantumPDB automatically feeds these back to Modeller for rebuilding. This loop repeats up to
max_clash_refinement_itertimes (default: 5). If clashes persist, check the structure for unusual conformations near the active site.
Cluster Extraction¶
- The cluster is too large for my QM calculation.
Set the
max_atom_countparameter to cap the cluster size:max_atom_count: 500
The most distant residues are pruned until the atom count is below the threshold. You can also reduce
number_of_spheresto limit the number of interaction layers.- Important residues are missing from the cluster.
Several options:
Increase
number_of_spheresto capture more of the environment.Increase
radius_of_first_spherebeyond the default 4.0 Å.Use
additional_ligandsto force specific residues into the cluster:additional_ligands: [AKG, SIN]
This accepts a list of three-letter residue codes. Residues matching these codes are included in the first sphere and protected from pruning.
- Multi-metallic centers are generating separate clusters instead of one.
Use merged center syntax in your CSV or increase
merge_distance_cutoff:# Automatic merging by distance center_residues: [FE2] merge_distance_cutoff: 4.0
Or specify explicitly in a CSV
centercolumn:FE2_A5001-FE2_A5002
See Input Formats for the full center syntax reference.
Job Submission¶
- Jobs are not being submitted.
Check that both flags are set:
create_jobs: true submit_jobs: true
The
submitcommand requires a CSV input file withoxidationandmultiplicitycolumns so that the electronic state can be set correctly.- Jobs are being resubmitted.
QuantumPDB creates a hidden
.submit_recordfile in each job directory after submission. If this file exists, the job is skipped. To resubmit a job, setdelete_queued: truein the analyze config to clear the records, then runqp submitagain.
General¶
- Can I use structures from MD simulations or generative models?
Yes. QuantumPDB works with any PDB-format file, including MD snapshots, cryo-EM structures, NMR ensembles, and generative model outputs. However, there is no trajectory parsing — you must provide a single PDB frame.
- Which QM code should I use?
TeraChem (GPU-accelerated) is the primary target and best tested. ORCA (CPU-based) is supported as an alternative. The
methodandbasisparameters follow TeraChem conventions by default.