-
Notifications
You must be signed in to change notification settings - Fork 35
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
Adding a new calculator #248
Comments
Dear Prof. Baumeier, Creating a new calculatorAdd new class
Add required methods to classGeneral idea: implement get_energy/get_forces/(get_hessian) in the Calculator. These function are always called with Cartesian coordinates. In these functions you should construct
Excited-state handling
Unit tests
The way everything is implemented right now the only requirement is that the order of the MO-matrix and the order of the transition density matrices are consistent. I'll try to provide a kind of template tomorrow. Maybe it would be a good idea to wait 2 to 3 weeks before starting with a new calculator, because some parts of pysisyphus are heavily in flux right now, especially the OverlapCalculator. Previously pysisyphus only supported tracking for closed-shell systems but on the All the best |
Hello Johannes, Cheers, |
Dear Bjoern, I just had a quick look at your documentation and VOTCA seems to comprise several modules, e.e.g, CSG and XTP, isn't it? Will the pysisyphus calculator will about the XTP module? Can you please provide a link to the ASE calculator? A quick search on ASE's gitlab repo for "VOTCA" returned no results. Are you talking about this snippet https://github.com/votca/votca/blob/4645704e18767051905d821447f6f211c55475f6/xtp-tutorials/pyxtp/run_energy.py#L4 ? EDIT |
Yes, the one you found is what I was referring to. It is not part of the ASE package itself (hopefully in the future), but for now it lives in the VOTCA-XTP environment. |
Do you still need some support or some direction on how to proceed? If so, let me know. Personally, I like decoupled calculators like my Psi4 calculator. This way VOTCA could come from conda and is called via a shell-script, as runpsi4.sh. But going the decoupled route may also prevent you from using the stuff you alread built for pyxtp... One quick idea I had was to reuse the xml files found in $VOTCASHARE, and update them as necessary with options provided as nested dicts. This way you would have full control over most of the options. But maybe it would be tedious to create the inputs. Would you like to use pysisyphus via YAML inputs or more via the Python API? A possible YAML input with the approach outlined above could look like: geom:
[...]
calc:
type: votca
# charge and spin should not be defined as child of
# options.dftpackage
charge: 0
mult: 1
# Maybe just pick the appropriate XML file according to the string in 'execute'.
# But as I just noticed ... you include other xml files via the link attribute...
# Another approach would be to add an XML file as explicit argument to the VOTCA
# calculator, which could then be further customized on a per-calculation basis
# by the arguments in 'options' below...
execute: dftgwbse
options:
dftpackage:
basisset: def2-svp
auxbasisset: aux-def2-svp
[etc]
opt:
thresh: gau |
Hi devs,
I am looking at adding a new calculator in order to use pysisypus with our own code for ground and excited states (VOTCA, github.com/votca). I have looked at some of the existing calculators trying to reverse engineer what the required functions are to implement, but I guess there is a more efficient way to do that? Do you maybe have some overview or even bare template of what needs to be filled and how?
In particular for the excited state optimizations, I think you explicitly need the info about the MOs expressed GTOs? Then what ordering of functions do you expect in the GTO basis?
Any help is appreciated.
The text was updated successfully, but these errors were encountered: