1
0
mirror of https://github.com/TREX-CoE/qmckl.git synced 2024-12-22 20:36:01 +01:00

Merge branch 'master' into wf_det_grad_cof

This commit is contained in:
vijay 2021-10-14 17:20:23 +02:00 committed by GitHub
commit 07033b9b55
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
28 changed files with 69881 additions and 548 deletions

View File

@ -18,9 +18,11 @@ jobs:
run: sudo apt-get install emacs autoconf libhdf5-dev
- name: Install trexio
run: |
wget https://github.com/TREX-CoE/trexio/releases/download/v1.0/trexio-1.0.0.tar.gz
tar -zxf trexio-1.0.0.tar.gz
cd trexio-1.0.0
# TODO: Update the following link when v1.1 will be released
export VERSION=1.1.0
wget https://github.com/TREX-CoE/trexio/releases/download/v${VERSION}/trexio-${VERSION}.tar.gz
tar -zxf trexio-${VERSION}.tar.gz
cd trexio-${VERSION}
./configure --prefix=/usr
make -j 8
sudo make install
@ -34,6 +36,7 @@ jobs:
make -j check
ldd tests/test_qmckl_ao
- name: Archive test log file
if: failure()
uses: actions/upload-artifact@v2
with:
name: test-report
@ -41,6 +44,13 @@ jobs:
- name: Dist test
run: |
make distcheck
- name: Archive test log file
if: failure()
uses: actions/upload-artifact@v2
with:
name: dist-report
path: test-suite.log
# x86_macos:
#

View File

@ -59,10 +59,13 @@ header_tests = tests/chbrclf.h tests/n2.h
qmckl_probes_src = src/qmckl_probes.h src/qmckl_probes.c src/qmckl_probes_f.f90
fortrandir = $(datadir)/$(PACKAGE_NAME)/fortran/
fortrandir = $(datadir)/qmckl/fortran/
dist_fortran_DATA = $(qmckl_f)
AM_CPPFLAGS = -I$(srcdir)/src -I$(srcdir)/include
AM_CPPFLAGS += -DQMCKL_TEST_DIR="\"$(abs_srcdir)/share/qmckl/test_data/\""
lib_LTLIBRARIES = src/libqmckl.la
src_libqmckl_la_SOURCES = $(qmckl_h) $(src_qmckl_f) $(C_FILES) $(F_FILES) $(H_PRIVATE_FUNC_FILES) $(H_PRIVATE_TYPE_FILES) $(header_tests) $(qmckl_probes_src)
@ -71,7 +74,7 @@ export qmckl_f qmckl_h srcdir
CLEANFILES+=$(test_qmckl_f) $(src_qmckl_f) $(test_qmckl_o) $(src_qmckl_o)
htmlize_el=share/doc/qmckl/html/htmlize.el
htmlize_el=$(srcdir)/share/doc/qmckl/html/htmlize.el
include generated.mk
@ -126,17 +129,17 @@ BUILT_SOURCES = $(C_FILES) $(F_FILES) $(FH_FUNC_FILES) $(FH_TYPE_FILES) $(H_FUNC
CLEANFILES += $(BUILT_SOURCES) $(C_TEST_FILES) $(F_TEST_FILES) $(TANGLED_FILES) $(C_TEST_FILES) $(F_TEST_FILES) $(qmckl_f) $(qmckl_h) $(HTML_FILES) $(TEXT_FILES) share/doc/qmckl/html/index.html $(EXPORTED_FILES) $(header_tests)
EXTRA_DIST += \
tools/build_doc.sh \
tools/build_makefile.py \
tools/build_qmckl_f.sh \
tools/build_qmckl_h.sh \
tools/config_doc.el \
tools/config_tangle.el \
tools/init.el \
tools/install_htmlize.sh \
tools/lib.org \
tools/tangle.sh \
tools/theme.setup
$(srcdir)/tools/build_doc.sh \
$(srcdir)/tools/build_makefile.py \
$(srcdir)/tools/build_qmckl_f.sh \
$(srcdir)/tools/build_qmckl_h.sh \
$(srcdir)/tools/config_doc.el \
$(srcdir)/tools/config_tangle.el \
$(srcdir)/tools/init.el \
$(srcdir)/tools/install_htmlize.sh \
$(srcdir)/tools/lib.org \
$(srcdir)/tools/tangle.sh \
$(srcdir)/tools/theme.setup
## Silent

View File

@ -46,6 +46,23 @@ sudo make install
sudo make installcheck
```
## Verificarlo CI
Since Verificarlo should not be a dependency of QMCkl, all Verificarlo
functions are called only when the support is explicitely enabled (and ignored
by the preprocessor otherwise). To enable vfc_ci support, the library should be
configured with the following command :
```
QMCKL_DEVEL=1 ./configure --prefix=$PWD/_install \ --enable-silent-rules --enable-maintainer-mode --enable-vfc_ci --host=x86_64 \ CC="verificarlo-f" FC="verificarlo-f"
```
where CC and FC are set to verificarlo-f, and support is explicitely enabled
with the --enable-vfc_ci flag. Configuring the library with the "standard"
command will cause all calls to Verificarlo related functions to be ignored,
and the library will be built as usual.
------------------------------
![European flag](https://trex-coe.eu/sites/default/files/inline-images/euflag.jpg)

View File

@ -1,48 +0,0 @@
#+STARTUP: showeverything
* Set up CI on Travis
* Write tests
* malloc/free : Parameters for accelerators?
We should define qmckl_malloc and qmckl_free just to give the
possibility of the HPC implementations to define how they allocate the
memory (on CPU or GPU, using alternatives to malloc/free, etc).
A possibility could be to pass the id of a NUMA domain as a parameter of
qmckl_malloc, where the domain id is something obtained from the
context.
* TRANSA, TRANSB
* Performance info
* Benchmark interpolation of basis functions
* Complex numbers
* Adjustable number for derivatives (1,2,3)
* Put pictures
* Make the Makefile part of the documented code ?
* Put the data-flow graph in the code.
* Verificarlo TODO
These are installation instructions for
verificarlo which needs to be moved to
an appropriate place at some point.
** Compilation and Testing
The following steps were required to get
the verificarlo version up and running on
an Ubuntu 20.04 laptop.
1. Compilers
a. clang - For e.g. clang-7
b. flang - For e.g. flang-7 : Care needs to be taken
that the flang version
is compatible with the
clang version used.
There are known issues
with using oneAPI due
to flang being incompatible
with oneAPI supplied clang.
c. gcc - For e.g. gcc-7
2. Environment varibales
a. VFC_BACKENDS - For e.g. `VFC_BACKENDS="libinterflop_ieee.so"`

View File

@ -49,9 +49,9 @@ AC_CONFIG_MACRO_DIR([m4])
VERSION_MAJOR=`echo ${PACKAGE_VERSION} | cut -d. -f1`
VERSION_MINOR=`echo ${PACKAGE_VERSION} | cut -d. -f2`
VERSION_PATCH=`echo ${PACKAGE_VERSION} | cut -d. -f3 | cut -d- -f1`
AC_DEFINE_UNQUOTED(QMCKL_VERSION_MAJOR, [$VERSION_MAJOR], [major version])
AC_DEFINE_UNQUOTED(QMCKL_VERSION_MINOR, [$VERSION_MINOR], [minor version])
AC_DEFINE_UNQUOTED(QMCKL_VERSION_PATCH, [$VERSION_PATCH], [patch version])
AC_DEFINE_UNQUOTED([QMCKL_VERSION_MAJOR], [$VERSION_MAJOR], [major version])
AC_DEFINE_UNQUOTED([QMCKL_VERSION_MINOR], [$VERSION_MINOR], [minor version])
AC_DEFINE_UNQUOTED([QMCKL_VERSION_PATCH], [$VERSION_PATCH], [patch version])
AC_SUBST([VERSION_MAJOR])
AC_SUBST([VERSION_MINOR])
AC_SUBST([VERSION_PATCH])
@ -92,12 +92,30 @@ AC_CHECK_LIB([pthread], [pthread_create])
# OpenMP
#AC_ARG_WITH(openmp, [AC_HELP_STRING([--with-openmp],[enable OpenMP])], with_omp=$withval, with_omp=no)
#if test "x$with_omp" = xyes; then
# AC_DEFINE([USE_OPENMP], [1], [Define to use OpenMP threading.])
# AC_DEFINE([HAVE_OPENMP], [1], [Define to use OpenMP threading.])
# AX_OPENMP([],
# [AC_MSG_ERROR([Could not find OpenMP flags; configure with --without-openmp])])
# CFLAGS="${CFLAGS} ${OPENMP_CFLAGS}"
#fi
# TREXIO
AC_ARG_WITH(trexio, [AC_HELP_STRING([--without-trexio],[disable support for TREXIO])],
with_trexio=$withval, with_trexio=yes)
AS_IF([test "x$with_trexio" != xno], [
AC_DEFINE([HAVE_TREXIO], [1], [Define if your have libtrexio])
ARGS="${ARGS} trexio"
AC_CHECK_LIB([trexio], [trexio_open],
[],
[AS_IF([test "x$with_trexio" != xcheck],
[PKG_CHECK_MODULES([TREXIO], [trexio]) ])
])
])
PKG_CFLAGS="$PKG_CFLAGS $TREXIO_CFLAGS"
PKG_LIBS="$PKG_LIBS $TREXIO_LIBS"
## BLAS
#AX_BLAS([], [AC_MSG_ERROR([BLAS was not found.])])
@ -222,8 +240,9 @@ fi
#PKG-CONFIG
#mkl-dynamic-lp64-seq
LIBS="${LAPACK_LIBS} ${BLAS_LIBS} ${LIBS}"
PKG_LIBS="${PKG_LIBS} ${LIBS}"
PKG_LIBS="$PKG_LIBS $LIBS"
LIBS="$LAPACK_LIBS $BLAS_LIBS $PKG_LIBS"
CFLAGS="$CFLAGS $PKG_CFLAGS"
AC_SUBST([PKG_LIBS])
AC_SUBST([PKG_CFLAGS])
AC_SUBST([HAS_CPPCHECK])

View File

@ -1,153 +0,0 @@
/* include/config.h.in. Generated from configure.ac by autoheader. */
/* Define to turn on debugging checks */
#undef DEBUG
/* Define when using the profiler tool */
#undef ENABLE_PROF
/* Define to 1 if your Fortran compiler doesn't accept -c and -o together. */
#undef FC_NO_MINUS_C_MINUS_O
/* Define to 1 if you have the <assert.h> header file. */
#undef HAVE_ASSERT_H
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define to 1 if you have the <errno.h> header file. */
#undef HAVE_ERRNO_H
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the `efence' library (-lefence). */
#undef HAVE_LIBEFENCE
/* Define to 1 if you have the `m' library (-lm). */
#undef HAVE_LIBM
/* Define to 1 if you have the `pthread' library (-lpthread). */
#undef HAVE_LIBPTHREAD
/* Define to 1 if you have the <malloc.h> header file. */
#undef HAVE_MALLOC_H
/* Define to 1 if you have the <math.h> header file. */
#undef HAVE_MATH_H
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the `memset' function. */
#undef HAVE_MEMSET
/* Define to 1 if you have the <pthread.h> header file. */
#undef HAVE_PTHREAD_H
/* Define to 1 if you have the <stdbool.h> header file. */
#undef HAVE_STDBOOL_H
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdio.h> header file. */
#undef HAVE_STDIO_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the `strerror' function. */
#undef HAVE_STRERROR
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to 1 if the system has the type `_Bool'. */
#undef HAVE__BOOL
/* Define to the sub-directory where libtool stores uninstalled libraries. */
#undef LT_OBJDIR
/* Define to use debugging malloc/free */
#undef MALLOC_TRACE
/* Define to 1 if your C compiler doesn't accept -c and -o together. */
#undef NO_MINUS_C_MINUS_O
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the home page for this package. */
#undef PACKAGE_URL
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* major version */
#undef QMCKL_VERSION_MAJOR
/* minor version */
#undef QMCKL_VERSION_MINOR
/* patch version */
#undef QMCKL_VERSION_PATCH
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Version number of package */
#undef VERSION
/* Define for Solaris 2.5.1 so the uint32_t typedef from <sys/synch.h>,
<pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
#define below would cause a syntax error. */
#undef _UINT32_T
/* Define for Solaris 2.5.1 so the uint64_t typedef from <sys/synch.h>,
<pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
#define below would cause a syntax error. */
#undef _UINT64_T
/* Define to the type of a signed integer type of width exactly 32 bits if
such a type exists and the standard includes do not define it. */
#undef int32_t
/* Define to the type of a signed integer type of width exactly 64 bits if
such a type exists and the standard includes do not define it. */
#undef int64_t
/* Define to `unsigned int' if <sys/types.h> does not define. */
#undef size_t
/* Define to the type of an unsigned integer type of width exactly 32 bits if
such a type exists and the standard includes do not define it. */
#undef uint32_t
/* Define to the type of an unsigned integer type of width exactly 64 bits if
such a type exists and the standard includes do not define it. */
#undef uint64_t

File diff suppressed because it is too large Load Diff

View File

@ -78,10 +78,10 @@ int main() {
The following arrays are stored in the context:
|---------------+--------------------+------------------------------------|
| ~type~ | | Gaussian (~'G'~) or Slater (~'S'~) |
|---------------+--------------------+----------------------|
| ~mo_num~ | | Number of MOs |
| ~coefficient~ | ~[mo_num, ao_num]~ | Orbital coefficients |
| ~coefficient~ | ~[mo_num][ao_num]~ | Orbital coefficients |
Computed data:
@ -103,7 +103,6 @@ typedef struct qmckl_mo_basis_struct {
int32_t uninitialized;
bool provided;
char type;
} qmckl_mo_basis_struct;
#+end_src
@ -116,10 +115,96 @@ typedef struct qmckl_mo_basis_struct {
** Access functions
#+begin_src c :comments org :tangle (eval h_private_func) :exports none
char qmckl_get_mo_basis_type (const qmckl_context context);
int64_t qmckl_get_mo_basis_mo_num (const qmckl_context context);
double* qmckl_get_mo_basis_coefficient (const qmckl_context context);
#+begin_src c :comments org :tangle (eval h_func) :exports none
qmckl_exit_code
qmckl_get_mo_basis_mo_num (const qmckl_context context,
int64_t* mo_num);
#+end_src
#+begin_src c :comments org :tangle (eval c) :noweb yes :exports none
qmckl_exit_code
qmckl_get_mo_basis_mo_num (const qmckl_context context,
int64_t* mo_num)
{
if (qmckl_context_check(context) == QMCKL_NULL_CONTEXT) {
return qmckl_failwith( context,
QMCKL_INVALID_CONTEXT,
"qmckl_get_mo_basis_mo_num",
NULL);
return (int64_t) 0;
}
qmckl_context_struct* const ctx = (qmckl_context_struct* const) context;
assert (ctx != NULL);
int32_t mask = 1;
if ( (ctx->mo_basis.uninitialized & mask) != 0) {
return qmckl_failwith( context,
QMCKL_NOT_PROVIDED,
"qmckl_get_mo_basis_mo_num",
NULL);
}
assert (ctx->mo_basis.mo_num > (int64_t) 0);
,*mo_num = ctx->mo_basis.mo_num;
return QMCKL_SUCCESS;
}
#+end_src
#+begin_src c :comments org :tangle (eval h_func) :exports none
qmckl_exit_code
qmckl_get_mo_basis_coefficient (const qmckl_context context,
double* const coefficient,
const int64_t size_max);
#+end_src
#+begin_src c :comments org :tangle (eval c) :exports none
qmckl_exit_code
qmckl_get_mo_basis_coefficient (const qmckl_context context,
double* const coefficient,
const int64_t size_max)
{
if (qmckl_context_check(context) == QMCKL_NULL_CONTEXT) {
return qmckl_failwith( context,
QMCKL_INVALID_CONTEXT,
"qmckl_get_mo_basis_coefficient",
NULL);
}
qmckl_context_struct* const ctx = (qmckl_context_struct* const) context;
assert (ctx != NULL);
int32_t mask = 1 << 1;
if ( (ctx->ao_basis.uninitialized & mask) != 0) {
return qmckl_failwith( context,
QMCKL_NOT_PROVIDED,
"qmckl_get_mo_basis_coefficient",
NULL);
}
if (coefficient == NULL) {
return qmckl_failwith( context,
QMCKL_INVALID_ARG_2,
"qmckl_get_mo_basis_coefficient",
"NULL pointer");
}
if (size_max < ctx->ao_basis.ao_num * ctx->mo_basis.mo_num) {
return qmckl_failwith( context,
QMCKL_INVALID_ARG_3,
"qmckl_get_mo_basis_coefficient",
"Array too small. Expected mo_num * ao_num");
}
assert (ctx->mo_basis.coefficient != NULL);
memcpy(coefficient, ctx->mo_basis.coefficient,
ctx->ao_basis.ao_num * ctx->mo_basis.mo_num * sizeof(int64_t));
return QMCKL_SUCCESS;
}
#+end_src
When all the data for the AOs have been provided, the following
@ -129,52 +214,7 @@ double* qmckl_get_mo_basis_coefficient (const qmckl_context context);
bool qmckl_mo_basis_provided (const qmckl_context context);
#+end_src
#+NAME:post
#+begin_src c :exports none
if ( (ctx->mo_basis.uninitialized & mask) != 0) {
return NULL;
}
#+end_src
#+begin_src c :comments org :tangle (eval c) :noweb yes :exports none
char qmckl_get_mo_basis_type (const qmckl_context context) {
if (qmckl_context_check(context) == QMCKL_NULL_CONTEXT) {
return (char) 0;
}
qmckl_context_struct* const ctx = (qmckl_context_struct* const) context;
assert (ctx != NULL);
int32_t mask = 1;
if ( (ctx->mo_basis.uninitialized & mask) != 0) {
return (char) 0;
}
assert (ctx->mo_basis.type != (char) 0);
return ctx->mo_basis.type;
}
int64_t qmckl_get_mo_basis_mo_num (const qmckl_context context) {
if (qmckl_context_check(context) == QMCKL_NULL_CONTEXT) {
return (int64_t) 0;
}
qmckl_context_struct* const ctx = (qmckl_context_struct* const) context;
assert (ctx != NULL);
int32_t mask = 1 << 1;
if ( (ctx->mo_basis.uninitialized & mask) != 0) {
return (int64_t) 0;
}
assert (ctx->mo_basis.mo_num > (int64_t) 0);
return ctx->mo_basis.mo_num;
}
#+begin_src c :comments org :tangle (eval c) :exports none
bool qmckl_mo_basis_provided(const qmckl_context context) {
if (qmckl_context_check(context) == QMCKL_NULL_CONTEXT) {
@ -196,12 +236,11 @@ bool qmckl_mo_basis_provided(const qmckl_context context) {
called.
#+begin_src c :comments org :tangle (eval h_func)
qmckl_exit_code qmckl_set_mo_basis_type (qmckl_context context, const char t);
qmckl_exit_code qmckl_set_mo_basis_mo_num (qmckl_context context, const int64_t mo_num);
qmckl_exit_code qmckl_set_mo_basis_coefficient (qmckl_context context, const double * coefficient);
#+end_src
#+NAME:pre2
#+NAME:pre
#+begin_src c :exports none
if (qmckl_context_check(context) == QMCKL_NULL_CONTEXT) {
return QMCKL_NULL_CONTEXT;
@ -210,7 +249,7 @@ if (qmckl_context_check(context) == QMCKL_NULL_CONTEXT) {
qmckl_context_struct* const ctx = (qmckl_context_struct* const) context;
#+end_src
#+NAME:post2
#+NAME:post
#+begin_src c :exports none
ctx->mo_basis.uninitialized &= ~mask;
ctx->mo_basis.provided = (ctx->mo_basis.uninitialized == 0);
@ -223,24 +262,8 @@ return QMCKL_SUCCESS;
#+end_src
#+begin_src c :comments org :tangle (eval c) :noweb yes :exports none
qmckl_exit_code qmckl_set_mo_basis_type(qmckl_context context, const char t) {
<<pre2>>
if (t != 'G' && t != 'S') {
return qmckl_failwith( context,
QMCKL_INVALID_ARG_2,
"qmckl_set_mo_basis_type",
NULL);
}
int32_t mask = 1;
ctx->mo_basis.type = t;
<<post2>>
}
qmckl_exit_code qmckl_set_mo_basis_mo_num(qmckl_context context, const int64_t mo_num) {
<<pre2>>
<<pre>>
if (mo_num <= 0) {
return qmckl_failwith( context,
@ -249,16 +272,16 @@ qmckl_exit_code qmckl_set_mo_basis_mo_num(qmckl_context context, const int64_t m
"mo_num <= 0");
}
int32_t mask = 1 << 1;
int32_t mask = 1 ;
ctx->mo_basis.mo_num = mo_num;
<<post2>>
<<post>>
}
qmckl_exit_code qmckl_set_mo_basis_coefficient(qmckl_context context, const double* coefficient) {
<<pre2>>
<<pre>>
int32_t mask = 1 << 2;
int32_t mask = 1 << 1;
if (ctx->mo_basis.coefficient != NULL) {
qmckl_exit_code rc = qmckl_free(context, ctx->mo_basis.coefficient);
@ -283,7 +306,7 @@ qmckl_exit_code qmckl_set_mo_basis_coefficient(qmckl_context context, const dou
ctx->mo_basis.coefficient = new_array;
<<post2>>
<<post>>
}
#+end_src
@ -398,20 +421,13 @@ qmckl_exit_code qmckl_provide_mo_vgl(qmckl_context context)
}
qmckl_exit_code rc;
if (ctx->mo_basis.type == 'G') {
rc = qmckl_compute_mo_basis_gaussian_vgl(context,
rc = qmckl_compute_mo_basis_vgl(context,
ctx->ao_basis.ao_num,
ctx->mo_basis.mo_num,
ctx->electron.num,
ctx->mo_basis.coefficient,
ctx->ao_basis.ao_vgl,
ctx->mo_basis.mo_vgl);
} else {
return qmckl_failwith( context,
QMCKL_FAILURE,
"compute_mo_basis_vgl",
"Not yet implemented");
}
if (rc != QMCKL_SUCCESS) {
return rc;
}
@ -425,7 +441,7 @@ qmckl_exit_code qmckl_provide_mo_vgl(qmckl_context context)
*** Compute
:PROPERTIES:
:Name: qmckl_compute_mo_basis_gaussian_vgl
:Name: qmckl_compute_mo_basis_vgl
:CRetType: qmckl_exit_code
:FRetType: qmckl_exit_code
:END:
@ -441,7 +457,7 @@ qmckl_exit_code qmckl_provide_mo_vgl(qmckl_context context)
#+begin_src f90 :comments org :tangle (eval f) :noweb yes
integer function qmckl_compute_mo_basis_gaussian_vgl_f(context, &
integer function qmckl_compute_mo_basis_vgl_f(context, &
ao_num, mo_num, elec_num, &
coef_normalized, ao_vgl, mo_vgl) &
result(info)
@ -501,13 +517,14 @@ integer function qmckl_compute_mo_basis_gaussian_vgl_f(context, &
deallocate(ao_vgl_big)
end function qmckl_compute_mo_basis_gaussian_vgl_f
#+end_src
#+CALL: generate_c_header(table=qmckl_mo_basis_gaussian_vgl_args,rettyp=get_value("CRetType"),fname="qmckl_compute_mo_basis_gaussian_vgl"))
#+CALL: generate_c_header(table=qmckl_mo_basis_gaussian_vgl_args,rettyp=get_value("CRetType"),fname="qmckl_compute_mo_basis_vgl"))
#+RESULTS:
#+begin_src c :tangle (eval h_func) :comments org
qmckl_exit_code qmckl_compute_mo_basis_gaussian_vgl (
qmckl_exit_code qmckl_compute_mo_basis_vgl (
const qmckl_context context,
const int64_t ao_num,
const int64_t mo_num,
@ -518,11 +535,11 @@ end function qmckl_compute_mo_basis_gaussian_vgl_f
#+end_src
#+CALL: generate_c_interface(table=qmckl_mo_basis_gaussian_vgl_args,rettyp=get_value("CRetType"),fname="qmckl_compute_mo_basis_gaussian_vgl"))
#+CALL: generate_c_interface(table=qmckl_mo_basis_gaussian_vgl_args,rettyp=get_value("CRetType"),fname="qmckl_compute_mo_basis_vgl"))
#+RESULTS:
#+begin_src f90 :tangle (eval f) :comments org :exports none
integer(c_int32_t) function qmckl_compute_mo_basis_gaussian_vgl &
integer(c_int32_t) function qmckl_compute_mo_basis_vgl &
(context, ao_num, mo_num, elec_num, coef_normalized, ao_vgl, mo_vgl) &
bind(C) result(info)
@ -538,15 +555,13 @@ end function qmckl_compute_mo_basis_gaussian_vgl_f
real (c_double ) , intent(in) :: ao_vgl(ao_num,elec_num,5)
real (c_double ) , intent(out) :: mo_vgl(mo_num,elec_num,5)
integer(c_int32_t), external :: qmckl_compute_mo_basis_gaussian_vgl_f
info = qmckl_compute_mo_basis_gaussian_vgl_f &
integer(c_int32_t), external :: qmckl_compute_mo_basis_vgl_f
info = qmckl_compute_mo_basis_vgl_f &
(context, ao_num, mo_num, elec_num, coef_normalized, ao_vgl, mo_vgl)
end function qmckl_compute_mo_basis_gaussian_vgl
end function qmckl_compute_mo_basis_vgl
#+end_src
*** Test
#+begin_src python :results output :exports none
@ -724,9 +739,6 @@ rc = qmckl_get_ao_vgl(context, &(ao_vgl[0][0][0][0]));
assert (rc == QMCKL_SUCCESS);
/* Set up MO data */
rc = qmckl_set_mo_basis_type(context, typ);
assert (rc == QMCKL_SUCCESS);
const int64_t mo_num = chbrclf_mo_num;
rc = qmckl_set_mo_basis_mo_num(context, mo_num);
assert (rc == QMCKL_SUCCESS);

View File

@ -60058,8 +60058,8 @@ double chbrclf_elec_coord[chbrclf_walk_num][chbrclf_elec_num][3] = { {
#+BEGIN_example
2
N2
N 0.000000 0.000000 0.000000
N 0.000000 0.000000 2.059801
N 0.000000 0.000000 0.00
N 0.000000 0.000000 1.09
#+END_example
Nuclear coordinates are stored in atomic units in transposed format.

1101
org/qmckl_trexio.org Normal file

File diff suppressed because it is too large Load Diff

View File

@ -15,3 +15,4 @@ qmckl_nucleus.org
qmckl_sherman_morrison_woodbury.org
qmckl_tests.org
qmckl_utils.org
qmckl_trexio.org

View File

View File

@ -0,0 +1,70 @@
rank_ao_shell 1
dims_ao_shell 0 30
rank_ao_normalization 1
dims_ao_normalization 0 30
ao_cartesian_isSet 1
ao_cartesian 1
ao_num_isSet 1
ao_num 30
ao_shell
0
1
2
3
3
3
4
4
4
5
5
5
5
5
5
6
7
8
9
9
9
10
10
10
11
11
11
11
11
11
ao_normalization
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000002e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688772e+00
1.7320508075688767e+00
9.9999999999999978e-01
1.7320508075688772e+00
9.9999999999999978e-01
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000002e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688776e+00
1.7320508075688772e+00
1.0000000000000000e+00
1.7320508075688776e+00
1.0000000000000000e+00

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,236 @@
rank_basis_nucleus_index 1
dims_basis_nucleus_index 0 2
rank_basis_nucleus_shell_num 1
dims_basis_nucleus_shell_num 0 2
rank_basis_shell_ang_mom 1
dims_basis_shell_ang_mom 0 12
rank_basis_shell_prim_num 1
dims_basis_shell_prim_num 0 12
rank_basis_shell_factor 1
dims_basis_shell_factor 0 12
rank_basis_shell_prim_index 1
dims_basis_shell_prim_index 0 12
rank_basis_exponent 1
dims_basis_exponent 0 50
rank_basis_coefficient 1
dims_basis_coefficient 0 50
rank_basis_prim_factor 1
dims_basis_prim_factor 0 50
basis_num_isSet 1
basis_num 12
basis_prim_num_isSet 1
basis_prim_num 50
len_basis_type 9
basis_type
Gaussian
basis_nucleus_index
0
6
basis_nucleus_shell_num
6
6
basis_shell_ang_mom
0
0
0
1
1
2
0
0
0
1
1
2
basis_shell_prim_num
9
9
1
4
1
1
9
9
1
4
1
1
basis_shell_factor
9.9999971897081508e-01
9.9999963111699008e-01
1.0000000000000000e+00
1.0000002163655846e+00
1.0000000000000000e+00
1.0000000000000002e+00
9.9999971897081508e-01
9.9999963111699008e-01
1.0000000000000000e+00
1.0000002163655846e+00
1.0000000000000000e+00
1.0000000000000002e+00
basis_shell_prim_index
0
9
18
19
23
24
25
34
43
44
48
49
basis_exponent
2.9400000000000000e+03
4.4119999999999999e+02
1.0050000000000000e+02
2.8430000000000000e+01
9.1690000000000005e+00
3.1960000000000002e+00
1.1590000000000000e+00
1.8110000000000001e-01
5.8900000000000001e-02
2.9400000000000000e+03
4.4119999999999999e+02
1.0050000000000000e+02
2.8430000000000000e+01
9.1690000000000005e+00
3.1960000000000002e+00
1.1590000000000000e+00
1.8110000000000001e-01
5.8900000000000001e-02
5.8900000000000001e-02
3.6190000000000002e+00
7.1099999999999997e-01
1.9510000000000000e-01
6.0179999999999997e-02
6.0179999999999997e-02
2.3540000000000000e-01
2.9400000000000000e+03
4.4119999999999999e+02
1.0050000000000000e+02
2.8430000000000000e+01
9.1690000000000005e+00
3.1960000000000002e+00
1.1590000000000000e+00
1.8110000000000001e-01
5.8900000000000001e-02
2.9400000000000000e+03
4.4119999999999999e+02
1.0050000000000000e+02
2.8430000000000000e+01
9.1690000000000005e+00
3.1960000000000002e+00
1.1590000000000000e+00
1.8110000000000001e-01
5.8900000000000001e-02
5.8900000000000001e-02
3.6190000000000002e+00
7.1099999999999997e-01
1.9510000000000000e-01
6.0179999999999997e-02
6.0179999999999997e-02
2.3540000000000000e-01
basis_coefficient
6.8000000000000005e-04
5.2360000000000002e-03
2.6606000000000001e-02
9.9992999999999999e-02
2.6970200000000000e-01
4.5146900000000001e-01
2.9507400000000000e-01
1.2586999999999999e-02
-3.7559999999999998e-03
-1.2300000000000001e-04
-9.6599999999999995e-04
-4.8310000000000002e-03
-1.9314000000000001e-02
-5.3280000000000001e-02
-1.2072300000000000e-01
-1.3343500000000000e-01
5.3076699999999999e-01
5.8011699999999999e-01
1.0000000000000000e+00
2.9111000000000001e-02
1.6936499999999999e-01
5.1345799999999997e-01
4.7933799999999999e-01
1.0000000000000000e+00
1.0000000000000000e+00
6.8000000000000005e-04
5.2360000000000002e-03
2.6606000000000001e-02
9.9992999999999999e-02
2.6970200000000000e-01
4.5146900000000001e-01
2.9507400000000000e-01
1.2586999999999999e-02
-3.7559999999999998e-03
-1.2300000000000001e-04
-9.6599999999999995e-04
-4.8310000000000002e-03
-1.9314000000000001e-02
-5.3280000000000001e-02
-1.2072300000000000e-01
-1.3343500000000000e-01
5.3076699999999999e-01
5.8011699999999999e-01
1.0000000000000000e+00
2.9111000000000001e-02
1.6936499999999999e-01
5.1345799999999997e-01
4.7933799999999999e-01
1.0000000000000000e+00
1.0000000000000000e+00
basis_prim_factor
2.8455786257606746e+02
6.8609889528700521e+01
2.2622189630797177e+01
8.7749113372175405e+00
3.7553599626065184e+00
1.7035903455455901e+00
7.9610924849766440e-01
1.9785586566953522e-01
8.5211176837619682e-02
2.8455786257606746e+02
6.8609889528700521e+01
2.2622189630797177e+01
8.7749113372175405e+00
3.7553599626065184e+00
1.7035903455455901e+00
7.9610924849766440e-01
1.9785586566953522e-01
8.5211176837619682e-02
8.5211176837619682e-02
7.1150149470514927e+00
9.3063008649662049e-01
1.8482540845270204e-01
4.2486926670212505e-02
4.2486926670212505e-02
1.3093952423233909e-01
2.8455786257606746e+02
6.8609889528700521e+01
2.2622189630797177e+01
8.7749113372175405e+00
3.7553599626065184e+00
1.7035903455455901e+00
7.9610924849766440e-01
1.9785586566953522e-01
8.5211176837619682e-02
2.8455786257606746e+02
6.8609889528700521e+01
2.2622189630797177e+01
8.7749113372175405e+00
3.7553599626065184e+00
1.7035903455455901e+00
7.9610924849766440e-01
1.9785586566953522e-01
8.5211176837619682e-02
8.5211176837619682e-02
7.1150149470514927e+00
9.3063008649662049e-01
1.8482540845270204e-01
4.2486926670212505e-02
4.2486926670212505e-02
1.3093952423233909e-01

View File

@ -0,0 +1,4 @@
electron_up_num_isSet 1
electron_up_num 4
electron_dn_num_isSet 1
electron_dn_num 4

View File

@ -0,0 +1,11 @@
rank_metadata_code 0
rank_metadata_author 0
metadata_code_num_isSet 0
metadata_author_num_isSet 0
len_metadata_package_version 6
metadata_package_version
1.1.0
len_metadata_description 0
metadata_description
metadata_code
metadata_author

View File

@ -0,0 +1,854 @@
rank_mo_coefficient 2
dims_mo_coefficient 0 28
dims_mo_coefficient 1 30
rank_mo_occupation 0
rank_mo_class 0
rank_mo_symmetry 0
mo_num_isSet 1
mo_num 28
len_mo_type 0
mo_type
mo_coefficient
-7.0721075166082403e-01
-8.4640142220538696e-04
2.9398577074268899e-04
2.4383493049404299e-10
2.2224952220095200e-10
2.7989678358100701e-04
-2.6329911213756698e-10
-2.2904776108994999e-10
-4.1344564092538202e-04
-5.7269518868910298e-05
-1.4534593577561000e-18
1.3575686263628201e-11
-5.7269518868925802e-05
9.2284264952617201e-12
1.1453903773783699e-04
-7.0721075166061498e-01
-8.4640137486997598e-04
2.9398147898855202e-04
-1.5386527980984601e-10
-5.7381766191219903e-11
-2.7989467487437902e-04
2.0567257857029200e-10
1.0069577755683501e-10
4.1344292069720498e-04
-5.7269890490102097e-05
9.4846217292739991e-19
-3.1091800440165801e-12
-5.7269890490100898e-05
-1.8692448451225200e-12
1.1453978098020499e-04
7.0755922441833596e-01
2.3295864170073300e-03
-4.5739491884162096e-03
1.6792264360620400e-10
1.7374668227397101e-10
-1.4548032295907600e-03
-1.6381999029192999e-10
-1.7763418845587500e-10
2.4599715411151202e-03
-2.7013636561849401e-04
-8.6882900914044800e-17
-6.5219039915486296e-12
-2.7013636561821298e-04
-3.3846199538894199e-12
5.4027273123671198e-04
-7.0755922403196403e-01
-2.3295864726529500e-03
4.5739492173190099e-03
-7.4629646084024303e-11
-1.3959225482197400e-10
-1.4548034467005500e-03
7.5727411712699505e-11
1.4538554754373699e-10
2.4599717569785502e-03
2.7013634642488501e-04
8.9010856268087394e-17
4.3478623902606402e-13
2.7013634642482598e-04
-8.3946884468938404e-13
-5.4027269284971505e-04
1.8814332337444600e-03
7.0971366351881204e-01
-1.4511148101077900e-01
4.8207867186895403e-10
7.9122938106352503e-10
-1.5746929814788699e-01
-5.5078352728447900e-10
-9.2179922719884896e-10
6.1723070208405902e-02
-8.7948100624307603e-03
1.1525644357643800e-16
8.6298754385290092e-12
-8.7948100624306406e-03
1.9541883824831700e-11
1.7589620124861399e-02
1.8814332463198500e-03
7.0971366352465404e-01
-1.4511148099536200e-01
-3.5283627986359002e-10
-7.1699840235555201e-10
1.5746929821713601e-01
4.3431941416993903e-10
8.5728180996150101e-10
-6.1723070244456300e-02
-8.7948100729340600e-03
-1.9032973973149101e-17
1.3494647445894400e-11
-8.7948100729343098e-03
2.0302916883829999e-11
1.7589620145868401e-02
-2.7094045638340202e-03
6.8362376295314298e-01
1.5764087330816101e-01
2.2956440424847301e-11
2.1768179290555201e-10
1.4403529789410299e-01
-3.3895539553199502e-11
-2.6244915057405802e-10
-2.6279053302808001e-02
6.9131665678477897e-03
-4.4851569673813903e-17
2.5807996521048300e-12
6.9131665678479398e-03
7.2465613130679097e-12
-1.3826333135695699e-02
2.7094066156690901e-03
-6.8362376293454497e-01
-1.5764087331776300e-01
-3.9610655163515502e-11
-2.2523636301667499e-10
1.4403529793836400e-01
4.9319263329388902e-11
2.6928031034895902e-10
-2.6279053347162001e-02
-6.9131665638129001e-03
6.8033103805249899e-18
1.5976349822409799e-12
-6.9131665638129400e-03
6.9420854729237001e-12
1.3826333127625800e-02
2.6169223221624700e-02
3.3928126066295097e-02
-3.7131325682296401e-01
-3.8054943571425903e-11
-9.7219511495836006e-11
-4.8414296655770400e-01
3.6637887649198898e-11
1.1042518972448299e-10
-1.8915347847529701e-01
-7.7446607959373703e-03
5.8352709498152800e-16
1.9206658837610000e-12
-7.7446607959373703e-03
-1.3625485197316100e-12
1.5489321591874701e-02
2.6169223260136699e-02
3.3928126053263799e-02
-3.7131325685442101e-01
-2.1555478878464700e-11
7.1826453231289794e-11
4.8414296654170202e-01
1.8909767099903602e-11
-8.7187669194950602e-11
1.8915347846135699e-01
-7.7446607910455099e-03
-4.3781226047057002e-18
-1.8910007914556899e-12
-7.7446607910465603e-03
-2.6225886213881401e-12
1.5489321582092101e-02
1.5436838988382599e-10
6.8441106343283396e-10
-6.5032696723372503e-10
-2.9395717785548697e-01
-1.9340252842475100e-01
-1.6245257273823701e-10
-2.1973031423966000e-01
-1.4456662924903399e-01
2.5750172905065701e-10
-1.6288544527154100e-11
-4.1536972840299702e-18
1.3763627299460800e-02
-1.6288473027628201e-11
9.0554697097865108e-03
3.2577017554782297e-11
1.5437714184527701e-10
6.8618453792743297e-10
-6.4581905028750498e-10
-2.9395717785548697e-01
-1.9340252842475000e-01
1.7553866368799799e-10
-2.1973031423966000e-01
-1.4456662924903499e-01
-2.6303964545136302e-10
-1.8414402314252599e-11
4.6419474571672102e-17
-1.3763627299460700e-02
-1.8414350219599801e-11
-9.0554697097869601e-03
3.6828752533852403e-11
3.5405233911983103e-11
1.5935657539442099e-10
-1.5126520035363701e-10
1.9340252842944800e-01
-2.9395717785857800e-01
-3.7911107547901000e-11
1.4456662924521399e-01
-2.1973031423714701e-01
5.9907713049249294e-11
-3.8167421437344899e-12
-6.2092957790451899e-16
-9.0554697096083808e-03
-3.8164920727211203e-12
1.3763627299345100e-02
7.6332342164556207e-12
3.5407034149459198e-11
1.5972108841729900e-10
-1.5033500951526601e-10
1.9340252842944899e-01
-2.9395717785857700e-01
4.0610695347977600e-11
1.4456662924521499e-01
-2.1973031423714801e-01
-6.1051179612880696e-11
-4.2549068865860598e-12
2.7731374944621400e-16
9.0554697096091805e-03
-4.2552184547439697e-12
-1.3763627299342799e-02
8.5101253413300400e-12
9.7418392979351705e-11
3.9142762782931900e-10
-3.8904596633517501e-10
2.5873597137038701e-01
2.3457640234950300e-01
-8.9040071713990102e-11
4.7991586834189798e-01
4.3510354292653503e-01
1.5393068037422900e-10
-8.6634539764106500e-12
3.5283381913778500e-16
3.1183292788531198e-03
-8.6637979643128103e-12
2.8271541049970802e-03
1.7327251940723501e-11
5.8168952994990298e-11
4.0339224634320402e-10
-3.6031660338831398e-10
-2.5873597137038501e-01
-2.3457640234950200e-01
9.5683928876472000e-11
-4.7991586834189898e-01
-4.3510354292653602e-01
-1.3563900822968601e-10
-1.2077935726964100e-11
-1.8742165367917301e-16
3.1183292788532499e-03
-1.2077878492649799e-11
2.8271541049970901e-03
2.4155814219613901e-11
6.7284214528756196e-12
2.9159091384607802e-11
-2.8458572011697100e-11
-2.3457640234507701e-01
2.5873597136637000e-01
-6.7812590869932097e-12
-4.3510354293083198e-01
4.7991586834579603e-01
1.1271018818141100e-11
-6.7531177632150998e-13
2.0754716138464700e-16
-2.8271541051292401e-03
-6.7555279009878003e-13
3.1183292789718200e-03
1.3508645664202900e-12
4.8050539944224999e-12
2.9740881248678898e-11
-2.7050139893577999e-11
2.3457640234507601e-01
-2.5873597136637400e-01
7.0997996742925101e-12
4.3510354293083098e-01
-4.7991586834579297e-01
-1.0372309818446899e-11
-8.4225570578491804e-13
-1.1301843461542301e-16
-2.8271541051277599e-03
-8.4205190976517805e-13
3.1183292789727000e-03
1.6843076155501000e-12
-2.5176096446687900e-02
3.2774465158704102e-01
2.2724112596623400e+00
-6.8613353667071494e-11
-6.5077716028125494e-11
-7.5326977570779205e-02
6.6980134520377796e-11
6.9850378741163298e-11
-2.1073114917167000e+00
-1.8684595323321600e-02
-6.4094675263288804e-17
3.7888042573808197e-12
-1.8684595323321201e-02
8.5745846931191503e-13
3.7369190646642798e-02
2.5176096778021101e-02
-3.2774465158178201e-01
-2.2724112596647998e+00
-2.4710382631654201e-11
3.1688598708784197e-11
-7.5326977541818496e-02
2.1302574147714999e-11
-3.8163446525789200e-11
-2.1073114917456000e+00
1.8684595325887000e-02
1.2104132960099100e-16
-3.3089349417006402e-12
1.8684595325886798e-02
-1.7687455406517800e-12
-3.7369190651773902e-02
-4.0136890502691402e-01
-2.0484865988120000e+00
1.9290087660434900e+00
-1.5255940559589300e-10
-1.1534206411468899e-10
4.9597491029698398e-01
1.9691808455836300e-10
1.4209490083669801e-10
-7.6535834916269097e-01
5.1442316980158699e-02
5.6652899273718298e-17
-1.1696674868144900e-11
5.1442316980158997e-02
-6.0194440436725501e-12
-1.0288463396031799e-01
-4.0136890506638001e-01
-2.0484865988013401e+00
1.9290087660688300e+00
2.9330987178913700e-10
1.6298981098252599e-10
-4.9597491030052798e-01
-6.1497325214211903e-10
-4.8679973082333303e-10
7.6535834918539902e-01
5.1442316978386998e-02
3.6085540934624898e-17
-5.1287403356897098e-13
5.1442316978387199e-02
-1.7807743229235301e-12
-1.0288463395677400e-01
2.1033019289790500e-01
1.2697223826999899e+00
-1.3982628680377001e+00
1.6310638156003901e-10
1.6518658352552201e-10
1.0299318537464099e+00
-1.9865612998472701e-10
-1.9418477121877900e-10
-1.1695812534093799e+00
1.3145488154253400e-02
-6.8623569595889600e-17
8.5776931755697107e-12
1.3145488154253300e-02
5.6577262870788797e-12
-2.6290976308506801e-02
2.1033019281597901e-01
1.2697223827284201e+00
-1.3982628679689899e+00
-2.4099332848813998e-10
-1.8412126289776701e-10
-1.0299318537071900e+00
2.7418568296147999e-10
2.1404612248438301e-10
1.1695812534368399e+00
1.3145488143007601e-02
1.2006077474994700e-17
1.0707933973629400e-12
1.3145488143007700e-02
2.5488093316238801e-12
-2.6290976286015299e-02
2.8417453260683301e-11
-5.1743791910840100e-10
5.3443319244642402e-10
-1.2008183484013000e+00
-4.3943075156660699e-01
6.0135257130292405e-11
1.1339180949585901e+00
4.1494908979973499e-01
-6.9861216666258398e-11
8.1255573499297103e-12
1.1515029506405300e-17
8.9577336989961800e-02
8.1254652480849700e-12
3.2780175761273199e-02
-1.6251022598014700e-11
2.8447325101490599e-11
-1.9714929400320900e-10
1.8680836737754399e-10
-1.2008183484013000e+00
-4.3943075156660699e-01
-1.6089681509883299e-11
1.1339180949585901e+00
4.1494908979973499e-01
5.1217852728328897e-11
9.7032581961001093e-13
-1.4060439976460400e-18
-8.9577336989961995e-02
9.7026640372573801e-13
-3.2780175761273102e-02
-1.9405922233357598e-12
1.2148954296671199e-11
-9.9601290906686698e-11
8.4681303499652098e-11
4.3943075158579997e-01
-1.2008183484083199e+00
2.9201470802937101e-11
-4.1494908981533701e-01
1.1339180949643000e+00
-3.4416520707022900e-11
3.9049691465164500e-12
-5.2205896098171798e-18
-3.2780175760547203e-02
3.9050231122230100e-12
8.9577336989695500e-02
-7.8099922587394592e-12
1.2164311859731400e-11
-9.6828000378008601e-11
9.1715700033760000e-11
4.3943075158580103e-01
-1.2008183484083199e+00
-8.7575777878504696e-12
-4.1494908981533901e-01
1.1339180949643000e+00
2.5761265644784199e-11
5.8398627909893700e-13
-2.5122924909986502e-16
3.2780175760546697e-02
5.8428623966483504e-13
-8.9577336989696096e-02
-1.1682725187637699e-12
-5.2500856688062801e-11
1.1528502754095500e-09
-6.4105219038733602e-10
-1.2317724801889900e+00
-5.8354969513373200e-01
-5.0452486787729097e-11
1.4525209636677900e+00
6.8812883803959302e-01
1.7028794905949300e-11
-7.3354377899700995e-12
2.8641277385968997e-17
-3.2418128002569102e-02
-7.3355582474280407e-12
-1.5358021888295400e-02
1.4670996037398101e-11
9.1930780776897502e-11
1.1077218478980699e-09
-9.9013250391666602e-10
1.2317724801889900e+00
5.8354969513373200e-01
2.6010923535908501e-11
-1.4525209636677900e+00
-6.8812883803959202e-01
-8.4348180219857700e-11
5.2275172418678799e-12
-5.3705789528586900e-17
-3.2418128002569199e-02
5.2274138818148398e-12
-1.5358021888295499e-02
-1.0454931123682700e-11
1.8217497441579499e-11
-4.2821771990202798e-10
1.6456367054240899e-11
-5.8354969511265598e-01
1.2317724801790000e+00
1.8672191492390200e-11
6.8812883801913705e-01
-1.4525209636581000e+00
-7.0921513549728897e-12
2.6876320253004498e-12
2.6506717230254200e-17
-1.5358021888920400e-02
2.6875184953851499e-12
3.2418128002865497e-02
-5.3751505206856098e-12
-3.3357457536767801e-11
-4.1210975726592101e-10
3.6916099446356498e-10
5.8354969511265498e-01
-1.2317724801790000e+00
-9.9432650706912908e-12
-6.8812883801913705e-01
1.4525209636581000e+00
3.1131825955132600e-11
-1.7987553779928500e-12
-3.2622741677602497e-17
-1.5358021888920799e-02
-1.7988219706279299e-12
3.2418128002865101e-02
3.5975773486207698e-12
-3.5176039875256399e-01
-1.6897995997401500e+00
2.8500768016438802e+00
5.6644264747632401e-11
7.3623850162506597e-11
-1.0530616397612900e+00
-5.5048547890554003e-11
-8.0641232360870602e-11
1.4349684097286500e-01
5.5222187307343802e-02
1.8731492197637699e-16
-2.1530699621449499e-12
5.5222187307343303e-02
6.8619297331144399e-13
-1.1044437461468699e-01
3.5176039885864002e-01
1.6897995997057500e+00
-2.8500768016232199e+00
3.4955535482365698e-11
-2.9432601922521700e-11
-1.0530616397553001e+00
-2.9237090644878498e-11
4.1122331701673297e-11
1.4349684096644100e-01
-5.5222187306985401e-02
-1.6425375108164399e-16
2.7873138346219898e-12
-5.5222187306985797e-02
2.0902479638670100e-12
1.1044437461397100e-01
-5.2656249894019802e-01
-2.6136337993155698e+00
5.5852212742701504e+00
4.0844571104151203e-11
3.5505982171968500e-11
8.6217787880040098e-01
-4.0839122014388802e-11
-4.0539124389347499e-11
-2.6568652552973702e+00
-1.0009706862156900e-01
-6.2461771813812901e-16
-3.1715851805511302e-12
-1.0009706862156800e-01
-7.3672870860297704e-13
2.0019413724313700e-01
5.2656249943361200e-01
2.6136337993437202e+00
-5.5852212742869600e+00
2.5890399708038000e-11
-1.9820484900284500e-11
8.6217787879296903e-01
-2.3987348571773002e-11
2.3917950888970299e-11
-2.6568652552897101e+00
1.0009706862108000e-01
3.7413768607055601e-16
3.3551279956744199e-12
1.0009706862107901e-01
1.9822342238817400e-12
-2.0019413724215801e-01
-2.4661985576074501e-12
3.4554206869590302e-12
-2.3479700077720898e-12
-1.8705246611175400e-01
2.6263216205041501e-01
-1.3415216966807200e-12
1.1330987906367800e-01
-1.5909343051552699e-01
1.0126329723616200e-12
-2.2663530673025501e-13
-6.9155972793808798e-16
-3.5668558671723899e-01
-2.2595730169050101e-13
5.0080658522999599e-01
4.5259260842075602e-13
-2.4673397099155001e-12
3.1815097717512002e-12
-3.0505620600711500e-12
-1.8705246611175400e-01
2.6263216205041501e-01
-6.8804692398897802e-13
1.1330987906367700e-01
-1.5909343051552699e-01
-1.5513758599267599e-13
1.0364516884727900e-13
-6.6362639016200102e-16
3.5668558671723799e-01
1.0412396486409400e-13
-5.0080658522999499e-01
-2.0776913371137301e-13
1.4993481987238401e-11
-1.8922695666285100e-11
1.2439702202050899e-11
-2.6263216204742601e-01
-1.8705246610755699e-01
7.5849192817525499e-12
1.5909343051309899e-01
1.1330987906026600e-01
-5.4184815012616199e-12
1.3041529782310100e-12
1.3145996896999699e-16
-5.0080658522988297e-01
1.3041111456745700e-12
-3.5668558671707901e-01
-2.6082641239055702e-12
1.5003803150870501e-11
-1.7280060840338200e-11
1.6586357115699799e-11
-2.6263216204742601e-01
-1.8705246610755799e-01
4.4885786575922101e-12
1.5909343051309599e-01
1.1330987906026700e-01
3.0554713649755500e-13
-6.5705815006041404e-13
1.9195023363100499e-16
5.0080658522988197e-01
-6.5732811617356697e-13
3.5668558671708001e-01
1.3143862662339800e-12
1.9831004149326600e-16
1.2173282744254400e-15
-1.6957141051853300e-15
1.0695022009804100e-16
-1.9376694833227101e-17
1.0853680180940700e-16
8.9016205154306094e-17
-7.8361329500674700e-17
3.8680635306250199e-16
5.1915289953861399e-01
-3.2212065132208401e-01
-1.9260375681964600e-16
-5.1915289953861399e-01
1.4701842130759499e-16
-3.1682290617889499e-16
6.0291695092213395e-17
1.4814119322235001e-16
5.1563629781359095e-16
2.5798282570549500e-17
-9.5394714762576903e-18
1.6119171845786999e-16
6.8661277831530796e-17
-6.3472613018684202e-17
8.2867114549150295e-17
5.1915289953861499e-01
-3.2212065132208600e-01
-4.4082874815270500e-17
-5.1915289953861399e-01
8.8542903790048200e-17
-1.3149886998078500e-16
-1.7928758133518600e-16
-8.8287028329936896e-16
4.4678552721665499e-16
-2.0063330061150699e-17
-6.8994703085366104e-17
-2.5487618105643599e-17
-2.3495411327371601e-16
2.6734243814771399e-16
-7.7382964115043100e-17
-2.7896466712851598e-01
-5.9946613259838699e-01
4.5863634879884100e-16
2.7896466712851598e-01
-3.5726394793376601e-16
1.1415954041885800e-16
-1.1358574425068199e-16
-5.6961595552658695e-16
6.7822833807832101e-16
1.0740856551724000e-17
-9.4748823554515400e-17
-4.3245272356297598e-17
-1.4161688442691101e-16
2.2961418579579798e-16
5.4441601365626598e-16
-2.7896466712851498e-01
-5.9946613259838899e-01
-2.8514234636220901e-16
2.7896466712851398e-01
1.1397749340997400e-15
5.3299051175046097e-16
-2.1055442539976200e-16
-9.2539006221329997e-16
5.4312101796389101e-15
-1.4254508684229199e-17
7.7769514662586003e-17
5.0083613545556301e-17
-1.0523701012825000e-17
-3.1061113529039299e-17
-2.4776494717215099e-15
-5.0466462465352901e-01
4.5130732174816202e-01
-1.6624562559764500e-16
5.0466462465352802e-01
-6.2362558175736501e-16
5.9452825564852101e-16
4.9503724342388397e-16
2.2555605197955902e-15
-6.2422984408117899e-15
-5.6534969606865097e-18
-4.8786995434470000e-18
-1.1795127982608399e-16
1.9809669565505800e-16
-3.7810704045338300e-16
-3.3167618203472301e-15
5.0466462465352901e-01
-4.5130732174816002e-01
-1.2578886233921600e-16
-5.0466462465352702e-01
-5.1738574973077103e-16
-1.5372784630585199e-15
1.7138353209207099e-16
7.6839284164587203e-16
-4.2030112383783396e-15
1.0409538678528000e-16
-7.2257067639476599e-17
1.9565221033825400e-16
3.6601853302426798e-16
-4.3492844732246999e-16
2.0901638181633501e-15
3.9084360554782399e-01
5.8273651378839197e-01
-7.4256397084404996e-16
-3.9084360554782399e-01
-5.4441790623460002e-16
-6.7914176332330997e-16
-2.1328882671189100e-16
-8.5699378636103499e-16
4.1496858620333897e-15
-1.0929456517064800e-18
-2.6419580815979800e-17
9.3913135070493002e-17
7.6345139005124505e-17
-1.9617510106642300e-16
2.4793195238279301e-15
-3.9084360554782399e-01
-5.8273651378839297e-01
-1.8257339205039500e-16
3.9084360554782299e-01
-1.1176754262129201e-15
8.9783377454185793e-16
2.2273129721104401e-01
1.0810634044288701e+00
-8.7832745398611600e-01
2.2662241796086099e-11
2.3566555823513202e-11
-6.1561349138910904e-01
-2.9826084929026401e-11
-2.9622199272019701e-11
7.0193925384499400e-01
3.5133925687712902e-01
-6.7220341064391800e-16
1.7515837617002400e-12
3.5133925687712803e-01
1.2294557786132601e-12
-7.0267851375425705e-01
2.2273129726002200e-01
1.0810634044139300e+00
-8.7832745402194801e-01
-3.9720861757923797e-11
-2.9809218957580201e-11
6.1561349138082000e-01
4.5934265595506099e-11
3.5516477685242500e-11
-7.0193925386781697e-01
3.5133925688138801e-01
-1.1465778507545800e-16
4.7953907991553398e-13
3.5133925688138901e-01
7.6460561416077804e-13
-7.0267851376277701e-01
-3.2043318544166899e-13
1.7534881088607200e-13
1.8584306770662101e-13
-8.8966251300795995e-02
8.0520306698256203e-02
-1.4126927998142599e-13
-1.7889670570350000e-01
1.6191328059768600e-01
-6.6273590812468005e-14
-2.4387516473889701e-14
-6.2459884712229098e-16
6.7665150748538805e-01
-2.4467271496101999e-14
-6.1241410213455005e-01
4.8854787969991697e-14
3.5130105504791798e-13
-3.0610125623170597e-14
-3.0664903182444902e-13
8.8966251300795995e-02
-8.0520306698257493e-02
2.5325485363886301e-14
1.7889670570350000e-01
-1.6191328059768501e-01
-2.4662316491051701e-13
3.4344718966134603e-14
1.6396621506589801e-16
6.7665150748538905e-01
3.4150203690015403e-14
-6.1241410213455005e-01
-6.8494922656150094e-14
6.2199387510491202e-12
-4.5940673682159397e-12
-2.6992046198076099e-12
8.0520306699779304e-02
8.8966251302173296e-02
3.0813650942880301e-12
1.6191328059620799e-01
1.7889670570216301e-01
9.2377238544556606e-13
5.1540194586667705e-13
-1.1453305154261000e-15
-6.1241410213459502e-01
5.1644877384985098e-13
-6.7665150748542802e-01
-1.0318507197165300e-12
-7.2645998690197898e-12
-4.8251528097410603e-13
7.1702470216735804e-12
-8.0520306699778901e-02
-8.8966251302173394e-02
-7.9930168253168102e-13
-1.6191328059620799e-01
-1.7889670570216301e-01
5.3610285788747998e-12
-6.5702136793927197e-13
6.8247448270587397e-16
-6.1241410213459502e-01
-6.5755124180901996e-13
-6.7665150748542802e-01
1.3145726097482900e-12
-7.2439162925477502e-02
2.1012513312147100e-02
2.4533973049632900e+00
-4.1317129812966003e-12
5.9809803799819196e-13
-1.1184360216680100e+00
5.1604427313037998e-12
-1.2338492226914499e-13
-8.6031448401599597e-01
-5.8157814334275004e-01
-6.2796905313327397e-16
8.6980208643988896e-13
-5.8157814334274804e-01
8.6813498818952896e-13
1.1631562866855001e+00
7.2439162549396405e-02
-2.1012513343480699e-02
-2.4533973049441302e+00
1.8071516922317900e-11
1.5836059015021800e-11
-1.1184360216394300e+00
-1.5976218913866899e-11
-1.3047323312282999e-11
-8.6031448404482502e-01
5.8157814334507396e-01
3.8643531451905200e-16
-1.0033126668429899e-13
5.8157814334507296e-01
8.4526095928371105e-14
-1.1631562866901499e+00
mo_occupation
mo_class
mo_symmetry

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,24 @@
rank_nucleus_charge 1
dims_nucleus_charge 0 2
rank_nucleus_coord 2
dims_nucleus_coord 0 2
dims_nucleus_coord 1 3
rank_nucleus_label 1
dims_nucleus_label 0 2
nucleus_num_isSet 1
nucleus_num 2
len_nucleus_point_group 0
nucleus_point_group
nucleus_charge
4.0000000000000000e+00
4.0000000000000000e+00
nucleus_coord
0.0000000000000000e+00
0.0000000000000000e+00
2.3183160107063618e+00
0.0000000000000000e+00
0.0000000000000000e+00
-2.3183160107063618e+00
nucleus_label
Be
Be

View File

View File

@ -0,0 +1,536 @@
rank_ao_shell 1
dims_ao_shell 0 263
rank_ao_normalization 1
dims_ao_normalization 0 263
ao_cartesian_isSet 1
ao_cartesian 1
ao_num_isSet 1
ao_num 263
ao_shell
0
1
2
3
4
5
5
5
6
6
6
7
7
7
8
8
8
9
9
9
9
9
9
10
10
10
10
10
10
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
12
13
13
13
13
13
13
13
13
13
13
14
15
16
17
18
18
18
19
19
19
20
20
20
21
21
21
21
21
21
22
22
22
22
22
22
23
24
25
26
27
28
28
28
29
29
29
30
30
30
31
31
31
32
32
32
32
32
32
33
33
33
33
33
33
34
34
34
34
34
34
35
35
35
35
35
35
35
35
35
35
36
36
36
36
36
36
36
36
36
36
37
38
39
40
41
42
43
43
43
44
44
44
45
45
45
46
46
46
47
47
47
48
48
48
48
48
48
49
49
49
49
49
49
50
50
50
50
50
50
51
51
51
51
51
51
51
51
51
51
52
52
52
52
52
52
52
52
52
52
53
54
55
56
57
58
59
60
60
60
61
61
61
62
62
62
63
63
63
64
64
64
65
65
65
66
66
66
66
66
66
67
67
67
67
67
67
68
68
68
68
68
68
69
69
69
69
69
69
70
70
70
70
70
70
70
70
70
70
71
71
71
71
71
71
71
71
71
71
ao_normalization
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688772e+00
1.7320508075688772e+00
9.9999999999999978e-01
1.7320508075688772e+00
9.9999999999999978e-01
1.0000000000000000e+00
1.7320508075688772e+00
1.7320508075688772e+00
1.0000000000000000e+00
1.7320508075688772e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688776e+00
1.7320508075688776e+00
1.0000000000000000e+00
1.7320508075688776e+00
1.0000000000000000e+00
1.0000000000000000e+00
2.2360679774997894e+00
2.2360679774997894e+00
2.2360679774997898e+00
3.8729833462074166e+00
2.2360679774997894e+00
1.0000000000000000e+00
2.2360679774997898e+00
2.2360679774997894e+00
1.0000000000000000e+00
1.0000000000000000e+00
2.2360679774997894e+00
2.2360679774997894e+00
2.2360679774997894e+00
3.8729833462074157e+00
2.2360679774997894e+00
1.0000000000000000e+00
2.2360679774997894e+00
2.2360679774997894e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000002e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688774e+00
1.7320508075688772e+00
1.0000000000000000e+00
1.7320508075688774e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688776e+00
1.7320508075688776e+00
1.0000000000000000e+00
1.7320508075688776e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000002e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688774e+00
1.7320508075688774e+00
1.0000000000000000e+00
1.7320508075688774e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688772e+00
1.7320508075688772e+00
1.0000000000000000e+00
1.7320508075688772e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688774e+00
1.7320508075688774e+00
1.0000000000000000e+00
1.7320508075688774e+00
1.0000000000000000e+00
1.0000000000000000e+00
2.2360679774997902e+00
2.2360679774997902e+00
2.2360679774997902e+00
3.8729833462074170e+00
2.2360679774997902e+00
1.0000000000000000e+00
2.2360679774997902e+00
2.2360679774997902e+00
1.0000000000000000e+00
1.0000000000000000e+00
2.2360679774997902e+00
2.2360679774997902e+00
2.2360679774997902e+00
3.8729833462074170e+00
2.2360679774997902e+00
1.0000000000000000e+00
2.2360679774997902e+00
2.2360679774997902e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688770e+00
1.7320508075688770e+00
1.0000000000000000e+00
1.7320508075688770e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688774e+00
1.7320508075688774e+00
1.0000000000000000e+00
1.7320508075688774e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688770e+00
1.7320508075688770e+00
1.0000000000000000e+00
1.7320508075688770e+00
1.0000000000000000e+00
1.0000000000000000e+00
2.2360679774997898e+00
2.2360679774997898e+00
2.2360679774997902e+00
3.8729833462074170e+00
2.2360679774997898e+00
9.9999999999999989e-01
2.2360679774997902e+00
2.2360679774997898e+00
1.0000000000000000e+00
1.0000000000000000e+00
2.2360679774997894e+00
2.2360679774997894e+00
2.2360679774997894e+00
3.8729833462074175e+00
2.2360679774997894e+00
1.0000000000000000e+00
2.2360679774997894e+00
2.2360679774997894e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688774e+00
1.7320508075688774e+00
1.0000000000000000e+00
1.7320508075688774e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688772e+00
1.7320508075688772e+00
1.0000000000000000e+00
1.7320508075688772e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688776e+00
1.7320508075688776e+00
1.0000000000000000e+00
1.7320508075688776e+00
1.0000000000000000e+00
1.0000000000000000e+00
1.7320508075688774e+00
1.7320508075688774e+00
1.0000000000000000e+00
1.7320508075688774e+00
1.0000000000000000e+00
1.0000000000000000e+00
2.2360679774997898e+00
2.2360679774997898e+00
2.2360679774997898e+00
3.8729833462074170e+00
2.2360679774997898e+00
1.0000000000000000e+00
2.2360679774997898e+00
2.2360679774997898e+00
1.0000000000000000e+00
1.0000000000000000e+00
2.2360679774997902e+00
2.2360679774997898e+00
2.2360679774997902e+00
3.8729833462074170e+00
2.2360679774997898e+00
1.0000000000000002e+00
2.2360679774997902e+00
2.2360679774997902e+00
1.0000000000000000e+00

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
electron_up_num_isSet 1
electron_up_num 34
electron_dn_num_isSet 1
electron_dn_num 34

View File

@ -0,0 +1,11 @@
rank_metadata_code 0
rank_metadata_author 0
metadata_code_num_isSet 0
metadata_author_num_isSet 0
len_metadata_package_version 6
metadata_package_version
0.3.0
len_metadata_description 0
metadata_description
metadata_code
metadata_author

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,39 @@
rank_nucleus_charge 1
dims_nucleus_charge 0 5
rank_nucleus_coord 2
dims_nucleus_coord 0 5
dims_nucleus_coord 1 3
rank_nucleus_label 1
dims_nucleus_label 0 5
nucleus_num_isSet 1
nucleus_num 5
len_nucleus_point_group 0
nucleus_point_group
nucleus_charge
6.0000000000000000e+00
1.0000000000000000e+00
9.0000000000000000e+00
1.7000000000000000e+01
3.5000000000000000e+01
nucleus_coord
1.0962433534584579e+00
8.9070540169738155e-01
7.7770922802588915e-01
1.1684592373426630e+00
1.1256607200533930e+00
2.8333703148293430e+00
1.4870972977121319e+00
3.1196524844787969e+00
-3.8554381384115000e-01
3.4976638499838888e+00
-1.3029208100731819e+00
-1.2722203194390641e-01
-2.3025745920813350e+00
-3.5420270605050352e-01
-5.3341299343176142e-02
nucleus_label
C
H
F
Cl
Br

View File

@ -238,6 +238,13 @@ def main():
prefix + "_LDFLAGS = -no-install",
"" ]
tmp = "EXTRA_DIST += "
for dir in glob("share/qmckl/test_data/*"):
for f in glob("%s/*"%(dir)):
tmp += " \\\n "+f
tmp += "\n"
output += tmp.split("\n")
output+= ["",
"## Documentation",
"",