1
0
mirror of https://github.com/TREX-CoE/qmckl.git synced 2024-12-23 12:57:20 +01:00
Commit Graph

361 Commits

Author SHA1 Message Date
v1j4y
fe72422918 Added det value and adjoint. #41 2021-10-07 14:13:40 +02:00
v1j4y
d24f268369 Added test for invert. #41 2021-10-07 14:01:40 +02:00
v1j4y
2735b31c12 Added alpha and beta matrices for all quantities. #41 2021-10-07 00:27:01 +02:00
v1j4y
13c9c9f358 Added fortran interface for qmckl_invert. #41 2021-10-07 00:26:35 +02:00
e5feaf9d0d Merge branch 'master' into trexio 2021-10-06 23:44:19 +02:00
af54e7a7dc Checking context in SM 2021-10-06 23:44:06 +02:00
9d67a29122 Read electrons from trexio 2021-10-06 23:34:58 +02:00
v1j4y
00d85528c5 Added alpha and beta det matrices. #41 2021-10-06 17:59:44 +02:00
v1j4y
cf394ce171 Fixed bug in get_det_vgl, now compiles. #41 2021-10-06 17:29:53 +02:00
v1j4y
5a280e877f removed pointer for type variable. #41 2021-10-06 16:49:21 +02:00
vijay
e8be52e59b
Merge branch 'master' into wf_det_grad_cof 2021-10-06 10:39:13 +02:00
v1j4y
86ae704363 Improved doc. #41 2021-10-06 10:38:55 +02:00
71ad7abb7f Fixed #40 2021-10-06 10:35:43 +02:00
6d19d416fa
Merge branch 'master' into master 2021-10-06 09:34:45 +02:00
v1j4y
d416c5dd77 Working on calculation of inverse. #41 2021-10-05 13:26:55 +02:00
v1j4y
bb21cbed69 Working on matrix inv. #41 2021-10-04 22:45:44 +02:00
v1j4y
59d4c91edf Updated name change to header files. #41 2021-10-04 17:03:12 +02:00
v1j4y
77a6155bb0 Renamed file. #41 2021-10-04 16:53:15 +02:00
v1j4y
5e399a423e Added det struct to context. #41 2021-10-04 16:52:13 +02:00
v1j4y
5746487c2e Fixed ordering in Doc. #32 2021-10-04 15:46:47 +02:00
v1j4y
f3a3c8f0b1 Improved doc for context. #32 2021-10-04 15:43:41 +02:00
v1j4y
e425b24303 Added context. #41 2021-10-04 15:42:22 +02:00
v1j4y
90a560138d Initial commit. #41 2021-10-04 09:54:34 +02:00
v1j4y
d8dea5e855 Fixed test. #32 2021-10-04 09:50:16 +02:00
v1j4y
0c0f8e53d0 Added test for MO but deactivated because slow. #32 2021-10-04 09:08:38 +02:00
v1j4y
4df8a5e066 Fixed bug in mo_coef dimensions. 2021-10-01 00:23:07 +02:00
v1j4y
f557035e28 Fixed bug in mo_dims. 2021-09-29 18:55:02 +02:00
v1j4y
296a2886ff Added reading actual mo coef for testing. #32 2021-09-29 18:12:41 +02:00
vijay
5557187b0d
Merge branch 'master' into ao_mo_vj 2021-09-29 00:33:07 +02:00
e180354cbc Added MOs for CHBrClF 2021-09-29 00:25:50 +02:00
1cf1956fa3 Merge branch 'master' of github.com:TREX-CoE/qmckl 2021-09-28 22:46:30 +02:00
v1j4y
25bb2fd97e Fixed dimensions in call to DGEMM. #32 2021-09-27 23:36:11 +02:00
v1j4y
97749325b1 Removed TransA and TransB. 2021-09-27 22:37:51 +02:00
v1j4y
5220df5185 Checking ao -> mo. 2021-09-27 22:06:49 +02:00
v1j4y
d3311ec2d9 Testing provide mo. 2021-09-27 22:01:13 +02:00
v1j4y
922c52c36a Compiles locally. #32 2021-09-27 18:41:01 +02:00
v1j4y
5a095c490d Check whether MO basis has been initialized before computations. #32 2021-09-27 18:39:45 +02:00
v1j4y
c1c5a4a8aa Provided function to check for MO basis. #32 2021-09-27 18:30:59 +02:00
v1j4y
ff124cb62c Deactivate mo test atm. 2021-09-27 18:20:41 +02:00
v1j4y
a055732227 Fixed bug and working on tests for MOs. #32 2021-09-27 18:17:21 +02:00
v1j4y
ff5e7882d0 Working on adding TransA and TransB to DGEMM. #32 2021-09-27 18:16:51 +02:00
v1j4y
a52d6683cc Allow 0 beta electrons. #32 2021-09-27 17:18:43 +02:00
vijay
8db2c94d67
Merge branch 'master' into ao_mo_vj 2021-09-27 11:31:50 +02:00
v1j4y
8463793114 Fixed bug in factor_een_e_deriv_e. Now everything checks out. 2021-09-27 11:27:49 +02:00
v1j4y
d19fa51ded Fixed bugs. Now gives the correct J_{een}. 2021-09-27 10:58:20 +02:00
574ce713d2 Removed walk_num in AOs 2021-09-23 11:16:54 +02:00
d3188937f7 Fix normalization in AOs 2021-09-23 10:47:08 +02:00
v1j4y
3474987940 deactivate factor_een test atm. 2021-09-22 15:51:28 +02:00
v1j4y
b0a4d08ad8 Fixed sub in een_rescaled_e. 2021-09-22 15:47:39 +02:00
v1j4y
e4beaff674 Test added for een_rescale_n_deriv_e. 2021-09-22 12:20:39 +02:00
v1j4y
06c02101e4 Test added for een_rescale_e_deriv_e. 2021-09-22 11:42:45 +02:00
v1j4y
3fcccef686 Checking the build. 2021-09-21 12:43:23 +02:00
v1j4y
54e1b2af31 Working on remaining tests. 2021-09-21 12:05:03 +02:00
v1j4y
99cf1cfca0 Cleaned some tests. 2021-09-21 11:52:46 +02:00
3f0b8414ec Merge branch 'master' of github.com:TREX-CoE/qmckl 2021-09-21 09:56:13 +02:00
vijay
6dd5736845
Merge branch 'master' into ao_mo_vj 2021-09-19 16:37:09 +02:00
Francois Coppens
0a179be8f3 - Regularised function declarations argument syntax.
- Added asserts in test to check for NULL pointers.
2021-09-18 18:07:05 +02:00
Francois Coppens
908e52b855 All Fortran interfaces to C/C++ added and tested. Library and tests compile smoothly. 2021-09-16 17:24:19 +02:00
Francois Coppens
c9e6bcdab1 Almost done with fixing interfaces. 2021-09-16 13:44:12 +02:00
v1j4y
3fa60a3009 Implemented MOs. Needs testing. #32 2021-09-15 18:30:41 +02:00
v1j4y
eaede28a73 Tests pass for qmckl_dgemm. #32. 2021-09-15 16:21:42 +02:00
v1j4y
cf3550b6b7 Fixed some bugs, now compiles. 2021-09-15 11:55:45 +02:00
vijay
61751c307f
Merge branch 'master' into ao_mo_vj 2021-09-15 11:21:21 +02:00
Francois Coppens
51bddd0864 - Added Fortran- and C-interface blocks in Naive Sherman Morrison section.
- Changed the name qmckl_sherman_morrison_c to qmckl_sherman_morrison_c_ to compensate for added '_' by Fortran compiler.
2021-09-15 10:52:00 +02:00
Francois Coppens
37a408c9dd Add fortran interface 2021-09-14 15:08:26 +02:00
v1j4y
65a9b79b7c Added Properties for interface auto generation. 2021-09-14 12:13:17 +02:00
Pablo de Oliveira Castro
7a082a44eb
Merge branch 'master' into master 2021-09-13 08:16:33 +02:00
Francois Coppens
36f930b8f7 - Removed AM_FCFLAGS = -fno-underscoring from Makefile.am again.
- Removed all Fortran code from the org/qmckl_sherman_morrison_woodbury.org file to prevent the appearance of *_ symbol names in libqmckl.so due to the use of Fortran compiler.
- Removed all compiler warings due to imlpicit call to fabs() by including math.h
- Removed all the cppcheck warnings of unsused variables by casting return-value function calls to void when the return value is not used. #25
2021-09-10 17:29:40 +02:00
5bedc582b5 Merge branch 'master' of github.com:TREX-CoE/qmckl 2021-09-09 09:32:40 +02:00
007ae2f9a4 Comments 2021-09-09 09:32:36 +02:00
François Coppens
004ec2a2a7
Merge branch 'TREX-CoE:master' into sherman-morrison-woodbury 2021-09-08 16:51:38 +02:00
v1j4y
42639bcbff Added a TODO. #32 2021-09-07 16:43:25 +02:00
v1j4y
a41c67b94f Working on qmckl_dgemm. 2021-09-07 16:36:26 +02:00
Aurélien Delval
c53c982337 Correct the qmckl_probes documentation
There were a few errors/omissions in the doc section describing the
probes. This have been corrected/made clearer.
2021-09-07 15:24:54 +02:00
Francois Coppens
37d5ff61ff - Updated Perfomance recommendations, did some rewriting of parts of the text and removed more typos. 2021-09-07 12:22:39 +02:00
Francois Coppens
78c574af49 Improved documentation and Requirements sections. 2021-09-07 11:22:54 +02:00
Francois Coppens
dcd6428c50 * Moved Helper functions to the end
* Typo fixed
2021-09-07 09:28:36 +02:00
Aurélien Delval
78fdbfca77 Increase the value of epsilon when vfc_ci is enabled
The previous value of epsilon, which was pulled form the qmckl_context
and reused fot the qmckl probes, was arout 4.10^-16. It's a good value
to use for the tests with IEEE arithmetic, however, MCA introduces some
noise which is at this order of magnitude, and caused one probe in
particular to fail, while its accuracy was actually satisfying.

This value is now multiplied by 16 if VFC_CI is defined (to ask for 4
less significant digits in base 2), which makes more sense for MCA.
2021-09-06 16:34:48 +02:00
v1j4y
d704b19c13 Some improvements to the description. 2021-09-06 07:45:10 +02:00
Francois Coppens
ef04e3df9b Added realistic tests to all kernels. Everything compiles fine. 2021-09-05 11:22:41 +02:00
Francois Coppens
435628a5d0 Finished first draft of the documentation 2021-09-02 17:56:42 +02:00
Aurélien Delval
703031b16f Fix indentation of lists in documentations
Line breaks in the lists of the documentation appeared in the file
preview. They have been removed so that all of its text belongs
correctly to eac bullet point.
2021-09-02 11:56:56 +02:00
Francois Coppens
abb3461893 Put info in the wrong place. 2021-09-01 16:10:59 +02:00
Francois Coppens
bbd20ce87a More documentation added. 2021-09-01 16:06:51 +02:00
Francois Coppens
9e58ab4bb9 Started adding anf polishing documentation. 2021-09-01 15:29:14 +02:00
Aurelien Delval
e3ec28ad40 Add qmckl_probes description to the code documentation 2021-08-31 09:18:17 +00:00
Aurelien Delval
e75d249474 Correctly ignore problematic checks for vfc_ci
Some checks in the AO test were not correctly ignored by the
preprocessor when vfc_ci support was enabled. This caused the test to
fail unexpectedly and made it impossible to get data from it in vfc_ci.
2021-08-30 15:59:11 +00:00
Aurelien Delval
291ea5441d Correctly ignore asserts for vfc_ci
Some asserts where not correctly ignored with vfc_ci and caused tests to
exit prematurely when compiling the library with Verificarlo and using
stochastic backends.
2021-08-24 19:16:49 +00:00
Francois Coppens
978e20ac42 Removed local context var declarations from kernels and pass along context from passed arguments. #25 2021-07-30 11:48:08 +02:00
Francois Coppens
a5e58c80d7 Passing argument context instead of creating and passing a locally created context. #25 2021-07-29 11:48:38 +02:00
Aurélien Delval
eb8d75c247 Add accuracy target in distance and AO probes
The target has been set to 1d.-14 (or epsilon), because this was the value already
used in the tests. However this might not be the best choice with the
non-deterministic backend, so it might be necessary to adjust it in the
future.

Also, the expectedValue argument has been set to 0 since it is not used.
(the tests checks have already been written anyway)
2021-07-27 15:50:33 +02:00
Francois Coppens
afc6e115d3 Resolved compiler warnings about initialising 'objects' with 'const objects'. #25 2021-07-27 08:48:28 +02:00
Francois Coppens
0e4ea1f81b Fixed tests. Everything compiles successfully and passes all tests. #25 2021-07-27 06:59:44 +02:00
Francois Coppens
41be86fe59 Removed dependency on qmckl_threshhold() and the accompanying preprocessor definition. The break-down threshold now has to be passed explicitly as a function argument. #25 2021-07-26 17:41:21 +02:00
Francois Coppens
decd977fff Added mixed kernel with Woodbury 3x3 and update splitting. #25 2021-07-26 12:19:29 +02:00
Aurélien Delval
66a35e2fc0 Fix Makefile.am and change probes name 2021-07-25 15:36:14 +02:00
Aurélien Delval
e443790806 Place/rename new probes in both distance and AO tests 2021-07-24 13:19:09 +02:00
vijay gopal chilkuri
d2eb9f5a5d Added interfaces and fortran versions and fixed return for smw2s. #25 2021-07-23 19:58:24 +02:00
Francois Coppens
159fb149a4 Added Woobury 3x3, 2x2 and Sherman-Morrison-Splitting mixed kernels. Compiles fine but test still fail. #25 2021-07-23 18:28:25 +02:00
Aurélien Delval
ce24885979 Correct tests and put C(2,2) in distance probes
Since we don't need to place probs on all matrices, a simple solution
seems to monitor one element of the matrix. A solution could be to
compute a matrix norm / residual but this would make the tests more
complex.
2021-07-23 15:19:12 +02:00
Aurélien Delval
cbf1bd8de8 Fix replace error in AO 2021-07-23 12:28:27 +02:00
Aurélien Delval
68dc374422 Merge branch 'master' of https://github.com/TREX-CoE/qmckl into TREX-CoE-master 2021-07-23 12:27:18 +02:00
Aurélien Delval
145f4fba40
Add the qmckl_probes interface (#2)
* comment

* Update distance test code

The distance test has been updated to the latest version, with a first attempt at using vfc_probes inside it

* Functional implementation of vfc_probes in the distance tests

This commit has the first functional vfc_ci tests. Verificarlo tests
should be written over the existing tests, and they can be enabled with
the following configure command:

QMCKL_DEVEL=1 ./configure --prefix=$PWD/_install --enable-maintainer-mode --enable-vfc_ci CC="verificarlo-f -Mpreprocess -D VFC_CI" FC="verificarlo-f -Mpreprocess -D VFC_CI" --host=x86_64

The --enable-vfc_ci flag will trigger the linking of the vfc_ci
library. Moreover, as of now, the "-Mpreprocess" and "-D VFC_CI" flags
have to be specified directly here. There is probably an appropriate
macro to place those flags into but I couldn't find it yet, and could
only manage to build the tests this way.

When the VFC_CI preprocessor is defined, somme additional code to
register and export the test probes can be executed (see
qmckl_distance.org).

As of now, the tests are built as normal, even though they are expected
to fail :

make all
make check

From there, the test_qmckl_distance (and potentially the others)
executable can be called at will. This will typically be done
automatically by vfc_ci, but one could manually execute the executable
by defining the following env variables :

VFC_PROBES_OUTPUT="test.csv" VFC_BACKENDS="libinterflop_ieee.so"

depending on the export file and the Verificarlo backend to be used.

The next steps will be to define more tests such as this one, and to
integrate them into a Verificarlo CI workflow (by writing a
vfc_tests_config.json file and using the automatic CI setup
command).

* Error in FOrtran interface fixed

* Added missing Fortran interfaces

* Modify distance test and install process integration

All probes are now ignored using only the preprocessor (instead
of checking for a facultative argument) in the distance test.
Moreover,preprocessing can now be enabled correctly using FCFLAGS
(the issue seemed to come from the order of the arguments passed
to gfortran/verificarlo-f with the preprocessor arg having to come
first).

* Add vfc_probes to AO tests

vfc_probes have been added to qmckl_ao.org in the same way as
qmckl_distance.org, which means that it can be enabled or disabled at
compile time using the --enable-vfc_ci option.

qmckl_distance.org has been slightly modified with a better indentation,
and configure.ac now adds the "-D VFC_CI" flag to CFLAGS when vfc_ci is
enabled.

* Start work on the vfc tests config file and on a probes wrapper

The goal in the next few commits is to make the integration of
vfc_probes even easier by using a wrapper to vfc_probe dedicated to
qmckl. This will make it easier to create a call to vfc_probe that can be
ignored if VFC_CI is not defined in the preprocessor. Once this is done,
the integration will be completed by trying to create an actual workflow
to automatically build the library and execute CI tests.

* Moved qmckl_probes out of src

As of now, qmckl_probes have been moved to tools, and can be built via a
bash script. This approach seems to make more sense, as this should not
be a part of the library itself, but an additional tool to test it.

* Functional Makefile setup to enable qmckl_probes

The current setup builds qmck_probes by adding it to the main QMckl
libray (by adding it to the libtool sources). The Fortran interface's
module still need to be compiled separately.

TODO : Clean the build setup, improve integration in qmckl_tests and
update tests in qmckl_ao with the new syntax.

* New probes syntax in AO tests

* Clean the probes/Makefile setup

The Fortran module is now built a the same time than the main library.
The commit also adds a few fixes in the tests and probes wrapper.

Co-authored-by: Anthony Scemama <scemama@irsamc.ups-tlse.fr>
2021-07-23 12:01:14 +02:00
vijay gopal chilkuri
90b6333560 Splitting tests bug fix. #25 2021-07-22 18:20:20 +02:00
Francois Coppens
e1b325ab18 Added Sherman-Morrison with update splitting. For now the headers for qmckl_slagel_splitting_c and qmckl_sherman_morrison_splitting_c are not generated. #25 2021-07-22 18:05:39 +02:00
Francois Coppens
c6d00d5c5b Added and tested Woodbury 3x3 kernel to QMCkl.
Residual = wb3 14 9.92936e-07 1.90518e-11
ok -- cycle 14

Residual = qmckl_wb3 14 9.92936e-07 1.90518e-11
ok -- cycle 14. #25
2021-07-22 11:41:47 +02:00
vijay gopal chilkuri
fdb8f5d50a changed unsigned int to uint64_t for consistency. #25 2021-07-22 09:59:02 +02:00
vijay gopal chilkuri
83dbab7f6b Try not to export org-mode lisp stuff. #25 2021-07-21 17:56:04 +02:00
vijay gopal chilkuri
081e27dd92 Bug fix in tests. #25 2021-07-21 17:42:48 +02:00
Francois Coppens
11eee81f84 - Added Woodbury 2x2 to org-mode file. QMCkl compiles but the testsuite fails with a segementation fault. #25 2021-07-21 17:31:25 +02:00
vijay gopal chilkuri
04d2ec2d70 Added an example usage of qmckl_sherman_morrison function as a test. #25 2021-07-20 19:34:51 +02:00
Francois Coppens
7b2a8caeab - Added documentation to helper functions
- Removed redundant #include qmckl.h
- Commented out the #ifdef DEBUG ... #endif blocks
- Changed Sherman-Morrison break-down check to use qmckl_exit_code qmckl_sherman_morrison_threshold double* const thresh ). #25
2021-07-20 12:09:43 +02:00
Francois Coppens
f325f4feda - Replaced <cmath> with <math.h> and std::fabs() with fabs().
- Changed return values 'true' and 'false' to `QMCKL_SUCCESS` and `QMCKL_FAILURE`.
- Commented out the '#ifdef DEBUG ... #endif' blocks because debug messages are not implemented yet. #25
2021-07-20 11:40:27 +02:00
Francois Coppens
80c9a2291c Replaced <cmath> with <math.h> and std::fabs() with fabs() to be C-complient. #25 2021-07-20 11:15:33 +02:00
vijay gopal chilkuri
dcb4816941 Added threshold function. Tests still dont compile. #25 2021-07-20 10:51:21 +02:00
vijay gopal chilkuri
6e047046f4 Get the sherman morrison to compile. Tests still dont compile. #25 2021-07-19 18:25:10 +02:00
Francois Coppens
7849f510f4 Started integration of naive Sherman-Morrison in the org-mode file. #25 2021-07-19 17:39:01 +02:00
Francois Coppens
81f5696950 Changed internal functions to static functions. Changed function names to conform with QMCkl naming conventions. Removed irrelevant debug output. qmckl_sherman_morrison() now returns false if the denominator is too close to 0 and true if it is ok. #25 2021-07-19 16:15:28 +02:00
vijay gopal chilkuri
4e31dc4ac4 Added Tests block and set the noexport tags. #25 2021-07-19 17:34:47 +05:30
vijay gopal chilkuri
897eb3f34e Added call to generate_f_interface in template. #25 2021-07-19 17:31:34 +05:30
vijay gopal chilkuri
6c2866967d Added call to generate_c_interface in template. #25 2021-07-19 17:31:11 +05:30
vijay gopal chilkuri
36e414aacd Added call to generate_c_header to template. #25 2021-07-19 17:30:10 +05:30
vijay gopal chilkuri
b0fd86db40 Added missing org file. #25 2021-07-19 15:31:07 +05:30
vijay gopal chilkuri
269f8d33d2 Added template org file for Francois. #25 2021-07-19 15:29:32 +05:30
Francois Coppens
f873b36213 First stage of QMCkl integration of Sherman-Morrison-Woodbury kernels. 2021-07-19 09:55:58 +02:00
c8cad59922 Added Fortran interfaces 2021-07-19 09:26:05 +02:00
cdf92e2464 Added AO_factor to AOs 2021-07-13 09:54:43 +02:00
75a93d12c6 Added AO polynomials 2021-07-12 15:04:21 +02:00
fba34e4982 Addd AO functions 2021-07-09 00:45:17 +02:00
e8a5103c92 Changed order of indices in AOs 2021-07-08 19:25:15 +02:00
vijay gopal chilkuri
af978e1b03 Everything good. Ready for merge. #22 2021-07-08 12:22:28 +05:30
vijay gopal chilkuri
45bc54d0f9 Reinstated tests for een_rescaled_n. #22 2021-07-08 12:11:26 +05:30
vijay gopal chilkuri
bcba93ee7e Reinstated tests for een_rescaled_e. #22 2021-07-08 12:09:22 +05:30
vijay gopal chilkuri
c8aef0d9ac Reinstated tests for factor_en_deriv_e. #22 2021-07-08 12:07:13 +05:30
vijay gopal chilkuri
2cd5a31cba Fixed bug in type_nucl_vector dim. #22 2021-07-08 12:03:42 +05:30
vijay gopal chilkuri
672f0e771c Fixed bug in factor_en. #22 2021-07-08 11:58:46 +05:30
vijay gopal chilkuri
be341f3afd Reinstated tests for factor_en. #22 2021-07-08 11:53:13 +05:30
vijay gopal chilkuri
0575638e5b Reinstate tests for factor_ee_deriv_e. #22 2021-07-08 11:49:52 +05:30
vijay gopal chilkuri
0342449621 Reinstate tests for factor_ee. #22 2021-07-08 11:41:32 +05:30
vijay gopal chilkuri
371b943aac Fixed some bugs in aord_vector dims. #22 2021-07-08 11:36:47 +05:30
vijay gopal chilkuri
dcff0cf4b4 Fixed bug in bord_vector dimension. #22 2021-07-08 11:30:07 +05:30
vijay gopal chilkuri
1821089880 Testing IX. #22 2021-07-08 11:10:10 +05:30
vijay gopal chilkuri
c838dabe3c Fix for type_nucl_vector. #22 2021-07-08 10:59:24 +05:30
vijay gopal chilkuri
b1d63752fb Fixed some warnings. #22 2021-07-08 10:40:24 +05:30
vijay gopal chilkuri
751d918147 Fixed size_t to int64_t. #22 2021-07-08 10:28:15 +05:30
vijay
cf9c3c0e3d
Merge branch 'master' into jastrow_vj 2021-07-08 10:10:13 +05:30
3ac753cc0a Debugging AOs 2021-07-08 01:25:09 +02:00
vijay gopal chilkuri
0383b29b88 Testing - VIII. #22 2021-07-07 22:09:08 +05:30
vijay gopal chilkuri
a09c29eb64 Testing - VII. #22 2021-07-07 22:02:27 +05:30
vijay gopal chilkuri
0391efe5b8 Testing - VI. #22 2021-07-07 21:04:33 +05:30