Building a distribution package for Abinit  [SOLVED]

Moderator: pouillon

Post Reply
abokhanc
Posts: 24
Joined: Tue Jul 29, 2014 4:28 pm

Building a distribution package for Abinit  [SOLVED]

Post by abokhanc » Wed Sep 24, 2014 5:52 pm

Hi all,

I had recently finished making a new utility for Abinit called fold2Bloch. This utility unfolds first-principle electronic band structure obtained with Abinit code. How would I go about making a stand alone distribution package which can be added on to already installed Abinit? We are currently working on getting fold2Bloch to be included as part of the WIEN2K distribution package, and hope that it will also be included in Abinit distribution eventually.

Thank you,

Anton Bokhanchuk

User avatar
pouillon
Posts: 651
Joined: Wed Aug 19, 2009 10:08 am
Location: Spain
Contact:

Re: Building a distribution package for Abinit

Post by pouillon » Tue Sep 30, 2014 2:43 pm

What is the license of your package?
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

abokhanc
Posts: 24
Joined: Tue Jul 29, 2014 4:28 pm

Re: Building a distribution package for Abinit

Post by abokhanc » Wed Oct 01, 2014 8:05 pm

Hi,

As far as the license goes, it is a free package to be used by the public just like Abinit (I believe GPLv3). The WIEN2K implementation was mentioned in the following article http://www.tbrri.com/~orubel/publications/2014/Rubel_PRB_90_115202.pdf, which will help you understand the purpose and capabilities of the package. Thus, our goal is to spread this software amongst the scientific community. We are currently reviewing the development rules and documentation, and from our understanding we need a Bazaar account. Who would we contact in order to open an account with Bazaar?

PS
Attached is an example of the band structure for Ga8As7Bi1 supercell. After processing Abinit WFK file with fold2Bloch package we obtained the same results as from WIEN2K https://github.com/rubel75/fold2Bloch/wiki/Tutorial-2:-Bismuth-in-GaAs
Attachments
2014-09-29.Ga8As7Bi1-abinit.pdf
Abinit results processed by fold2Bloch
(18.64 KiB) Downloaded 389 times

User avatar
pouillon
Posts: 651
Joined: Wed Aug 19, 2009 10:08 am
Location: Spain
Contact:

Re: Building a distribution package for Abinit

Post by pouillon » Tue Oct 07, 2014 5:49 pm

Since your package is stand-alone, you don't have to request any Abinit branch nor to distribute it with Abinit. From what I see on GitHub, you are already offering everything your users need. It is thus probably sufficient that we advertise your code on the Abinit-related websites. The only aspect we have to care about is which versions of Fold2Bloch are compatible with which versions of Abinit.

Please let me know if I misunderstood something and it is really important for your package to be made part of Abinit.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

abokhanc
Posts: 24
Joined: Tue Jul 29, 2014 4:28 pm

Re: Building a distribution package for Abinit

Post by abokhanc » Wed Oct 08, 2014 6:36 pm

Hi

Thanks for reviewing the fold2Bloch. However, in order for it to to read _WFK files which are generated by Abinit I am using some of the Abinit functions and types in my main F90 file (fold2Bloch.F90):
hdr_io()
wfk_open_read()
wfk_read_band_block()

So for this reason, my understanding is that it has to be compiled with Abinit.

Please see the attached copy of fold2Bloch.F90. Maybe this will make it more clear of what I'm trying to do.

Thank you,

Anton
Attachments
fold2Bloch.F90
Main fold2Bloch file.
(5.39 KiB) Downloaded 336 times

User avatar
pouillon
Posts: 651
Joined: Wed Aug 19, 2009 10:08 am
Location: Spain
Contact:

Re: Building a distribution package for Abinit

Post by pouillon » Fri Oct 10, 2014 1:03 pm

If you want to go on in this direction, I thus suggest you to contact Xavier Gonze directly to organize the inclusion of Fold2Bloch into Abinit. Before that, I recommend you to:
  • fix typos;
  • replace tabs by spaces in your source files;
  • replace calls to write(*,*) by calls to Abinit's wtrout routine;
  • have a look at the initialization part of the other main executables in src/98_main/ and try to do something similar in Fold2Bloch;
  • provide a tutorial.

An alternative could be to use ETSF_IO in Abinit to write the wavefunctions and read them in this format in Fold2Bloch, which would give you more freedom and keep your project independent from Abinit. There are pros and cons in both cases, the choice is up to you.
Yann Pouillon
Simune Atomistics
Donostia-San Sebastián, Spain

Post Reply