marvel-nccr / ansible-role-siesta

Ansible role for installing the siesta code
Other
0 stars 3 forks source link

consider adding pseudopotentials #3

Closed ltalirz closed 3 years ago

ltalirz commented 4 years ago

@bosonie We're including a couple of pseudopotentials for Quantum Espresso in Quantum Mobile (since they don't ship with the code). How is it for Siesta, are a set of standard PPs already included? If not, can you point me to a zip that I should download?

bosonie commented 4 years ago

Hi Leopold. I'm not sure I understood what you mean. With the code we ship few pseudopotentials (PPs) that can be used in the examples we provide. If you, instead, refer to an entire set of PPs with certified accuracy, the situation is much more complected.

ltalirz commented 4 years ago

Yes - I mean a set of pseudopotentials for the periodic table (like the SSSP or the SG15 ONCV). Consider someone downloads the Quantum Mobile and wants to do some Siesta calculations for their system - how can we provide something they can use to get started?

bosonie commented 4 years ago

Ok, here the situation is complicated. Siesta is moving to the use of PPs in psml format (PseudoDojo project), however there is still no official release of Siesta that supports psml. If you see in the siesta repository (https://gitlab.com/siesta-project/siesta - btw, siesta is now on GitLab, no more on launchpad, you might think to change the link in the README), the psml-support branch is still on its own, not included in any release. Give me few days to ask Alberto what is the time-line for the next release and if he feels to include some other PPs. When are you planning to release the new virtual machine? I suppose in February before the school at CINECA...or before?

ltalirz commented 4 years ago

btw, siesta is now on GitLab, no more on launchpad, you might think to change the link in the README

thanks, will do!

Give me few days to ask Alberto what is the time-line for the next release and if he feels to include some other PPs.

Ok - by the way, my question is just about including pps in Quantum Mobile, not necessarily with siesta (in case this was not clear).

When are you planning to release the new virtual machine? I suppose in February before the school at CINECA...or before?

I'll definitely make a pre-release soon (this week) but there may be another one with slight updates later.

bosonie commented 4 years ago

Dear Leopold, with Alberto we agreed that it makes sense to include some PPs only if we are also allowed to include an additional version of Siesta in quantum-mobile. A version that supports psml. Is it possible?? Your opinion?

ltalirz commented 4 years ago

it makes sense to include some PPs only if we are also allowed to include an additional version of Siesta in quantum-mobile. A version that supports psml. Is it possible?? Your opinion?

Does Siesta only support either one format or the other? How about including an executable that supports both?

Another question: should I be using the latest siesta release MaX-1.0 in the QE release for this week, i.e. is it a "stable" release? I usually include only stable releases but I could also make an exception as we're including the latest "MaX" releases from all the other codes as well, so I'm basically just looking for your preference.

bosonie commented 4 years ago

The release MaX-1.0 supports both psml and psf PPs, therefore is going to be the one of choice in the future (with another name I guess). However it is not a "stable" release at the moment. It is not entirely tested as far as I understood. We remembered the policy to include only stable versions, therefore our idea was to include that version (that has all the new features - spin-orbit, +U, constrained DFT, psml, ...), but maybe also leave a more stable release. If you don't mind to have a not super "stable" version, we can go with just MaX-1.0. If we go that way, there are some dependences to take care of (new version of libxc and psml library in particular). I can ask Alberto to provide more info about it tailored to the distribution you have in the virtual machine.

ltalirz commented 4 years ago

If you don't mind to have a not super "stable" version, we can go with just MaX-1.0.

This version of Quantum Mobile will anyhow be a release candidate pre-release, so that seems fine to me.

If we go that way, there are some dependences to take care of (new version of libxc and psml library in particular). I can ask Alberto to provide more info about it tailored to the distribution you have in the virtual machine.

That would be very helpful. You find the current recipe I use here: https://github.com/marvel-nccr/ansible-role-siesta/blob/master/tasks/main.yml (the basics should be human readable, even if you're not familiar with ansible)

bosonie commented 4 years ago

Great, we will prepare something to facilitate you the installation. And also we prepare PPs libraries to ship. For this I need to ask you what was the choice of SSSP. LDA, PBE? both? Efficiency? Precision? Thanks

ltalirz commented 4 years ago

and this is the arch file: https://github.com/marvel-nccr/ansible-role-siesta/blob/master/templates/arch.make.deb_or_ubuntu

It currently fails with

 -I. -I/usr/lib/openmpi/include     -I../ -DMPI -DFC_HAVE_FLUSH -DFC_HAVE_ABORT -DCDF -DGRID_DP -DPHI_GRID_SP  /tmp/siesta-MaX-1.0/Src/fdf/fdf.F90
    ar  cru libfdf.a \
                    iso_fortran_env.o fdf.o io_fdf.o parse.o utils.o prec.o
    echo libfdf.a
    libfdf.a
    cp libfdf.a ..
    make[1]: Leaving directory '/tmp/siesta-MaX-1.0/Obj/fdf'

    SIESTA: dc_lapack.a has been deprecated in favor of:
      COMP_LIBS += libsiestaLAPACK.a
    Please update your arch.make file accordingly...

    Makefile:416: recipe for target 'dc_lapack.a' failed
  stdout_lines: <omitted>

Feel free to make a PR (it will actually run the build on docker) or to just write instructions here in the issue.

what was the choice of SSSP. LDA, PBE? both? Efficiency? Precision? Thanks

We have the PBE SSSP, both efficiency and precision versions.

bosonie commented 4 years ago

Ok, thanks! Yes I sent all the links to Alberto, we will formalise the necessary steps to get through the installation.

albgar commented 4 years ago

Hi @ltalirz: I am preparing full instructions to compile the MaX release of Siesta. There are a number of new dependencies, but I am managing to automatize it. You will just need to translate the steps to ansible-speak. I guess you need this for today?

ltalirz commented 4 years ago

thanks @albgar !

Yes, if I could get it some point today that would be great - I will do the QM release on the weekend.

bosonie commented 4 years ago

Dear Leopold, I wanted to reach the PseudoDojo people before passing to you the repositories. Just for political correctness. They gave me the green light. As I can't attach here the .tgz repo, I will send them directly by email to you. They are Norm Conserving Scalar relativistic PBE (NC SR ONCVPSP v0.4 in the PseudoDojo website). Both stnadard and stringent set. Please make sure to acknowledge PseudoDojo, a reference to the web-site is sufficient. Thanks!

albgar commented 4 years ago

Dear all,

For completeness, the fully-relativistic set should be included as well, since they are the ones most suited for the full-spin-orbit interaction case.

I have put complete tarballs for everything in:

http://departments.icmab.es/leem/SIESTA_MATERIAL/tmp_PseudoDojo/nc-sr-04_pbe_stringent_psml.tgz

http://departments.icmab.es/leem/SIESTA_MATERIAL/tmp_PseudoDojo/nc-sr-04_pbe_standard_psml.tgz

http://departments.icmab.es/leem/SIESTA_MATERIAL/tmp_PseudoDojo/nc-fr-04_pbe_stringent_psml.tgz

http://departments.icmab.es/leem/SIESTA_MATERIAL/tmp_PseudoDojo/nc-fr-04_pbe_standard_psml.tgz

ltalirz commented 4 years ago

thanks, I've incorporated the pseudopotentials in the role - attribution information is provided in the automatically generated release_notes.txt on the desktop.

Note: the ansible role now points to the URLs posted above, i.e. please let me know in case you want to change them at some point. If you are looking for a long-term URI to publish them, consider posting them on zenodo.org or archive.materialscloud.org

As for the updated siesta version, I've had a stab at incorporating the scripts but it is taking me too long in order to finish the QM release today. I.e. I'll release an RC1 today and we'll incorporate the latest siesta version in the next release. Thanks a lot for your help!

bosonie commented 4 years ago

Hi @ltalirz and @albgar , I find myself back to this issue because I started to look at the new quantum mobile. At the end the new version of siesta was never included, right? I think Alberto sent the instruction to Leopold but they were never implemented... This is a bit unfortunate because in the aiida_siesta we implemented a part that works only with the new Siesta-MaX release (that supports psml pseudopotential). Can we make sure to have the new Siesta version in the next release?

bosonie commented 4 years ago

Dear @ltalirz, Alberto just informed me that, at the end, a choice was made to not move to the Max version of Siesta. The set of instruction for this version is still lacking. I guess we will target September to have it ready. Sorry for bothering you.

ltalirz commented 4 years ago

no worries, let me know when you are ready!

albgar commented 3 years ago

I guess that this issue can be closed now. There is an update to the ansible role for the MaX-1.1 version, and psml pseudopotential sets are included.

chrisjsewell commented 3 years ago

yep I will close. Although perhaps there should also be some automation for having these psuedopotentials loaded into aiida.

Currently, quantum-espresso pseudo families are loaded here: https://github.com/marvel-nccr/ansible-role-aiida/blob/master/tasks/aiida-pps.yml, but I'm sure there is a way to make this a bit more "generic", possibly via https://github.com/aiidateam/aiida-pseudo

chrisjsewell commented 3 years ago

Moved the last point to https://github.com/marvel-nccr/ansible-role-aiida/issues/63