Refactor Recursive Driver Into Distributed Driver#1351
Refactor Recursive Driver Into Distributed Driver#1351alenaizan wants to merge 161 commits intopsi4:masterfrom
Conversation
|
This looks great. It's good to have the large monolithic chunks of driver code split into smaller parts, printing functions tucked away and not scattered across calculations. Counterpoise-corrected CBS is something I wanted to do for a while! One point I'd like to make quite early in this PR: the whole pydantic validation mechanism is rather obscure. I understand that each |
|
This is pretty early days on this PR. The short is that a The key here is that the |
16e1628 to
4e10c56
Compare
|
I have some small changes to make the multilevel driver work with QCFractal. Could I get push permission, or should I open a PR to the branch? |
|
Invite in your mailbox. |
|
hooray, lgtm PR analysis is working! this may be a landslide. |
|
This pull request introduces 23 alerts and fixes 14 when merging 5c73c74 into 2edf6b7 - view on LGTM.com new alerts:
fixed alerts:
Comment posted by LGTM.com |
|
This pull request introduces 23 alerts and fixes 14 when merging e11bb21 into d4681c9 - view on LGTM.com new alerts:
fixed alerts:
|
Codecov Report
@@ Coverage Diff @@
## master #1351 +/- ##
==========================================
- Coverage 71.15% 70.90% -0.26%
==========================================
Files 1470 1468 -2
Lines 316070 316368 +298
==========================================
- Hits 224906 224327 -579
- Misses 91164 92041 +877
Continue to review full report at Codecov.
|
|
This pull request introduces 24 alerts and fixes 14 when merging 8c0afe6 into 6e67529 - view on LGTM.com new alerts:
fixed alerts:
|
19f7c57 to
d31ce07
Compare
|
This pull request introduces 24 alerts and fixes 14 when merging d31ce07 into b789aa3 - view on LGTM.com new alerts:
fixed alerts:
|
…n ddd, fix some QMMM
|
See #2575. |
Needs Py36
Description
Starting PR. Change the Psi4 driver from being recursive to being based on compute classes that have planning, computing and querying functions. Then, integrate the new driver with the QCArchive project for parallelizing nbody, CBS and findif.
Deconstruction Progress
99 changed files, and 5,314 additions and 2,946 deletions. c. dgasmith:recursive
59 changed files, and 3,408 additions and 1,885 deletions. c. loriab:recursive62
Todos
Notable points (developer or user-interest) that this PR has or will accomplish.
Release Notes
msgpack-pythonadded as req'd dependency. this keeps numpy arrays serialized when communicating in schemafile.logthat currently is continuously appendedsherrill_gold_standardorallen_focal_pointneed to be reformatted and registered withregister_composite_functionregister_xtpl_functionenergy('cbs', scf_wfn='scf', scf_basis='cc-pV[DTQ]Z', scf_scheme='scf_xtpl_helgaker_3')notenergy(cbs, scf_wfn='scf', scf_basis='cc-pV[DTQ]Z', scf_scheme=scf_xtpl_helgaker_3).ref_gradientarray to test on orset findif fd_project T/Fexplcitly to control.psi4.QMMM()object replaced byembedding_chargeskwarg in Bohr. See extern examples for details.json_ret = psi4.schema_wrapper.run_qcschema(json_input)notjson_ret = psi4.json_wrapper.run_json(json_input).json_retis now an object, so.access, not dictionary.clean()btwn calcs. Plain string modelchem calcs likeenergy('hf/cc-pvdz')were getting caught and also being cleaned, meaning their behavior was slightly different thanset basis cc-pvdz \n energy('hf'). This is no longer happening, so for occasional string modelchem calcs, you may need to add a clean in the input.psi4 --modulereturns the path for loading viaimport psi4. opposite ofpsi4.executablepsi4.set_output_filenow wrapspsi4.core.set_output_fileand additionally sets up a truncating python logging file with.logextension at the same time as the.outfile..outof input file name. If input has out or log extension (weird), extra extension added.AtomicResultoutputs aren't added in real time. Running through QCFractal, the output file is expected to break down, but this hasn't been tried.Checklist
Status