Page 1 of 1

OPTIC file for HSE calculation

Posted: Fri May 25, 2012 1:14 am
by jjhskang
Hello,

When I do hybrid functional (HSE) calculations on a parallel machine, I need to set NPAR = #processors. But I also want to use the matrix elements from the OPTIC file which is written only when NPAR=1. How can I get the OPTIC file with hybrid functional calculations?

This is a question raised by many people which has been never answered. I have the same problem. Is there any one who can comment on this?

Thanks

OPTIC file for HSE calculation

Posted: Wed May 30, 2012 2:00 pm
by admin
1. Relax the system using multiple cores.
2. Repeat the last electronic step (NSW=0, ISTART=1) on one core (NPAR=1, LOPTICS=.TRUE.) )

OPTIC file for HSE calculation

Posted: Sat Jun 02, 2012 3:20 am
by jjhskang
To head admin:

1. The second run (NSW=0, ISRAT=1, NPAR=1, LOPTICS = .TRUE.) does not work for HSE calculation. In fact, the HSE calculation can be run only when NPAR= # of processors. So your answer is not a way to solve the problem.

2. I modified main.F in such a way that
-----------------------------------------------------
! IF (NPAR ==1 .AND. LPAW) THEN
IF (LPAW) THEN
! offboard optics by Juergen Furthmueller
ALLOCATE(NABIJ(WDES%NB_TOT,WDES%NB_TOT))

CALL CALC_NABIJ(NABIJ,W,WDES,P,KPOINTS,GRID_SOFT,LATT_CUR, &
IO,INFO,T_INFO,COMM,IU0,55)
DEALLOCATE(NABIJ)
CALL STOP_TIMING("G",IO%IU6,'NABIJ')
ENDIF
-------------------------------------------------
NABIJ() ruitine can be called even when NPAR .ne. 1.

It runs.

3. For one-dimensional system in which peridicity is in the X-direction, I also changed NDIR in optics.F from 3 to 1. With these changes, I made a calculation for an 1D system. I find that NABIJ() array sometimes becomes very large (~10**25 !!).

This problem can be related to the accuracy of the calculation. Can you help me to solve this problem?

I guess that it has something to do with optics.F

OPTIC file for HSE calculation

Posted: Sat Jun 02, 2012 3:41 am
by jjhskang
I mean that the change in 2 above makes the VASP to run even when NPAR != 1. However, some of NABIJ() array elements are almost infinitely large!! How can I solve this probelm?

OPTIC file for HSE calculation

Posted: Sun Jun 03, 2012 6:46 am
by jjhskang
I find that the problem that NABIJ() has elements with very large values is caused by allowing NPAR!= 1 for HSE calculation. I mean that NPAR should be 1 if we want to have correct values of NABIJ().
However, HSE calculation does not run if NPAR=1. So

what can I do ?

OPTIC file for HSE calculation

Posted: Sun Jun 03, 2012 9:15 am
by jjhskang
TO Admin:

Using one processor and NPAR = 1 causes memory allocation problem in wave.f in my problem and stops running.

OPTIC file for HSE calculation

Posted: Mon Jun 04, 2012 9:09 am
by jjhskang
To Admin:

So my point is that if it is possible to get a code which runs for HSE calculation with NPAR != 1, while generating OPTIC file too. At the monent, the correct OPTIC file is generated only when NPAR = 1.

OPTIC file for HSE calculation

Posted: Mon Jun 04, 2012 9:47 am
by admin
The generation of OPTIC-file is tested in HSE calculation on one core, NPAR=1,Monkhorst (222) using vasp.5.2.9_mpi

OPTIC file for HSE calculation

Posted: Fri Jun 08, 2012 4:41 am
by jjhskang
To Admin:

It is too time-consuming to make the calculation for large systems with only one processor.

OPTIC file for HSE calculation

Posted: Fri Jun 08, 2012 4:45 am
by jjhskang
So it is practicaly impossible to make a calculation for large systems. Therefore, it will be better if you can make it to generate OPTIC file with many CPUs.

OPTIC file for HSE calculation

Posted: Mon Jul 01, 2013 4:09 am
by jjhskang
Is ther any solution to this problem recently??