Skip to content

Releases: forlilab/Ringtail

v2.0.0

04 Sep 22:32
Compare
Choose a tag to compare

Changes in 2.0.0: fully developed API


Changes in keywords used for the command line tool

  • --mode is now --docking_mode
  • --summary is now --print_summary
  • --pattern is now --file_pattern
  • --name is now --ligand_name
  • --max_nr_atoms is now --ligand_max_atoms
  • --smarts is now --ligand_substruct
  • --smarts_idxyz is now --ligand_substruct_pos
  • --smarts_join is now --ligand_operator
  • --van_der_waals is now --vdw_interactions
  • --hydrogen_bond is now --hb_interactions
  • --reactive_res is now --reactive_interactions

Enhancements to the codebase

  • Fully developed API can use python for scripting exclusively
  • Can add docking results directly without using file system (for vina only as output comes as a string).
  • The Ringtail log is now written to a logging file in addition to STDOUT

Changes to code behavior

  • Interaction tables: one new table has been added (Interactions) which references the interaction id from Interaction_indices, while the table Interaction_bitvectors has been discontinued.
  • A new method to update an existing database 1.1.0 (or 1.0.0) to 2.0.0 is included. However, if the existing database was created with the duplicate handling option, there is a chance of inconsistent behavior of anything involving interactions as the Pose_ID was not used as an explicit foreign key in db v1.0.0 and v1.1.0 (see Bug fixes below).

Bug fixes

  • The option duplicate_handling could previously only be applied during database creation and produced inconsistent table behavior. Option can now be applied at any time results are added to a database, and will create internally consistent tables. Please note: if you have created tables in the past and invoking the keyword duplicate_handling you may have errors in the "Interaction_bitvectors" table (<2.0.0). These errors cannot be recovered, and we recommend you re-make the database with Ringtail 2.0.0.
  • Writing SDFs from filtering bookmarks: will check that bookmark exists and has data before writing, and will now produce SDFs for any bookmarks existing bookmarks. If the bookmark results from a filtering where max_miss < 0 it will note if the non-union bookmark is used, and if the base name for such bookmarks is provided it will default to the basename_union bookmark for writing the SDFs.
  • Output from filtering using max_miss and output_all_poses=False(default) now producing expected behavior of outputting only one pose per ligand. Filtering for interactions max_miss allows any given pose for a ligand to miss max_miss interactions and still be considered to pass the filter. Previously, in the resulting union bookmark and output_log text file some ligands would present with more than one pose, although the option to output_all_poses was False (and thus the expectation would be one pose outputted per ligand). This would give the wrong count for how many ligands passed a filter, as some were counted more than once.

v1.1.0: Greatly improved filtering speed and additional filtering options

01 Nov 18:05
Compare
Choose a tag to compare

What's Changed

  • Optimized SQLite queries for significantly improved filtering speed (see comparison below)
  • --summary option to give overview of results contained in database
  • Ligand clustering by Morgan Fingerprint chemical similarity (--mfpt_cluster)
  • Ligand clustering by receptor interaction fingerprint similarity (--interaction_cluster)
  • Enabled export of stored PDBQT from database
  • Minor bug fixes

Example Filtering Timings (M1Pro MacBook, ~2 million ligands)

rt_v11_timings

v1.0.0: Initial Public Release

15 Nov 00:34
ba24f80
Compare
Choose a tag to compare

Initial public release for Ringtail

  • Provided storage and analysis of virtual screenings run with AutoDock-GPU and AutoDock Vina
  • Stores, filters, and exports results with SQLite