Calculation of Bader volumes

Bader charge density analysis

Moderator: moderators

Post Reply
khass

Calculation of Bader volumes

Post by khass »

Dear all.

I have problems to calculate the volumes of atoms of my structure. I tried option 2, but my computer runs out of memory. The structure contains 500 atoms in the unit cell. Is there a possibility to lower the number of volumes to be calculated? Does somebody have a suggestion?

With kind regards.
graeme
Site Admin
Posts: 2256
Joined: Tue Apr 26, 2005 4:25 am
Contact:

Post by graeme »

You can get the integrated charge for all atoms in the system without choosing to print any of the volumes. I would start with this option. Then if you want to visualize the volume around a few atoms, you can get the code to print those specific Bader regions. This should avoid a large memory problem.
khass

Calculation of Bader Volumes

Post by khass »

Dear Graeme.

Thank you for your advice.
I have followed it and have calculated the charge of the atoms. I also would like to calculate the volumes of several atoms. I appreciate, if you could provide me with this code.

With kind regards.

Kai
graeme
Site Admin
Posts: 2256
Joined: Tue Apr 26, 2005 4:25 am
Contact:

Post by graeme »

Printing the volume of the bader regions is an excellent idea, and one that will be easy for us to implement. I'll post back here when the binaries have been updated.
calatayu
Posts: 4
Joined: Thu Jul 07, 2005 6:29 pm

Post by calatayu »

Dear all,

I wonder if this option is already available, I'm also interested in the volumes.

Regards,
calatayu
graeme
Site Admin
Posts: 2256
Joined: Tue Apr 26, 2005 4:25 am
Contact:

Post by graeme »

Yes, it was put into the cvs code a couple of days ago. You can run

bader -p all_atom CHGCAR

to get the volumes around each atom.
calatayu
Posts: 4
Joined: Thu Jul 07, 2005 6:29 pm

Post by calatayu »

I find some compilation problems on Opteron procs... The Makefile.pgf90 compiles ok although it is the old version ("-p" DOES NOT EXIST...). I took the OBJS from the makefile.xlf and then it crashes:

m2c -o kind_mod.o kind_mod.mod
make: m2c: Command not found
make: *** [kind_mod.o] Error 127

I guess only xlf and pfortran Makefiles are updated. Would it be possible to update also the binaries? They always worked fine in our machines.

Thanks,
calatayu
andri
Site Admin
Posts: 117
Joined: Tue Apr 26, 2005 6:20 am

Post by andri »

Try (with the proper line indentation):

-----------------------------------------
OBJS = kind_mod.o \
matrix_mod.o \
ions_mod.o \
options_mod.o \
charge_mod.o \
chgcar_mod.o \
cube_mod.o \
io_mod.o \
bader_mod.o \
voronoi_mod.o

%.o %.mod : %.f90
$(FC) $(FFLAGS) -c $*.f90

bader: $(OBJS) main.o
rm -f bader
$(FC) $(LINK) main.o -o $@ $(OBJS)

#FC = /opt/pgi/linux86-64/6.0/bin/pgf90
#FC = /opt/pgi/linux86/6.0/bin/pgf90
FFLAGS = -tp px -O3 -fast
LINK = -Bstatic

clean:
rm -f *.o *.mod *.lst bader
-------------------------------------------

But use the appropriate compiler for your system (32/64 bit) and change the (or skip it entirely) generic "-tp px" tag to the proper one for your compiler by using "man pgf90" and searching for "-tp".
calatayu
Posts: 4
Joined: Thu Jul 07, 2005 6:29 pm

Post by calatayu »

Compilation is ok now, but still does not recognize the -p option :
-p DOES NOT EXIST IN THIS DIRECTORY

thanks again
calatayu
andri
Site Admin
Posts: 117
Joined: Tue Apr 26, 2005 6:20 am

Post by andri »

Are you running it as (with the CVS code):

./bader -p all_atom CHGCAR

?
calatayu
Posts: 4
Joined: Thu Jul 07, 2005 6:29 pm

Post by calatayu »

Ooops... it was not the right version; this is the error now:

c569-n6@calatayu> ./bader -p all_atom CHGCAR
Unknown option "all_atom"

And when I try "-p all", it starts but never ends... here the beginning of the output

calatayu


---------
OPEN ... CHGCAR
VASP-STYLE INPUT FILE
FFT-grid: 60 x 60 x 140
CLOSE ... CHGCAR
RUN TIME: 0.36 SECONDS

CALCULATING BADER CHARGE DISTRIBUTION
0 10 25 50 75 100
PERCENT DONE: **
grd: 1 1 1
r_before: 1.0000 1.0000 1.0000
011, 111: 3.2842 3.1977
001, 101: 3.2019 3.1239
010, 110: 2.7381 2.5542
000, 100: 2.7499 2.5414
rho_grad: -1.6527 -0.0937 3.7221
offstep: 0.6095 0.9779 1.9137
to_lat: 1 1 2
rho: 3.2019
r_before: 0.6095 0.9779 1.9137
011, 111: 3.2103 3.2019
001, 101: 3.3745 3.3469
010, 110: 2.9081 2.7499
000, 100: 3.0511 2.8837
rho_grad: -1.3263 -1.1329 2.6635
offstep: 0.2086 0.6354 2.7503
to_lat: 60 60 2
rho: 3.3745
r_before: 0.2086 0.6354 2.7503
011, 111: 3.4884 3.4531
001, 101: 3.9021 3.8643
010, 110: 3.2103 3.2019
000, 100: 3.3745 3.3469
rho_grad: -0.2185 -1.3016 4.3449
offstep: 0.1623 0.3595 3.7071
graeme
Site Admin
Posts: 2256
Joined: Tue Apr 26, 2005 4:25 am
Contact:

Post by graeme »

Make sure you have the latest version from cvs. I don't see any changes from when I checked it in a few days ago, and I don't see the messages you get. I think these debugging messages are from a while ago.

We are in the process of getting all the wrinkles worked out of the latest version. When we do, we'll update the webpage, put up static binaries, and change the instructions on how to use it. For now, you are welcome to run the cvs version, but make sure you always run cvs update before compiling. The code is changing, so it's important that we are talking about the same version. Also, as you have found, there will be glitches, such as in the makefiles for platforms that we don't typically run on. If you find these problems, we'll be pretty quick to update the files in cvs. We'll update the makefiles today or tomorrow.
Post Reply