Open vamshimohank opened 1 year ago
The default tol=1E-13
defined in Line 224 in https://github.com/ZhuGroup-Yale/fcdmft/blob/main/fcdmft/solver/gfdmrg_sz.py#L224 might be too small. You can change it to tol=1E-10
or tol=1E-8
to solve this problem.
First of all, I would like to thank the developers for making this piece of code open.
I was trying to run the NiO example using DMRG as the solver (from block2). It seems like there is a memory allocation bug in the FCIDUMP routine in block2 as I come across the following Assertion error:
Traceback (most recent call last): File "run_dmft.py", line 387, in
dmft_abinitio()
File "run_dmft.py", line 309, in dmft_abinitio
mydmft.kernel(mu0=mu, wl=wl0, wh=wh0, delta=delta, occupancy=nelectron, opt_mu=opt_mu)
File "/home/katukuri/Codes/DMET/fcdmft/fcdmft/dmft/gwdmft.py", line 1270, in kernel
conv_tol=conv_tol, opt_mu=opt_mu, dump_chk=dump_chk)
File "/home/katukuri/Codes/DMET/fcdmft/fcdmft/dmft/gwdmft.py", line 275, in kernel
gf_imp = dmft.get_gf_imp(freqs, delta)
File "/home/katukuri/Codes/DMET/fcdmft/fcdmft/dmft/gwdmft.py", line 1361, in get_gf_imp
extra_delta=extra_delta, load_cas=self.load_cas, thresh2=self.thresh2)
File "/home/katukuri/Codes/DMET/fcdmft/fcdmft/dmft/dmft_solver.py", line 1191, in udmrg_gf
verbose=dmrg_verbose, mo_basis=False, ignore_ecore=False, n_off_diag_cg=n_off_diag_cg, mpi=True)
File "/home/katukuri/Codes/DMET/fcdmft/fcdmft/solver/gfdmrg_sz.py", line 1369, in dmrg_mo_gf
save_fcidump=save_fd)
File "/home/katukuri/Codes/DMET/fcdmft/fcdmft/solver/gfdmrg_sz.py", line 253, in init_hamiltonian
assert abs(xh1e[i, j] - xh1e[j, i]) < tol
AssertionError
python: /home/katukuri/Codes/AMD/block2-preview/src/instantiation/core/../../core/integral.hpp:1413: void block2::FCIDUMP::deallocate() [with FL = double]: Assertion 'total_memory != 0' failed.
[alnode258:216761] Process received signal
[alnode258:216761] Signal: Aborted (6)
[alnode258:216761] Signal code: (-6)
[alnode258:216761] [ 0] /lib64/libpthread.so.0(+0x132d0)[0x7fe86794b2d0]
[alnode258:216761] [ 1] /lib64/libc.so.6(gsignal+0x110)[0x7fe8675b6420]
[alnode258:216761] [ 2] /lib64/libc.so.6(abort+0x151)[0x7fe8675b7a01]
[alnode258:216761] [ 3] /lib64/libc.so.6(+0x31a1a)[0x7fe8675aea1a]
[alnode258:216761] [ 4] /lib64/libc.so.6(+0x31a92)[0x7fe8675aea92]
Am I missing something or is there a bug in assigning the memory.
Thanks for looking into it.
Regards Vamshi