docking-org / pydock3

Python package wrapping the DOCK Fortran program and providing several tools built on top of it.
Other
11 stars 3 forks source link

Implement simple config for dockopt #35

Open zackmawaldi opened 3 months ago

zackmawaldi commented 3 months ago

The goal here is to make dockopt less intimidating to use via a simplified config file option. This came about from a discussion with Brendan Hall during hackathon we had last week.

The main differences form current branch is that: When you run pydock3 dockopt - new, you get a new file: simple_dockopt_config.yaml. This file will be used as an effective default config file. User can ask for --advanced_mode=True in pydock3 dockopt - run, which would run dockopt as it is run currently.

The new simple mode does:

  1. When dockopt is run in simple mode: pydock3 dockopt - run, dockopt loads both simple and default config files, and replaces any shared values with simple values.
  2. If pydock3 dockopt - run --advanced_mode=True, then original behavior is maintained (load the original config file)

Some modifications to default dropped config file was made, which made default config be only 1 step. This is because since for 99% of dockopt jobs, there is no need for more than one step to avoid overfitting.

Documentation is written on the new documentation place of read-the-dock-docs made by Brendan. There should be a pull request there soon.

Note on testing: I did some testing and it seems to work as intended. I highly recommend someone else tests my branch to make sure it's working! I have it installed and working on gimel @ ~/zack/pydock_testing/pydock3/

Thanks! Lmk if anyone has any questions.

jir322 commented 3 months ago

I concur. We should always aim to have a dead-simple entry point while supporting options for more complex requirements.

John Irwin UCSF Pharmaceutical Chemistry http://irwinlab.compbio.ucsf.edu

On Wed, Jun 12, 2024 at 6:11 PM zack @.***> wrote:

The goal here is to make dockopt less intimidating to use via a simplified config file option. This came about from a discussion with Brendan Hall during hackathon we had last week.

The main differences form current branch is that: When you run pydock3 dockopt - new, you get a new file: simple_dockopt_config.yaml. This file will be used as an effective default config file. User can ask for --advanced_mode=True in pydock3 dockopt - run, which would run dockopt as it is run currently.

The new simple mode does:

  1. When dockopt is run in simple mode: pydock3 dockopt - run, dockopt loads both simple and default config files, and replaces any shared values with simple values.
  2. If pydock3 dockopt - run --advanced_mode=True, then original behavior is maintained (load the original config file)

Some modifications to default dropped config file was made, which made default config be only 1 step. This is because since for 99% of dockopt jobs, there is no need for more than one step to avoid overfitting.

Documentation is written on the new documentation place of read-the-dock-docs https://github.com/bwhall61/read-the-dock-docs made by Brendan. There should be a pull request there soon.

Note on testing: I did some testing and it seems to work as intended. I highly recommend someone else tests my branch to make sure it's working! I have it installed and working on gimel @ ~/zack/pydock_testing/pydock3/

Thanks! Lmk if anyone has any questions.

You can view, comment on, or merge this pull request online at:

https://github.com/docking-org/pydock3/pull/35 Commit Summary

File Changes

(5 files https://github.com/docking-org/pydock3/pull/35/files)

Patch Links:

— Reply to this email directly, view it on GitHub https://github.com/docking-org/pydock3/pull/35, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABIR2H2P5736FPLQU5U5663ZHDWUDAVCNFSM6AAAAABJHMH7FWVHI2DSMVQWIX3LMV43ASLTON2WKOZSGM2DSOJSHE4TEMY . You are receiving this because you are subscribed to this thread.Message ID: @.***>