-
Notifications
You must be signed in to change notification settings - Fork 7
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
Orca to trexio #22
Orca to trexio #22
Conversation
@scemama what is the recommended way to test the converter ? |
To test the produced TREXIO files, the best solution is to run:
It will compute numerically the overlap of MOs, and if your MOs are orthonormal it is easy to see that everything is OK. With the |
You should also run
to compare the overlap matrix in the trexio file with a numerically computed one. If they match, it means that all the conventions and normalization factors are OK. Because it is possible that a normalization factor is missing in the AOs and that you include it inside the MO coefficients, so that the MO check doesn't detect the problem. |
Amazing @v1j4y, thanks! If you have some test files, you can upload them to the |
I see a lot of comments referring to PySCF. Is it because ORCA's notations are similar to PySCF? |
OK thanks for the comments ! Currently, there's a problem with normalization of AOs which was revealed by |
OK ! Also, Dagmar Lenk has implemented ECPs in |
So we wait for ECPs before we merge, or you make another PR? |
Yes ! |
@scemama I've implemented ECPs. Is there any way to check for ECPs ? Also, I'm testing the water molecule which was used for the pyscf test by Kosuke. Here's the output (I changed the integration domain to [40.,40.,40.]):
Does this look OK or does it need more points ? |
No. The simplest way is to import the TREXIO file in another code, and check that the energy is correct. You can do it with quantum package with
It is hard to tell... If you install the python interface to QMCkl, trexio-tools will use it to compute the AOs and MOs, so it will be orders of magnitude faster. Then, you can increase the number of points for the integration, ans see if it converges towards an identity matrix. But you can also compute the energy with quantum package to cross-check ;-) |
Hi ! @scemama I'm almost done, I get the same energies as orca after doing @q-posev Do I need to do anything else for the CI ? How do I set up the CI ? |
Bravo @v1j4y ! The CI is already in place, see test.yml file. As I wrote above, for the CI we would need you to upload one (or a few) test ORCA JSON file(s) to the For now we only test that converters "work" (i.e. they do not raise errors while processing output of a q-chem program and they do produce the TREXIO file in the end). The validity of the TREXIO file is only checked for GAMESS for now. @scemama this is something related to non-regression of the converters which worries me sometimes (see my comments in #12), perhaps at some point we want to make sure that produced TREXIO files are valid and have not changed drastically compared to some fixed ref. We could do @v1j4y Let me know if you need help with the CI. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@v1j4y Sorry, my bad, I have not seen the h2o.json
file that you pushed already. Then the only thing left for testing the ORCA->TREXIO is adding the following line to test.yml
(I cannot do it since PR is from the fork)
trexio convert-from -t orca -i data/h2o.json -b hdf5 trexio_h2o_orca.h5
@q-posev I think it is a good idea to check that the files are OK. But I would use the text backend for that with diff, as text files are better handled with git. |
I'm adding the ORCA test to CI on |
Thanks @q-posev ! |
Added everything except ECPs.
Converter uses
filename.json
orca data repository created usingorca_2json
to obtain the correspondingtrexio_file.h5
file. Note that theorca_2json
is the long term supported data repository generator for ORCA.orca_2json
. This will need to be implemented in ORCA before we can implement it here.