[Thermo_pw-forum] nonstoichiometric compounds

Andrea Dal Corso dalcorso at sissa.it
Sun Oct 23 20:15:36 CEST 2016


If you changed the two lines, now it should work.
Otherwise the path can be given in the input of thermo_pw.

Andrea


Quoting Gunnar Palsson <gunnar.karl at gmail.com>:

> Hi Andrea,
>
> I recompiled with your suggested changes but the problem still  
> persists. However I found the factor_dx on line 190 in  
> sym_band_sub.f90 and on line 428 in plotband_sub.f90.
> I’m compiling thermo_pw 0.6.0 against espresso 6.0.
>
> Regarding the
>> Possibility one: give explicitely the path where to compute the phonon
>> dispersions in the input of thermo_pw. The same path that works in QE
>> should work also here.
>
> I would normally put that path into matdyn.in., for instance:
> &input
>   asr='simple',
>   amass(1) = 1.00750,
>   amass(2) = 50.94150,
>   flfrc    = 'forces.fc'
>   flfrq    = 'frequencies.out'
>   q_in_band_form = .true.
>  /
>  9
>  gG 5
>  X  5
>  Y  5
>  gG  5
>  Z  5
>  N 5
>  P 5
>  Z 5
>  P 5
>
> following your convention in your document on how to plot inside the  
> Brillouin zone. Should this information go into thermo_control or  
> ph_control or something else?
>
>
> Regards,
> Gunnar
>
>
>> On 17 Oct 2016, at 17:45, Andrea Dal Corso <dalcorso at sissa.it> wrote:
>>
>> On Sun, 2016-10-16 at 16:41 +0200, Gunnar Palsson wrote:
>>> Dear Andrea,
>>>
>>> I seem to be stuck with this problem. I tried setting  
>>> ESPRESSO_TMPDIR instead of specifying outdir in the scf and ph  
>>> files but I still get the same error.
>>> Any advice would be most helpful? I was also able to run a manual  
>>> phonon run and plot the dispersion and the densites of states,  
>>> which look fine. As a workaround, is it possible
>>> for thermo_pw to calculate the thermodynamic quantities from the  
>>> dynamic matrices generated from ph.x directly without having run  
>>> thermo_pw.x?
>>>
>>
>> Dear Gunnar,
>>
>> Thank you for reporting the problem.
>> I have analyzed your input file and the problem is that the automatic
>> path generated by thermo_pw is not very clever when some parts of the
>> path are much shorter than others as in your case. The code should be
>> able to deal with this, but presently it is not.
>> There are two solutions to your problem:
>>
>> Possibility one: give explicitely the path where to compute the phonon
>> dispersions in the input of thermo_pw. The same path that works in QE
>> should work also here.
>>
>> Possibility number two. A quick and dirty fix for your case:
>> Change the routine thermo_pw/src/sym_band_sub.f90 at line 291 there is
>>
>>
>> factor_dx = MAX(5.0_DP, 2.0_DP * sizeb, 2.0_DP * sizec, &
>>                                        2.0_DP/sizeb, 2.0_DP/sizec)
>>
>> change the 5.0_DP to 6.0_DP.
>>
>> The same change should be done in thermo_pw/src/plotband_sub.f90
>> at line 462. Then recompile.
>>
>> Thermo_pw can use the dynamical matrices calculated in a previous run,
>> or using the phonon code. You need to use the two input variables
>> after_disp=.TRUE.
>> and fildyn='name of the dynamical matrix used in the ph.x input'
>> in the thermo_pw input.
>> Note however that you need to make the change written above or the code
>> will stop at the same point even if you read the dynamical matrices from
>> file.
>>
>> HTH,
>>
>> Andrea
>>
>>
>>> Best,
>>> Gunnar
>>>
>>>> On 11 Oct 2016, at 00:08, Gunnar Palsson <gunnar.karl at gmail.com> wrote:
>>>>
>>>> Andrea,
>>>>
>>>> I compiled qe-6.0 and thermo_pw 0.6.0, deleted the output folder,  
>>>> and repeated the calculation. I still get the same error. Then I  
>>>> tried calculating pure vanadium with as similar
>>>> settings as possible which went fine.
>>>>
>>>> Attached are the input and output files.
>>>>
>>>>
>>>>
>>>> Best,
>>>> Gunnar
>>>> <ph_control><thermo_control><v2h.scf.in><v2h.scf.out>
>>>>> On 10 Oct 2016, at 11:03, Andrea Dal Corso <dalcorso at sissa.it> wrote:
>>>>>
>>>>> It is a strange error. It seems that your working directory was not
>>>>> empty. The output has no information.
>>>>> I would try with the last version of thermo_pw and with a clean working
>>>>> directory. If the problem is still there I will check what is happening.
>>>>>
>>>>> Andrea
>>>>>
>>>>>
>>>>> On Mon, 2016-10-10 at 10:51 +0200, Gunnar Palsson wrote:
>>>>>> Andrea,
>>>>>>
>>>>>> Thank you very much for explaining things very clearly! I was  
>>>>>> able to create an input file based on the space group and  
>>>>>> Wyckoff symbols. It now works nicely to relax the structure and  
>>>>>> calculate the elastic constants. However when I did a phonon  
>>>>>> calculation I got a message that I do not know how to interpret:
>>>>>>
>>>>>> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>>>>>>   Error in routine plotband_sub (1):
>>>>>>   unexpected change of symmetry
>>>>>> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>>>>>>
>>>>>> Any idea of how to proceed from here?
>>>>>>
>>>>>>
>>>>>> Best regards,
>>>>>> Gunnar
>>>>>>
>>>>>>
>>>>>>> On 8 Oct 2016, at 16:02, Andrea Dal Corso <dalcorso at sissa.it> wrote:
>>>>>>>
>>>>>>> This is not a problem of thermo_pw. If you use the same input  
>>>>>>> with pw.x you will have only four symmetry operations as well.  
>>>>>>> The problem is that using ibrav=6 with 24 atoms the
>>>>>>> code finds that it is a supercell and neglects all symmetries  
>>>>>>> with fractional translations.
>>>>>>> Although slow however this cell is correct and should provide  
>>>>>>> reasonable results.
>>>>>>> thermo_pw just tells you that you are not exploiting correctly  
>>>>>>> the symmetry.
>>>>>>> If you use ibrav=7 without converting the coordinates to the  
>>>>>>> centered cell, the coordinates are
>>>>>>> wrong because they are in the crystal basis of the  
>>>>>>> conventional cell and the atoms should be 12.
>>>>>>> cif2qe should now have an option that allow you to obtain the  
>>>>>>> crystal coordinates for the centered cell.
>>>>>>>
>>>>>>> The alternative is to use the QE ability to deal directly with  
>>>>>>> the space group.
>>>>>>> You have to specify space_group=141 and origin_choice=2 in the  
>>>>>>> system namelist, to use
>>>>>>> nat=2 because there are only two inequivalent atoms and  
>>>>>>> specify the atomic coordinates as crystal_sg,
>>>>>>> giving
>>>>>>>
>>>>>>> V  16h  0.49964 0.26712
>>>>>>> H  8c
>>>>>>>
>>>>>>> extracted from your cif file. With this input QE finds a cell  
>>>>>>> with ibrav=7,
>>>>>>> and 12 atoms and thermo_pw recognizes correctly the space  
>>>>>>> group 141 and finds a point group D_4h
>>>>>>> compatible with the centered tetragonal lattice.
>>>>>>>
>>>>>>> HTH,
>>>>>>>
>>>>>>> Andrea
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Quoting Gunnar Palsson <gunnar.karl at gmail.com>:
>>>>>>>
>>>>>>>> Dear Andrea,
>>>>>>>>
>>>>>>>>
>>>>>>>> I have obtained a cif file for the stoichiometric compound  
>>>>>>>> V2H and I have run cif2cell (1.2.10) to generate a pw input  
>>>>>>>> file. Since the cell is body centered tetragonal I changed  
>>>>>>>> the Bravais lattice to 7. When running thermo_pw to calculate  
>>>>>>>> the phonon dispersion, the program mentions that there is an  
>>>>>>>> incompatibility of the point group with the Bravais lattice.
>>>>>>>>
>>>>>>>> However if I run the cif2cell with the following option:  
>>>>>>>> cif2cell v2h.cif -p pwscf --no-reduce  
>>>>>>>> --print-symmetry-operations I get 32 symmetry operations.
>>>>>>>>
>>>>>>>> The output of thermo_pw (0.5.0) running on QE 5.4.0 is:
>>>>>>>>
>>>>>>>> C_i (-1) is incompatible with the centered tetragonal Bravais lattice
>>>>>>>>  It is compatible with the
>>>>>>>>  triclinic Bravais lattice; ibrav=   14
>>>>>>>>
>>>>>>>>  You might want to change the Bravais lattice or to
>>>>>>>>
>>>>>>>>  understand why the symmetries are wrong beforecontinuing
>>>>>>>>  The point group or the Laue class are not used to reduce the  
>>>>>>>> number of
>>>>>>>>  computed tensor components
>>>>>>>>  Found symmetry operation: I + (  0.5000 -0.5000 -0.5000)
>>>>>>>>  This is a supercell, fractional translations are disabled
>>>>>>>>
>>>>>>>>  FFT mesh: (   50,   50,   50 )
>>>>>>>>
>>>>>>>>   2 Sym. Ops., with inversion, found
>>>>>>>>
>>>>>>>>
>>>>>>>>                                 s                        frac. trans.
>>>>>>>>
>>>>>>>>   isym =  1     identity
>>>>>>>>
>>>>>>>> cryst.   s( 1) = (     1          0          0      )
>>>>>>>>               (     0          1          0      )
>>>>>>>>               (     0          0          1      )
>>>>>>>>
>>>>>>>> cart.    s( 1) = (  1.0000000  0.0000000  0.0000000 )
>>>>>>>>               (  0.0000000  1.0000000  0.0000000 )
>>>>>>>>               (  0.0000000  0.0000000  1.0000000 )
>>>>>>>>
>>>>>>>>
>>>>>>>>   isym =  2     inversion
>>>>>>>>
>>>>>>>> cryst.   s( 2) = (    -1          0          0      )
>>>>>>>>               (     0         -1          0      )
>>>>>>>>               (     0          0         -1      )
>>>>>>>>
>>>>>>>>
>>>>>>>> cart.    s( 2) = ( -1.0000000  0.0000000  0.0000000 )
>>>>>>>>               (  0.0000000 -1.0000000  0.0000000 )
>>>>>>>>               (  0.0000000  0.0000000 -1.0000000 )
>>>>>>>>
>>>>>>>>
>>>>>>>>  point group C_i (-1)
>>>>>>>>  there are  2 classes
>>>>>>>>  the character table:
>>>>>>>>
>>>>>>>>    E     i
>>>>>>>> A_g    1.00  1.00
>>>>>>>> A_u    1.00 -1.00
>>>>>>>>
>>>>>>>>
>>>>>>>> Changing the Bravais lattice to 6 yields a different response:
>>>>>>>>
>>>>>>>> C_2h (2/m) is incompatible with the tetragonal Bravais lattice
>>>>>>>>  It is compatible with the
>>>>>>>>  monoclinic (c unique) Bravais lattice; ibrav=   12
>>>>>>>>  base centered monoclinic (c unique) Bravais lattice; ibrav=   13
>>>>>>>>  monoclinic (b unique) Bravais lattice; ibrav=  -12
>>>>>>>>  base centered monoclinic (b unique) Bravais lattice; ibrav=  -13
>>>>>>>>
>>>>>>>>  You might want to change the Bravais lattice or to
>>>>>>>>
>>>>>>>>  understand why the symmetries are wrong beforecontinuing
>>>>>>>>  The point group or the Laue class are not used to reduce the  
>>>>>>>> number of
>>>>>>>>  computed tensor components
>>>>>>>>  Found symmetry operation: I + ( -0.5000 -0.5000 -0.5000)
>>>>>>>>  This is a supercell, fractional translations are disabled
>>>>>>>>
>>>>>>>>  FFT mesh: (   60,   60,   64 )
>>>>>>>>
>>>>>>>>   4 Sym. Ops., with inversion, found
>>>>>>>>
>>>>>>>>
>>>>>>>>                                 s                        frac. trans.
>>>>>>>>
>>>>>>>>   isym =  1     identity
>>>>>>>>
>>>>>>>> cryst.   s( 1) = (     1          0          0      )
>>>>>>>>               (     0          1          0      )
>>>>>>>>               (     0          0          1      )
>>>>>>>>
>>>>>>>> cart.    s( 1) = (  1.0000000  0.0000000  0.0000000 )
>>>>>>>>               (  0.0000000  1.0000000  0.0000000 )
>>>>>>>>               (  0.0000000  0.0000000  1.0000000 )
>>>>>>>>
>>>>>>>>
>>>>>>>>   isym =  2     180 deg rotation - cart. axis [1,0,0]
>>>>>>>>
>>>>>>>> cryst.   s( 2) = (     1          0          0      )
>>>>>>>>               (     0         -1          0      )
>>>>>>>>               (     0          0         -1      )
>>>>>>>>
>>>>>>>> cart.    s( 2) = (  1.0000000  0.0000000  0.0000000 )
>>>>>>>>
>>>>>>>>   isym =  3     inversion
>>>>>>>>
>>>>>>>> cryst.   s( 3) = (    -1          0          0      )
>>>>>>>>               (     0         -1          0      )
>>>>>>>>               (     0          0         -1      )
>>>>>>>>
>>>>>>>> cart.    s( 3) = ( -1.0000000  0.0000000  0.0000000 )
>>>>>>>>               (  0.0000000 -1.0000000  0.0000000 )
>>>>>>>>               (  0.0000000  0.0000000 -1.0000000 )
>>>>>>>>
>>>>>>>>
>>>>>>>>   isym =  4     inv. 180 deg rotation - cart. axis [1,0,0]
>>>>>>>>
>>>>>>>> cryst.   s( 4) = (    -1          0          0      )
>>>>>>>>               (     0          1          0      )
>>>>>>>>               (     0          0          1      )
>>>>>>>>
>>>>>>>> cart.    s( 4) = ( -1.0000000  0.0000000  0.0000000 )
>>>>>>>>               (  0.0000000  1.0000000  0.0000000 )
>>>>>>>>               (  0.0000000  0.0000000  1.0000000 )
>>>>>>>>
>>>>>>>>
>>>>>>>>  point group C_2h (2/m)
>>>>>>>>  there are  4 classes
>>>>>>>>  the character table:
>>>>>>>>
>>>>>>>> I have spent a lot of time trying to figure this out but I am  
>>>>>>>> unable. Any advice would be most welcome,
>>>>>>>>
>>>>>>>> Best regards,
>>>>>>>> Gunnar
>>>>>>>>
>>>>>>>>
>>>>>>>>> On 16 Aug 2016, at 12:05, Andrea Dal Corso <dalcorso at sissa.it> wrote:
>>>>>>>>>
>>>>>>>>> On Sat, 2016-08-13 at 13:16 +0200, Gunnar Palsson wrote:
>>>>>>>>>> Dear Andrea,
>>>>>>>>>>
>>>>>>>>>> First I would like to tell you that I find your thermo_pw  
>>>>>>>>>> package extremely useful in many ways. I was inspired by  
>>>>>>>>>> your article J. Phys. Condensed Matter 26, 335401 (2014)  
>>>>>>>>>> and have been practising using your PS library v1.0 and the  
>>>>>>>>>> PAW potentials, for pure vanadium and niobium to calculate  
>>>>>>>>>> the thermoelastic properties. I have been thinking for  
>>>>>>>>>> quite a while about calculating the thermophysical  
>>>>>>>>>> properties and changes in free energy of metal hydrides,  
>>>>>>>>>> specifically vanadium hydride, in an attempt to determine  
>>>>>>>>>> the phase boundaries. I am also interested in the changes  
>>>>>>>>>> in the elastic constants with temperature and hydrogen. The  
>>>>>>>>>> question I have is whether one can use thermo_pw to  
>>>>>>>>>> calculate the Helmholtz free energy in the quasi harmonic  
>>>>>>>>>> approximation as a function of temperature for a supercell  
>>>>>>>>>> of vanadium with few hydrogen atoms. The size of the  
>>>>>>>>>> supercell determines what part of the phase diagram one can  
>>>>>>>>>> access in terms of concentration. So for 16 vanadium atoms,  
>>>>>>>>>> one can go from
>>>>>>>>> 1/
>>>>>>>>>> 16 to 16/16 in H/V concentration for example. It is my  
>>>>>>>>>> understanding that this requires ibrav=0, which may not be  
>>>>>>>>>> fully implemented? If not it would still be valuable to  
>>>>>>>>>> look into the stoichiometric hydride, V2H, and VH. The V2H  
>>>>>>>>>> belongs to space group 141. Finally, I have some neutron  
>>>>>>>>>> scattering data on hydrogen containing vanadium, and it  
>>>>>>>>>> would be extremely valuable to use the output of thermo_pw  
>>>>>>>>>> to calculate various neutron scattering cross sections and  
>>>>>>>>>> compare with experiment, which I can probably do.
>>>>>>>>>>
>>>>>>>>> Using ibrav=0 thermo_pw cannot use symmetry to reduce the number of
>>>>>>>>> tensor components that it calculates. Moreover it does not know the
>>>>>>>>> Bravais lattice number and presently it cannot calculate it, so it
>>>>>>>>> cannot find the automatic path, you have to provide it from input.
>>>>>>>>> I think it might also be possible to use ibrav=0 for phonon  
>>>>>>>>> calculations
>>>>>>>>> and for the calculation of harmonic thermal properties, but all the
>>>>>>>>> rest, such as the anharmonic properties is most probably  
>>>>>>>>> uncorrect. In
>>>>>>>>> any case I have not worked on this option so far, so I think  
>>>>>>>>> it is very
>>>>>>>>> probable that there are problems.
>>>>>>>>>
>>>>>>>>> Andrea
>>>>>>>>>
>>>>>>>>>> Best regards,
>>>>>>>>>> Dr. Gunnar Palsson,
>>>>>>>>>> Researcher,
>>>>>>>>>> Uppsala University.
>>>>>>>>>> _______________________________________________
>>>>>>>>>> Thermo_pw-forum mailing list
>>>>>>>>>> Thermo_pw-forum at qeforge.qe-forge.org
>>>>>>>>>> http://qeforge.qe-forge.org/mailman/listinfo/thermo_pw-forum
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Andrea Dal Corso                    Tel. 0039-040-3787428
>>>>>>>>> SISSA, Via Bonomea 265              Fax. 0039-040-3787249
>>>>>>>>> I-34136 Trieste (Italy)             e-mail: dalcorso at sissa.it
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> Thermo_pw-forum mailing list
>>>>>>>>> Thermo_pw-forum at qeforge.qe-forge.org
>>>>>>>>> http://qeforge.qe-forge.org/mailman/listinfo/thermo_pw-forum
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> Andrea Dal Corso                    Tel. 0039-040-3787428
>>>>> SISSA, Via Bonomea 265              Fax. 0039-040-3787249
>>>>> I-34136 Trieste (Italy)             e-mail: dalcorso at sissa.it
>>>>>
>>>>
>>>
>>
>> --
>> Andrea Dal Corso                    Tel. 0039-040-3787428
>> SISSA, Via Bonomea 265              Fax. 0039-040-3787249
>> I-34136 Trieste (Italy)             e-mail: dalcorso at sissa.it  
>> <mailto:dalcorso at sissa.it>






More information about the Thermo_pw-forum mailing list