mirror of
https://gitlab.com/scemama/qp_plugins_scemama.git
synced 2024-10-06 16:25:58 +02:00
Compare commits
No commits in common. "e326b4bb5ef4d25889f7d62251f4acbb127bd24e" and "318cd87976850450045be9aec7dee411028b8c46" have entirely different histories.
e326b4bb5e
...
318cd87976
@ -40,11 +40,7 @@ subroutine generate_fci_space
|
|||||||
endif
|
endif
|
||||||
t = ior(u,u-1)
|
t = ior(u,u-1)
|
||||||
t1 = t+1
|
t1 = t+1
|
||||||
IRP_IF WITHOUT_TRAILZ
|
|
||||||
t2 = shiftr((iand(not(t),t1)-1), popcnt(ieor(u,u-1)))
|
|
||||||
IRP_ELSE
|
|
||||||
t2 = shiftr((iand(not(t),t1)-1), trailz(u)+1)
|
t2 = shiftr((iand(not(t),t1)-1), trailz(u)+1)
|
||||||
IRP_ENDIF
|
|
||||||
u = ior(t1,t2)
|
u = ior(t1,t2)
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
@ -63,11 +59,7 @@ IRP_ENDIF
|
|||||||
endif
|
endif
|
||||||
t = ior(u,u-1)
|
t = ior(u,u-1)
|
||||||
t1 = t+1
|
t1 = t+1
|
||||||
IRP_IF WITHOUT_TRAILZ
|
|
||||||
t2 = shiftr((iand(not(t),t1)-1), popcnt(ieor(u,u-1)))
|
|
||||||
IRP_ELSE
|
|
||||||
t2 = shiftr((iand(not(t),t1)-1), trailz(u)+1)
|
t2 = shiftr((iand(not(t),t1)-1), trailz(u)+1)
|
||||||
IRP_ENDIF
|
|
||||||
u = ior(t1,t2)
|
u = ior(t1,t2)
|
||||||
enddo
|
enddo
|
||||||
|
|
||||||
|
@ -1,12 +0,0 @@
|
|||||||
[trexio_backend]
|
|
||||||
type: integer
|
|
||||||
doc: Back-end used in TREXIO. 0: HDF5, 1:Text
|
|
||||||
interface: ezfio, ocaml, provider
|
|
||||||
default: 0
|
|
||||||
|
|
||||||
[trexio_file]
|
|
||||||
type: character*(256)
|
|
||||||
doc: Name of the exported TREXIO file
|
|
||||||
interface: ezfio, ocaml, provider
|
|
||||||
default: None
|
|
||||||
|
|
@ -1 +0,0 @@
|
|||||||
-L/home/scemama/TREX/trexio/_install/lib -L/usr/lib/x86_64-linux-gnu/hdf5/serial -ltrexio -lm -lpthread -lhdf5_hl -lhdf5
|
|
@ -1,2 +0,0 @@
|
|||||||
ezfio_files
|
|
||||||
hartree_fock
|
|
@ -1,4 +0,0 @@
|
|||||||
======
|
|
||||||
trexio
|
|
||||||
======
|
|
||||||
|
|
@ -1,67 +0,0 @@
|
|||||||
program export_trexio
|
|
||||||
use trexio
|
|
||||||
implicit none
|
|
||||||
BEGIN_DOC
|
|
||||||
! Exports the wave function in TREXIO format
|
|
||||||
END_DOC
|
|
||||||
|
|
||||||
integer(8) :: f ! TREXIO file handle
|
|
||||||
integer :: rc
|
|
||||||
|
|
||||||
print *, 'TREXIO file : '//trim(trexio_filename)
|
|
||||||
print *, ''
|
|
||||||
|
|
||||||
if (trexio_backend == 0) then
|
|
||||||
f = trexio_open(trexio_filename, 'w', TREXIO_HDF5)
|
|
||||||
else if (trexio_backend == 1) then
|
|
||||||
f = trexio_open(trexio_filename, 'w', TREXIO_TEXT)
|
|
||||||
endif
|
|
||||||
if (f == 0) then
|
|
||||||
print *, 'Unable to open TREXIO file for writing'
|
|
||||||
stop -1
|
|
||||||
endif
|
|
||||||
|
|
||||||
! Nuclei
|
|
||||||
rc = trexio_write_nucleus_num(f, nucl_num)
|
|
||||||
call check_success(rc)
|
|
||||||
|
|
||||||
rc = trexio_write_nucleus_charge(f, nucl_charge)
|
|
||||||
call check_success(rc)
|
|
||||||
|
|
||||||
rc = trexio_write_nucleus_coord(f, nucl_coord_transp)
|
|
||||||
call check_success(rc)
|
|
||||||
|
|
||||||
! Electrons
|
|
||||||
! rc = trexio_write_electron_up_num(f, elec_alpha_num)
|
|
||||||
! call check_success(rc)
|
|
||||||
!
|
|
||||||
! rc = trexio_write_electron_dn_num(f, elec_beta_num)
|
|
||||||
! call check_success(rc)
|
|
||||||
|
|
||||||
! Basis
|
|
||||||
! rc = trexio_write_basis_type(f, 'Gaussian')
|
|
||||||
! call check_success(rc)
|
|
||||||
|
|
||||||
rc = trexio_write_basis_shell_num(f, sum(Nucl_num_shell_Aos))
|
|
||||||
call check_success(rc)
|
|
||||||
|
|
||||||
|
|
||||||
rc = trexio_close(f)
|
|
||||||
call check_success(rc)
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
subroutine check_success(rc)
|
|
||||||
use trexio
|
|
||||||
implicit none
|
|
||||||
integer, intent(in) :: rc
|
|
||||||
character*(128) :: str
|
|
||||||
if (rc /= TREXIO_SUCCESS) then
|
|
||||||
call trexio_string_of_error(rc,str)
|
|
||||||
print *, str
|
|
||||||
stop -1
|
|
||||||
endif
|
|
||||||
end
|
|
||||||
|
|
||||||
! -*- mode: f90 -*-
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user