Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Generalise tasks #1

Merged
merged 65 commits into from
Sep 26, 2018
Merged

Generalise tasks #1

merged 65 commits into from
Sep 26, 2018

Conversation

smarkov
Copy link
Collaborator

@smarkov smarkov commented Aug 22, 2018

Re-implemented tasks:

  1. allow user extension via importing user modules
  2. task are initialised in evaluator.call() so that multiple evaluations can be performed in parallel
  3. parameter values and parameter names now live 'separately'. Parameter names are initialised in evaluator, but parameter values are passed at call time only. Again, to enable parallel calls to evaluate().
  4. tasks from dftbutils must now be imported via the new import mechanism, in order to use them
  5. functions that correspond to tasks have different signature now: func(implargs, database, *args, **kwargs).
  6. Json input is now an alternative to Yaml

Major files affected:
usertasks.py (new), tasks.py, evaluate.py, taskdict.py

Minor changes:
input.py, skpar.py, optimise.py

Other minor changes - to adapt call signatures:
dftbutils.queryDFTB.py, dftbutils.taskdict.py (new)

Stanislav Markov added 30 commits August 10, 2018 20:14
…ew execute function); Nearly complete; Not tested!"
…e-tasks, dftbutils-tasks and user-defined-task
…n evaluate due to DataBase being exchanged at call time; This shall enable skpar to run again
…y to enable legacy handling of model DB; most tests pass and test_optimise.yaml works!
@smarkov smarkov self-assigned this Aug 23, 2018
@smarkov smarkov requested a review from aradi August 23, 2018 13:37
Stanislav Markov added 25 commits August 23, 2018 19:28
…e, and is passed to Objective.get() so that evaluation can now really be performed in parallel for several iterations at a time; all tests pass and skpar_*yaml run OK
…nd GetTasks as these are non-existent anymore
…ct; Tasks and tests that need database are now using only get() and update() and can operate with a python dict as opposed to an instance of the Database class. The Database class will likely evaporate together with the Query, when Objectives are re-worked
…f electronic structure; plot_bs still fails somehow
…o be saved; Assertion to catch user-input mistakes leading to lack of data to plot
…ename; reworked a bit how plot title and filename are established
…ed to evol.py and plotting improved; Added __repr__() to core.database.Query; Repulsive Fit example fixed for current task interface and added plot task
…plicit task selection; unit-tested:OK; affected input files have not been updated however
…upplied; removed spurious file test.py from skpar/core
…ch is mandatory in order to help debugging yaml issues
…bugs in dftbutils.utils – spuriously messed up function declaration and workdir assignment for execute()
@smarkov smarkov merged commit 98cbfe2 into master Sep 26, 2018
@smarkov smarkov deleted the generalise-tasks branch September 26, 2018 14:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant