9
1
mirror of https://github.com/QuantumPackage/qp2.git synced 2024-07-16 07:50:21 +02:00
This commit is contained in:
Anthony Scemama 2019-01-25 17:13:07 +01:00
commit 5329056ef8
10 changed files with 74 additions and 33 deletions

View File

@ -21,6 +21,7 @@ addons:
- gcc
- liblapack-dev
- libblas-dev
- wget
env:
- OPAMROOT=$HOME/.opam

View File

@ -5,11 +5,6 @@ master
The current up-to-date working branch, that users download It should
only contain the latest release and bug fixes.
documentation
It is a fork of the *master* branch, but with the `/docs` directory
containing the sources built properly for the ReadTheDocs website
documentation.
develop
It is a fork of the *master* branch with new developments that will be
merged in the *master* branch for the next release.

View File

@ -8,12 +8,13 @@ A programming environment for wave function methods
* [Visit the web site](https://quantumpackage.github.io/qp2)
* [Download the latest release](http://github.com/QuantumPackage/qp2/releases)
* [Read the documentation](https://quantum-package-scemamamaster.readthedocs.io/) **TODO**
* [Read the documentation](https://quantum-package.readthedocs.io)
# Build status
* Master: [![Build Status](https://travis-ci.org/QuantumPackage/qp2.svg?branch=master)](https://travis-ci.org/QuantumPackage/qp2)
* Development branch : [![Build Status](https://travis-ci.org/QuantumPackage/qp2.svg?branch=develop)](https://travis-ci.org/QuantumPackage/qp2)
* Master: [![master build status](https://travis-ci.org/QuantumPackage/qp2.svg?branch=master)](https://travis-ci.org/QuantumPackage/qp2)
* Development branch : [![dev build status](https://travis-ci.org/QuantumPackage/qp2.svg?branch=develop)](https://travis-ci.org/QuantumPackage/qp2)
* Documentation [![Doc Status](https://quantum-package.readthedocs.io/en/latest/?badge=master)
# Credits

2
external/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
*

0
external/Python/.gitignore vendored Normal file
View File

0
lib/.gitignore vendored Normal file
View File

36
ocaml/.gitignore vendored Normal file
View File

@ -0,0 +1,36 @@
_build
element_create_db
element_create_db.byte
ezfio.ml
.gitignore
Git.ml
Input_ao_one_e_ints.ml
Input_ao_two_e_erf_ints.ml
Input_ao_two_e_ints.ml
Input_auto_generated.ml
Input_becke_numerical_grid.ml
Input_davidson.ml
Input_density_for_dft.ml
Input_determinants.ml
Input_dft_keywords.ml
Input_dressing.ml
Input_mo_one_e_ints.ml
Input_mo_two_e_erf_ints.ml
Input_mo_two_e_ints.ml
Input_nuclei.ml
Input_perturbation.ml
Input_pseudo.ml
Input_scf_utils.ml
qp_create_ezfio
qp_create_ezfio.native
qp_edit
qp_edit.ml
qp_edit.native
qp_print_basis
qp_print_basis.native
qp_run
qp_run.native
qp_set_mo_class
qp_set_mo_class.native
qptypes_generator.byte
Qptypes.ml

2
plugins/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
*

0
share/.gitignore vendored Normal file
View File

View File

@ -37,43 +37,46 @@ subroutine davidson_run_slave(thread,iproc)
integer, external :: connect_to_taskserver
integer, external :: zmq_get_N_states_diag
PROVIDE mpi_rank
zmq_to_qp_run_socket = new_zmq_to_qp_run_socket()
zmq_socket_push = new_zmq_push_socket(thread)
integer :: ierr, doexit
doexit = 0
if (connect_to_taskserver(zmq_to_qp_run_socket,worker_id,thread) == -1) then
call sleep(1)
do
doexit = 0
if (connect_to_taskserver(zmq_to_qp_run_socket,worker_id,thread) == -1) then
doexit=1
call sleep( int(1.5+float(mpi_rank)/10.) )
if (connect_to_taskserver(zmq_to_qp_run_socket,worker_id,thread) == -1) then
doexit=1
endif
endif
endif
IRP_IF MPI
include 'mpif.h'
integer :: sendbuf, recvbuf
sendbuf = doexit
recvbuf = doexit
call MPI_ALLREDUCE(sendbuf, recvbuf, 1, MPI_INTEGER, MPI_SUM, MPI_COMM_WORLD, ierr)
if (ierr /= MPI_SUCCESS) then
print *, irp_here//': Unable to reduce '
stop -1
IRP_IF MPI
include 'mpif.h'
integer :: sendbuf, recvbuf
sendbuf = doexit
recvbuf = doexit
call MPI_ALLREDUCE(sendbuf, recvbuf, 1, MPI_INTEGER, MPI_SUM, MPI_COMM_WORLD, ierr)
if (ierr /= MPI_SUCCESS) then
print *, irp_here//': Unable to reduce '
stop -1
endif
doexit = recvbuf
IRP_ENDIF
if (doexit == 0) then
exit
else
print *, irp_here, ': retrying connection (', doexit, ')'
endif
doexit = recvbuf
IRP_ENDIF
if (doexit > 0) then
call end_zmq_to_qp_run_socket(zmq_to_qp_run_socket)
return
endif
zmq_socket_push = new_zmq_push_socket(thread)
enddo
do
if (zmq_get_N_states_diag(zmq_to_qp_run_socket, 1) /= -1) then
exit
endif
print *, 'Waiting for N_states_diag in ', irp_here
print *, irp_here, ': Waiting for N_states_diag'
call sleep(1)
enddo
call davidson_slave_work(zmq_to_qp_run_socket, zmq_socket_push, N_states_diag, N_det, worker_id)
@ -82,6 +85,7 @@ subroutine davidson_run_slave(thread,iproc)
if (disconnect_from_taskserver(zmq_to_qp_run_socket,worker_id) == -1) then
call sleep(1)
if (disconnect_from_taskserver(zmq_to_qp_run_socket,worker_id) == -1) then
print *, irp_here, ': disconnect failed'
continue
endif
endif