1
0
mirror of https://github.com/TREX-CoE/qmckl.git synced 2024-11-03 20:54:09 +01:00
Commit Graph

112 Commits

Author SHA1 Message Date
v1j4y
a41c67b94f Working on qmckl_dgemm. 2021-09-07 16:36:26 +02:00
Aurelien Delval
5e18523274 Properly comment qmckl_probes
Add comment to explicit the use of qmckl_probes and provide a link to
Verificarlo's documentation
2021-08-26 09:50:05 +00:00
Aurelien Delval
26ca2d3907 Modify behaviour of QMCkl probes when VFC_CI is disabled
Now, probes witth absolute check and relative checks perform the
verification with the expected/actual value as expected and returns a
boolean to indicate the result.
2021-08-20 15:11:28 +00:00
PurplePachyderm
f59a6385ee Correctly wrap qmckl_dump_probes in preprocessor guard 2021-08-19 12:47:50 +02:00
vijay
3f4ace0425
Merge branch 'master' into sherman-morrison-woodbury 2021-07-23 15:08:31 +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
Pablo de Oliveira Castro
e5806e676b
Make sure qmckl.h can be imported from C++ (#26)
When qmckl.h is included in a C++ file wrap the definitions in
an extern "C" block to avoid mangling.
2021-07-23 09:02:25 +02:00
vijay gopal chilkuri
dce8cad154 Modified autogen functions to incorporate unsigned. #25 2021-07-19 18:24:19 +02:00
75a93d12c6 Added AO polynomials 2021-07-12 15:04:21 +02:00
vijay gopal chilkuri
0df816c0ba Finished ee_deriv_e. #20 2021-07-06 12:57:14 +05:30
vijay gopal chilkuri
ad824d0f71 Renamed test file to n2 and fixed a few bugs. #162 2021-07-05 14:37:09 +05:30
vijay gopal chilkuri
25b30382dc Modified library function. #20 2021-06-23 15:08:38 +05:30
6b2c188475 Computation of shells 2021-06-22 23:33:09 +02:00
eb09d47bc0 Fixing Actions 2021-06-03 01:50:51 +02:00
36293d892e Clean configure 2021-06-03 01:32:50 +02:00
vijay gopal chilkuri
9479ec51ff Fixed typo in qmckl.org and added a rule to use Python3 in init.el. #15 2021-05-25 13:07:24 +05:30
60875bf3fa Fix dist 2021-05-12 23:18:22 +02:00
0ae0f68d01 Python script to build makefiles 2021-05-12 23:16:09 +02:00
b437cb5ce9 Fix CI 2021-05-12 02:41:29 +02:00
d22ab667fd Fix CI 2021-05-12 02:33:47 +02:00
95b9d77e84 Workflows 2021-05-12 02:16:45 +02:00
5c40916bf3 Fixed module depend 2021-05-12 01:51:26 +02:00
4adcfa1df4 Complete build OK 2021-05-12 00:22:51 +02:00
0ee57d06e0 Working on documentation 2021-05-11 17:03:13 +02:00
ee9e3c5b55 Removed need for munit 2021-05-11 16:47:22 +02:00
d4711206f0 Introduced qmckl.h in org files 2021-05-11 13:57:23 +02:00
a4e49f4939 Added tests 2021-05-11 12:56:41 +02:00
90474fee2d parallel tangle OK 2021-05-11 12:34:12 +02:00
c61556ef77 Working on automake 2021-05-11 11:45:49 +02:00
18ef3a02b8 Automake working 2021-05-10 23:56:26 +02:00
8b9b671c84 Improve build system 2021-05-10 10:05:50 +02:00
66d606ff1e -DHAVE_CONFIG_H 2021-05-09 02:12:38 +02:00
e2ee986032 Added VPATH 2021-05-09 01:27:07 +02:00
2bb844dd59 Added configure scripts 2021-05-07 12:47:56 +02:00
0dffa4ce4c Cleaned Makefile 2021-05-04 17:10:20 +02:00
c2d02f755b Added DESTDIR in Makefile 2021-04-30 01:55:50 +02:00
58f4113a99 Added missing css file 2021-04-30 01:34:10 +02:00
e2e46d0714 Moved documentation in share/doc 2021-04-30 01:26:19 +02:00
56ba68b7f8 Fixed text in org file 2021-04-21 13:26:11 +02:00
8882b4b3d4 Fix htmlize 2021-04-21 13:17:33 +02:00
399a632bdd Add doc in dist, and text doc 2021-04-21 12:44:03 +02:00
e18655b147 Added qmckl_electron 2021-04-21 01:56:47 +02:00
3618cde7b1 Cleaned Makefiles 2021-04-20 18:33:36 +02:00
5c285dcdb6 Fixed distances 2021-04-17 12:35:52 +02:00
33f33fcdf3 Auto-generate interfaces 2021-04-16 01:09:41 +02:00
ff8330f8f9 Include lib.org 2021-04-09 11:26:04 +02:00
fac7e9d74f Easier context 2021-03-30 14:51:23 +02:00
271c4cfe84 Nicer bash script 2021-03-23 22:23:49 +01:00
27b9fdab22 Fixed Makefile 2021-03-20 16:58:48 +01:00
be44127dba Included auto-generation of Fortran in distances 2021-03-20 16:56:22 +01:00
87ad36e342 Fixing CI 2021-03-19 13:47:50 +01:00
1af0bf053f Memory checking 2021-03-18 18:02:34 +01:00
4bf71426e4 Rewrote context 2021-03-10 12:58:38 +01:00
342c337677 Separated org-mode files 2021-03-09 01:16:23 +01:00
479a068199 testing workflow 2021-03-06 19:56:36 +01:00
09a862aa2b Fixed website 2021-03-06 19:49:55 +01:00
dca597a3ab Fixed doc creation 2021-03-06 19:46:27 +01:00
0f15844bf3 Fixing doc generation 2021-03-06 19:40:01 +01:00
f03cff153e Fixed makefile 2021-03-06 18:19:13 +01:00
d7a922b24e Added rename script 2021-03-06 14:47:11 +01:00
fd4a50ddee Update README.org 2021-03-06 14:14:48 +01:00