Skip to content

v0.6.0

Choose a tag to compare

@YoshitakaMo YoshitakaMo released this 23 Oct 14:56
· 3 commits to main since this release

Highlights

Template search without local databases (msatojson / modjson)

--pdb_database_path and --seqres_database_path are now optional with --include_templates. When they are omitted, only the files that are needed are downloaded from the wwPDB:

  • pdb_seqres.txt is downloaded into $XDG_CACHE_HOME/alphafold3tools/ (~/.cache/alphafold3tools/ by default) and reused by later runs. It is refreshed when the cached copy is older than 7 days.
  • The mmCIF files of the template candidates are downloaded on demand, in hmmsearch hit order, until four templates pass the filters. They are saved in templates/<input name>/ next to the output JSON. Unused downloads are removed.
  • Network failures stop with an error instead of silently producing a JSON file without templates.
af3tools msatojson -i foo.a3m -o out/foo.json --include_templates

Use your own structures as templates (--custom_template)

msatojson and modjson gain --custom_template DIR, which uses only the PDB/mmCIF files in DIR (also *.pdb.gz / *.cif.gz) as templates. This lets you use unpublished structures or predicted models (e.g. AlphaFold models) as templates.

  • PDB files are converted to mmCIF automatically. Missing fields such as the release date and the canonical sequence are filled in.
  • Implies --include_templates. Cannot be combined with --pdb_database_path / --seqres_database_path.
  • --max_subsequence_ratio defaults to 1.0 in this mode, so templates identical to the query are kept.
af3tools msatojson -i foo.a3m -o out/foo.json --custom_template my_templates/

mol2 input for sdftoccd

  • sdftoccd now reads mol2 files (SYBYL and GAFF atom types), selected by the .mol2 extension. Atom names, coordinates, atom order and bond orders are kept in the CCD output.
  • Chemically invalid bond orders are re-assigned from the connectivity. Examples: carboxylates written as C(=O)=O or non-ring aromatic bonds in GaussView SDF files, and carboxylates written with two single bonds in mol2 files.
af3tools sdftoccd -i input.mol2 -o userccd.cif -n STR

Model names in superpose_ciffiles

Models in *_superposed.cif are now named <objectname>_seed-*_sample-* (e.g. data_OPCL1_seed-1_sample-0) instead of seed-*_sample-*. <objectname> defaults to the input directory name and can be set with the new -t/--objectname option. This makes models from different runs distinguishable when they are loaded together, e.g. in PyMOL.

af3tools superpose_ciffiles -i /path/to/OPCL1 -t objectname

Other improvements

  • msatojson directory mode logs [done/total] progress after each file and reports worker failures at ERROR level.
  • pdbtocif reads gzip-compressed input.

Bug fixes

  • pdbtocif: PDB files without SEQRES records (e.g. predicted models) now get their entity sequence from the ATOM records. Before, such files produced empty sequences and were silently rejected as templates.
  • sdftoccd: fixed an undefined variable when compname is given.
  • superpose_ciffiles: the output file is now written even when there is only one model.

Behavior changes

  • The model (data block) names in superpose_ciffiles output have changed as described above. Scripts that rely on the old seed-*_sample-* names need to be updated.

Full Changelog: v0.5.5...v0.6.0