Skip to content

Latest commit

 

History

History
163 lines (123 loc) · 8.41 KB

readme.md

File metadata and controls

163 lines (123 loc) · 8.41 KB

InVADo: Interactive Visual Analysis of Molecular Docking Data

paper doi: 10.1109/TVCG.2023.3337642

video doi: 10.1109/TVCG.2023.3337642/mm1

Replicability Stamp form the Graphics Replicability Stamp Initiative :
http://www.replicabilitystamp.org#https-github-com-marcoschaefert-invado-setup

InVADo_setup - Repository

contains the installation instructions and additional data to complement the main InVADo repository

  • InVADo is available under the repository link above
  • download the repo and run CMake to prepare InVADo for building
    (see Requirements Building InVADo and Building InVADo)
  • running CMake will download the additional content of this repository
  • additional content is automatically saved to: InVADo_MAIN_REPO\plugins\prolint\InVADo_setup

additional data includes:

  • figures of functional groups (needed for web dashboard)
  • small precalculated data set (for web part development or when running the web dashboard without InVADo desktop)
  • small molecular docking pipeline
  • InVADo config file
  • graphics settings file

Requirements Building InVADo:

Building InVADo:

  • run CMake for MegaMol/InVADo (configure)

    • set visual studio 2022
    • set x64
  • ignore warnings during the 'configure' process

  • check/do the following boxes/steps:

    • ENABLE_MPI
    • set 'MPI_GUESS_LIBRARY_NAME' to 'MSMPI'
    • ENABLE_CUDA
    • BUILD_PROLINT_PLUGIN
    • BUILD_PROTEIN_CUDA_PLUGIN
    • configure again
    • generate
    • open project
    • (may need to install .NET Framework 4.8.1 SDK)
  • set the 'INSTALL' target of 'CMakePredefinedTargets' as the start project

  • build and install it as "RELEASE" not "DEBUG"

  • "DEBUG" is possible as well, but if the docking data set is not already preprocessed by InVADo as a RELEASE version it will fail to start as a DEBUG version

  • the docking data set will be preprocessed one time with the first start of InVADo as RELEASE version

InVADo Configuration

PATH = _InVADo_MAIN_REPO\plugins\prolint\InVADo_setup\

  • the InVADo config file InVADoConfig.mmprj is located in the folder 'PATH/InVADo_config'

  • in the InVADo config file, the path for the ligand list and the target protein file needs to be updated

  • this can be done manually in the XML-based file or graphically as follows:

  • manually:

    • open InVADoConfig.mmprj with a text editor and change the path stored in 'value' to e.g.:
    • <param name='pdbqtListFilename' value='C:\PATH\prepare_docking_data_scripts\results\results_list.txt' />
    • <param name="pdbFilename" value="C:\PATH\prepare_docking_data_scripts\7nn9_autoDockTools.pdbqt" />
  • graphically:

  • the InVADo config can be adjusted with the configurator PATH/InVADo_config/MegaMolConf.exe

  • drag InVADoConfig.mmprj and drop it onto MegaMolConf.exe

  • an error message will appear -> click ok -> then the following window will be shown:

  • click on the first fix button and navigate to _InVADo_MAIN_REPO/build/install/bin/ and select 'mmconsole.exe'

  • then click on the fix button of 'Core and Plugin State'

  • a new window appears -> there click the button 'Execute'

  • after the plugin scan is finished click on 'Use this State file'

  • a window appears where a path for saving the state file is already suggested -> use this suggested path and click 'Save'

  • close the configurator

  • again drag InVADoConfig.mmprj and drop it onto MegaMolConf.exe -> the following view will appear:

  • update the paths for the ligand list and the target protein as follows:

    • Module MultiPDBQTLoader1 Parameter: pdbqtListFilename: must be set to your path of a ligand PDBQT file list (*.txt)

      [e.g.:PATH\prepare_docking_data_scripts\results\results_list.txt*]

      ==> please note: 'results' is created after the test docking (see Create a New Data Set)

    • Module PDBLoader1: Parameter: pdbFilename: must be set to your path of a protein file (*.pdb)

      [e.g.: PATH\prepare_docking_data_scripts/7nn9_autoDockTools.pdbqt]

  • for easier development set 'INSTALL' target settings of the Visual Studio project as follows:

Create a New Data Set

PATH = _InVADo_MAIN_REPO\plugins\prolint\InVADo_setup\prepare_docking_data_scripts

  • the folder 'prepare_docking_data_scripts' contains a pipeline
  • this is an exemplary, simple pipeline for processing a molecular docking
  • a small example data set is included
    • PATH/data/AAABMN.xaa.pdbqt (includes the ligands)
    • PATH/7nn9_autoDockTools.pdbqt (is the target protein)
  • running the script PATH\run_full_automated_docking.cmd automatically performs a molecular docking of the data above
  • the docked data is then stored in the folder PATH/results
  • the example ligands are from the ZINC database: https://zinc15.docking.org/
  • the docking tool is AutoDock Vina: https://vina.scripps.edu/
  • if own ligands are used they should follow the ZINC naming scheme

Run InVADo:

PATH = _InVADo_MAIN_REPO\plugins\prolint\InVADo_setup\

  • InVADo can be started with mmconsole.exe

  • mmconsole.exe is stored after building in "_InVADo_MAIN_REPO/build/install/bin/"

  • example command for execution (program + config file): C:\Projects\InVADo\build\install\bin\mmconsole.exe -p "C:\PATH\InVADo_config\InVADoConfig.mmprj" -i Project_1 inst

  • the first start can take a while because InVADo preprocesses the data (loading bars in the cmd window will indicate the progress)

  • the processed data will be stored in [e.g.: PATH\prepare_docking_data_scripts\results\InVADo_tmpFiles]

Starting only the Web Dashboard

PATH = _InVADo_MAIN_REPO\plugins\prolint\server\

  • there is the possibility to run only the web part of InVADo without the 3D visualization
  • it will use the provided test data set
  • build the web app: run 'PATH\build_app.cmd'
  • start the web app: run 'PATH\run_app.cmd'

optional: improve rendering quality

PATH = _InVADo_MAIN_REPO\plugins\prolint\InVADo_setup\

  • got to folder 'graphicSettings' located in PATH
  • run setGraphics.cmd to set an Nvidia profile for InVADo

Trouble Shooting

  • if the build fails with: can not find _Py_wfopen() make sure Python 3.10 is installed and no other Python version is set for the Windows PATH variable