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

504 Commits

Author SHA1 Message Date
v1j4y
20b8f2822e Renamed qmckl_invert to qmckl_adjoint. #41 2021-10-29 08:45:14 +02:00
v1j4y
cd0db55f9d Added cutoff for the calculation of PE. #41 2021-10-29 08:44:53 +02:00
v1j4y
ad9ae8daf9 Removed debug print from local energy. #41 2021-10-28 13:00:20 +02:00
v1j4y
1d9d6b0f65 Added getter for determinant of psi. #41 2021-10-27 14:00:04 +02:00
v1j4y
466bd8c171 Added proper indices to drift vector. #41 2021-10-27 00:26:44 +02:00
v1j4y
1a3d37633a Added dimensions to drift vector. #41 2021-10-27 00:23:46 +02:00
v1j4y
1869756ea4 Verified Local energy with QMC=Chem for Be2. #41 2021-10-26 19:13:20 +02:00
v1j4y
a49e9151e5 Added access function for adjoint matrix of determinant. #41 2021-10-25 21:51:27 +02:00
v1j4y
5ea5e83c6c fixed debug comment. #41 2021-10-25 19:25:13 +02:00
v1j4y
a94f446dd0 Removed debug print. #41 2021-10-25 19:12:48 +02:00
v1j4y
3f181fa596 Added dependency for MOs in determinant. #41 2021-10-25 19:11:03 +02:00
v1j4y
e2a9f9d7bb Fixed bug in mo_vgl where ao_vgl was not given as dependency. #41 2021-10-25 18:45:06 +02:00
v1j4y
e80c8d51ed Added AO Normalization in trexio read. #41 2021-10-25 15:29:08 +02:00
v1j4y
a2e420e9a5 fixed blas . #41 2021-10-21 19:49:47 +02:00
v1j4y
9c68623e0e Merge branch 'wf_det_grad_cof' of https://github.com/v1j4y/qmckl into wf_det_grad_cof 2021-10-19 11:37:54 +02:00
v1j4y
b8886fee28 Removed walk_num from local energy mo_vgl. #41 2021-10-19 11:37:46 +02:00
vijay
5824b2f240
Merge branch 'master' into wf_det_grad_cof 2021-10-17 19:43:53 +02:00
d36810ce37 Fix Fortran BLAS && -> .and. 2021-10-17 17:57:15 +02:00
v1j4y
2cca7c00dd All functions look good. Need real tests. #41 2021-10-15 14:38:44 +02:00
v1j4y
4e877810da Initialize local energy. #41 2021-10-15 14:00:36 +02:00
v1j4y
fade372e02 Added missing provider calls for ee_pot and en_pot. #41 2021-10-15 13:48:48 +02:00
v1j4y
4167f2a1c1 Added tests for ee_pot and en_pot. #41 2021-10-15 13:05:50 +02:00
v1j4y
0928f9ea14 Moved en_pot to electron. #41 2021-10-15 12:44:37 +02:00
6d3eb35b7f style for documentation 2021-10-15 12:09:48 +02:00
v1j4y
df6a2ade60 Fixed merge. #41 2021-10-15 10:22:47 +02:00
vijay
5a44ce39c2
Merge branch 'master' into wf_det_grad_cof 2021-10-15 07:57:17 +02:00
7538a879fc Fix documentation 2021-10-14 21:57:28 +02:00
1a713455f8 Fixed DGEMM 2021-10-14 21:53:00 +02:00
284145be65 Merge branch 'master' of github.com:TREX-CoE/qmckl 2021-10-14 21:44:02 +02:00
2587a046de Fixed #48 2021-10-14 21:40:14 +02:00
f8e80b2113 Remove unused variables 2021-10-14 18:54:48 +02:00
acb034e88b Remove annoying warning in debug 2021-10-14 18:53:31 +02:00
v1j4y
c3f0348f6a Fixed merge. #41 2021-10-14 17:27:25 +02:00
vijay
07033b9b55
Merge branch 'master' into wf_det_grad_cof 2021-10-14 17:20:23 +02:00
1e8e91b61b Minor changes in mo 2021-10-14 16:45:40 +02:00
86c8187d7e Fix broken builds 2021-10-14 16:32:58 +02:00
c4467abb28 Merge branch 'master' into trexio 2021-10-14 10:52:35 +02:00
4e36bba278 Fixed distcheck with updated trexio 2021-10-14 10:50:51 +02:00
v1j4y
ed5ec3c729 Fixed ctx passing in e_pot. #41 2021-10-13 18:27:04 +02:00
v1j4y
64b30dc10e Added elec date for en_pot. #41 2021-10-13 18:26:45 +02:00
v1j4y
cff6b8a47a Added dimension of en_pot in definition. #41 2021-10-13 18:21:59 +02:00
v1j4y
a6e625016c Added provider to repulsion in e_pot. #41 2021-10-13 18:13:13 +02:00
v1j4y
ca61af7a3d Added providers for ee_pot and en_pot for e_pot. #41 2021-10-13 18:07:15 +02:00
v1j4y
7bf52f0e01 Fixed provider for potential energy. #41 2021-10-13 18:02:28 +02:00
v1j4y
dcc5f09724 Fixed provider for local_energy. #41 2021-10-13 17:56:33 +02:00
v1j4y
ca5c332d85 Fixed initialization of det_adj and det_value matrices. #41 2021-10-13 16:55:12 +02:00
v1j4y
578bc43268 Fix tests for det_inv_matrix. #41 2021-10-13 16:44:19 +02:00
v1j4y
befc1a75fa Fix bug in det_inv_matrix dimension. #41 2021-10-13 16:44:00 +02:00
vijay
19b4f93a0b
Merge branch 'master' into wf_det_grad_cof 2021-10-13 16:18:21 +02:00
Aurélien Delval
3cf86817f4
Fix merge issue with qmckl_ao.org 2021-10-13 15:01:23 +02:00
Aurélien Delval
c84deac647
Merge branch 'master' into master 2021-10-13 14:11:07 +02:00
Pablo de Oliveira Castro
9c2d01b33d
Typo in orgmode table 2021-10-13 13:19:35 +02:00
Pablo Oliveira
1859a2b6d7 Fix indentation 2021-10-13 12:03:18 +02:00
Pablo Oliveira
4f2e8b6d8e Update determinant in the SM+WB splitting versions 2021-10-13 11:55:20 +02:00
Pablo Oliveira
9ca88679f9 Update determinant in Woodbury 3x3 2021-10-13 10:51:42 +02:00
Pablo Oliveira
94e9b13963 Update determinant in Woodbury 2x2 and fix tests 2021-10-13 10:45:54 +02:00
Pablo Oliveira
b05390a273 Update determinant in qmckl_sherman_morrison 2021-10-13 10:31:24 +02:00
6afb78429a Added new test 2021-10-13 10:10:09 +02:00
v1j4y
1efd6183d5 Fixed dimensions in tests. #41 2021-10-12 19:41:44 +02:00
v1j4y
713be68c2b Working on tests for determinant. #41 2021-10-12 18:55:34 +02:00
v1j4y
b53b4afeab Fixed bug in size of mo_index list. #41 2021-10-12 13:21:47 +02:00
v1j4y
2cf5366108 removed fermi_num. #41 2021-10-12 13:08:04 +02:00
v1j4y
8f550ab106 removed print. #41 2021-10-12 12:59:17 +02:00
v1j4y
eff9ed7954 Working on tests for determinants.#41 2021-10-12 12:58:53 +02:00
f43a4ebff8 Reading MOs from TREXIO. Modified MOs API 2021-10-12 00:10:01 +02:00
vijay
f13d45f82f
Merge branch 'master' into master 2021-10-11 23:31:51 +02:00
e620e78938 Basis read from trexio 2021-10-11 23:26:12 +02:00
v1j4y
5a875cbd2e Corrected merge. #41 2021-10-11 23:15:11 +02:00
vijay
db7ceaddba
Merge branch 'master' into wf_det_grad_cof 2021-10-11 23:02:09 +02:00
ecfe58a966 Fixed cppcheck in AOs 2021-10-11 22:53:50 +02:00
713008097a Merge branch 'master' into trexio 2021-10-11 22:43:39 +02:00
v1j4y
7c58d89626 Implemented drift vector. #41 2021-10-11 21:40:54 +02:00
v1j4y
edc6e0a4f6 Added doc for the three energies. #41 2021-10-11 18:48:48 +02:00
v1j4y
1be1317210 Added local energy. #41 2021-10-11 18:39:18 +02:00
v1j4y
131e510291 Removed walk_num from MO dims. #41 2021-10-11 18:32:00 +02:00
v1j4y
faba6a0cdc Bug fix for modims. 2021-10-11 18:27:58 +02:00
97e5392f5f Added 1 function in trexio 2021-10-11 18:15:31 +02:00
v1j4y
5e67d1a0a2 Done potential energy. #41 2021-10-11 17:47:19 +02:00
v1j4y
9d542238e3 Finished KE. #41 2021-10-11 17:37:25 +02:00
5989eaac36 Added some functions for TREXIO basis 2021-10-11 17:35:40 +02:00
15d07b89a4 get functions in AO return error code 2021-10-11 17:35:15 +02:00
v1j4y
9722f09221 Add org file. #41 2021-10-11 16:12:14 +02:00
v1j4y
705af0b084 Working on local energy. #41 2021-10-11 16:06:23 +02:00
v1j4y
2b54d2bdf6 Added sign for V_en term. #41 2021-10-11 14:10:13 +02:00
890e2de57d Merge branch 'master' into trexio 2021-10-11 12:14:15 +02:00
0537b35536 Nucleus in trexio 2021-10-11 12:11:22 +02:00
v1j4y
88178c5efa Added electron and nucleus potential. #41 2021-10-11 11:34:42 +02:00
vijay
ccd179397b
Merge branch 'master' into master 2021-10-11 10:07:59 +02:00
v1j4y
2959281a10 Removed qmckl_blas_func header. #41 2021-10-11 10:04:27 +02:00
vijay
883774dba4
Merge branch 'master' into wf_det_grad_cof 2021-10-11 09:56:29 +02:00
Francois Coppens
cd978e31d7 Repeated fixes for the rest of the kernels.
- Context no longer corrupted due to inconsistent interface
- No longer any need for manual explicit trailing underscore in the function names of the C-source to compensate for the unnecessary C-interface in fortran.
- All tests pass.
2021-10-09 22:23:12 +02:00
Francois Coppens
6437591b66 Fixed
- context (and other variables) passing between C-C. Can now passed by value.
- removed unnecessary Fortran C-interface; trailing underscore in C-function no longer necessary
- renamed C-function and Fortran-interface to C-function from qmckl_sherman_morrison_c_/qmckl_sherman_morrison to qmckl_sherman_morrison/qmckl_sherman_morrison
- removed unneccesary artificial pointer variables in qmckl_sherman_morrison and pass them by value.
2021-10-08 18:03:11 +02:00
v1j4y
3668851412 Improved calculation of MOs with one big dgemm. #41 2021-10-08 00:56:00 +02:00
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