Menu

IonicMinimize Stopped

2016-08-04
2016-09-13
1 2 > >> (Page 1 of 2)
  • Yunhao Zhao

    Yunhao Zhao - 2016-08-04

    Hi,

    I met a problem when calculating:

    SCF: Cycle: 48 G: -88.131930867871773 dG: -3.454e-04 |Residual|: 1.991e-03 |deigs|: 1.655e-03 t[s]: 828.78
    FillingsUpdate: mu: -0.104700000 nElectrons: 20.238893
    Linear fluid (dielectric constant: 78.4) occupying 0.762613 of unit cell: Completed after 10 iterations at t[s]: 829.28
    SCF: Cycle: 49 G: -88.131861594204665 dG: +6.927e-05 |Residual|: 6.092e-03 |deigs|: 6.326e-04 t[s]: 829.36

    I used default set of SCF.

    What is the problem and how can I continue my calculation?

    THank you!

    Yunhao

     
  • Ravishankar Sundararaman

    Hi Yunhao,

    It seems that your issue is with SCF convergence, not IonicMinimize.

    Indeed, at fixed potential, SCF has convergence issues. I would recommend that you use the default variational minimize instead (just drop the electronic-scf command) for fixed potential calculations.

    The SCF convergence for fixed-potential cases was improved in 1.2.1 and it seems like you are using 1.2.0, so you should update the code. Even so, I would still recommend variational minimize.

    This will all also be discussed in an upcoming paper on fixed potential algorithms; I will post an arxiv link here when its ready.

    Best,
    Shankar

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-08-05

    Hi Shanker,
    Thank you very much fro your reply, I did as you instructed and it went well. I have one more question, can Jdftx does NEB calculation with fixed potential? Is there any way to do this? I want to investigate activation energy under different fixed potential and thus I need to combine NEB with Jdftx.

    Sincerely,
    Yunhao

     
  • Ravishankar Sundararaman

    Hi Yunhao,

    That is not currently an official feature, but will become available soon (in a few months) when we revive the interface to ASE.

    You might be able to implement a simple interface between ASE and JDFTx in the meantime i you're familiar with python: all you need to do is construct a JDFTx input file given positions from ASE, and then return the energy and forces to ASE. See the instructions here: https://wiki.fysik.dtu.dk/ase/development/calculators.html. We will do the same in a general way when we implement it, but you can hack up a quick version of this specific to your problem for now.

    Best,
    Shankar

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-08-05

    Hi Shankar,
    Thank you very much, but the link you gave cannot be opened. Can you give me a available one?

    Thanks,
    Yunhao

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-08-09

    Dear Shankar,

    It's very mice of you for your many helps. I encountered an results using Jdftx that seems doesn't make sense. I attached it as "structure", in which there are two structures calculations. In "1.58" files you can see that two H are bonded with O and Pt respectively, and they nearly form a H molecule. In "2" you can see I let a H2 molecule be free. I fixed all the two structures and then calculate their energy, but to my surprise, the free H2 has larger higher energy than bond H. I think it does not make sense, because according to my experience, when I used vasp, when there is a free H2 molecule formed, the total energy will be much lower than that with H atoms bonded with the system. But in my case you can see it is reversed. Can you please help check what is the problem?

    Also, when I use Jdftx to optimize structure, it sometimes cannot do well as vasp. Take "1.58" file as an example, when I use vasp, the H bonded with O can find the H bonded with Pt very quickly, but in Jdftx, it cannot find and bond each other in solvated environment, how should I establish such systems to optimize it correctly?

    Thank you very much!

    Best,
    Yunhao

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-08-09

    Also ,I want to add that if I fix the Pt and water molecule ,and just relax the H2 molecule, the H-H bond will break and each H of it will bind with Pt or H2O again, so in my case it seems that the program cannot identify H2 is a molecule. But in vasp when I do the same processure, the H2 will still be a molecule and the 2 H will move together...

     
  • Ravishankar Sundararaman

    Hi Yunhao,

    I still don't understand what you are trying to calculate: is it really a single Pt atom next to H2/ H2O that you want?

    In the files you attached, you don't seem to be running ionic-minimize at all. Also you seem to be missing the smearing command, so the electronic structure for the open-shell Pt atom will be wrong.

    Finally, even if you fix all this, the optimum geometries with solvation miht be different from the vacuum case. So to compare to VASPs optimization, look at the vacuum clculation with JDFTx;. But first make sure you have the right geometries (Pt slab or really an atom, and correct smearing flags)..

    Best,
    Shankar

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-08-10

    Dear Shankar,
    Thank you very much for your interpretation, I am very sorry about the confusion I caused.I am a fresh man in Jdftx so I always have many questions, it's really kind of your for your help.

    I would like to introduce the system I am calculating. I am modeling the hydrogen evolution reaction, of which is so called Heyrovsky steps. Fisrt I fix one Pt,as shown in the attachment before and attachment in this ticket, then one H atom will adsorbed on the Pt. Then I introduce a hydronium, one of the H atoms of the hydronium will get close to the H on Pt, and these two H will finally form H2 molecule under fixed potential. I am trying to investigate the activation barrier of this reaction using NEB, so I have to get its initial and final states.

    In the last attachments "2", I was tyring to optimize the final state, that is an isolated Pt atom, a H2O(the original hydronium lost its one H), and a H2 formed by the HER. The other attachmen called "1.58" is the former state before a H2 formed. (I want to explain that my advisor didn't allow me to use NEB now, he let me to fix atoms at different positions and calculate the energy, to evaluate the activation barrier roughly, just as NEB, but manually.)

    After reading your last answer, I tried to add elec-ex-corr Hartree-Fock to have a test(not persuing accuracy)but the energy seems to low in the single Pt case compared with former cases with H adsorbed on Pt and the calculation goes much more slowly, I would like to know if it is right and if I want to compare the energy with the system of one single Pt(the "2" attachment) and the energy with H-Pt(the "1.58" attachment),should I add smearing flag on both cases? Or just do the smearing when a single Pt occurs (but in the two case the energy has so big a difference...about 20hartree) In general, I expect to see a result that the energy with H2 and single Pt and H2O is a little lower than the system which there are H binding with Pt and H2O.

    Also, I have another question, that is still about optimization, I attached the files in this ticket. It is the initial state supposed to got I mentioned before, that is a hydronium gets close to the H-Pt system. I try to optimize the structure in neutral system. I did it before without charge, but I found it cannot be optimized and the system will be diperse, so I used elec-initial-charge to add one -1 charge to represent H3O+ and then set lower accuracy(ionic-minimize energy=10e-4 and force=10e-2) to optimize it. This time it was successful and it can converge as expected. But when I set a higher accuracy, the default settings of ionic-minimize, it cannot be optimized anymore, you can see it in the .out files of this attachment. I want to know according to my goal, if what I did is right and I would like to know what is the problem and how to fix it?

    Thank you again for your patience, I have learned much more from you than anyone before, I will study Jdftx harder.

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-08-10

    Also, if I want to continue a stopped calculation, how can I let it read the wavefunction to get a good guess, do I need just to submit the job and then it will read former wavefunction automatically?

    THank you.

     
  • Ravishankar Sundararaman

    Hey Yunhao,

    I imagine that you are trying to describe these reactions on the surface of a Pt electrode? An isolated Pt atom is a terrible model for the electrode, and all the files you have attached above have H, H2O etc. next to a single Pt atom! I would imagine that all the geometries and energies you get from these calculations are meaningless. If you are actually interested in setting up a surface, start from the tutorials in http://jdftx.org/SurfaceTutorials.html and then make a supercell and add the H and H2O as adsorbates.

    In any case, you definitely need smearing when you run calculations with Pt, whether in isolated or slab form. The energy difference cannot be 20 Hartrees: that is indicative of omething else wrong eg. an imbalance in the number of O and H atoms in your subtraction. Did you perhaps have an extra explicit water molecule in one of the calculations? (That will account for something like ~ 17 Hartrees.)

    All the issues with geometry optimization etc. will improve once you make the system physical, so there isno point figuring out the details of that yet.

    As for your question on how to continue calculations, see the discussion in http://jdftx.org/GeometryOpt.html where the initial-state command is introduced. Also note that in order for the updated ionic positions to be read in, you must include an ionpos file (that gets replaced on output) from the input file, as shown in the geometric optimization tutorial.

    Best,
    Shankar

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-08-10

    Hi Shankar,
    Thank you very much! I now understand most of my results that are maybe meaningless. Actually, my final goal is to investigate one Pt atom supported on MoS2 slab as the electrode and to see its HER properties, that is generate H2. Do you expect it will be different for one Pt isolated and one Pt supported on the slab? Otherwise I don' t hope my final goal is meaningless, so I would like to get your suggestion... Thank you!

    And for the big energy difference, I did have an explicit water molecule in the calculation, totally 5 cases, but only one when the H2 moves far away from the Pt and H2O will cause a very low energy, in other cases, when H2 is around the Pt and H2O, the energy seems no such big differece... So I am very confused about that.

    Anyway, thank you very much for your help, I think I have to talk with my advisor to change a model for testing...

     
  • Ravishankar Sundararaman

    Hi Yunhao,

    It is most likely going to be quite different, so you should definitely include at least one layer of the MoS2 support; that won't make the calculations much more expensive.

    Can you post the output files for the two cases of Pt+H2O+H2 (one with H2 close and one with H2 far) that are exhibiting the large difference in energy?

    Best,
    Shankar

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-08-10

    Hi Shankar,

    I attached the cases you needed, "smear" of the files are H2 closer to Pt and H2O, and have about the same energy with other cases, but "5" the H2 moves farther, but has a much lower energy. I have to say that in the "smear" case, open smearing and exc-correlation doesn't let the energy change much, but in "5", if I drop smearing, its energy will be close to "smear" and other cases, but if I open smearing, the energy will drop very much... you can check the files.

    Thank you for your earnest again!

     
  • Ravishankar Sundararaman

    Hi Yunhao,

    The two calculations have different numbers of electrons. "5" has 28 electrons while "smear" has 26 electrons.

    You also have too small of a box size for charged systems; there isn't enough room for the fluid to screen interactions. Switch the box to at least 15 in teh first two dimensions, add coulomb truncation and cations & anions to the solvation model.

    Finally, reduce your smearing. The width is in Hartrees, so you have currently selected 0.1 Hartrees ~ 3 eV! Smearing width ~ 0.01 Hartrees is typical.

    Shankar

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-08-10

    Hi Shankar,

    Thanks for your help! It' svery nice of you to help me solve in details.. But I am still not very clear why the number of electrons is different...

    Also, I believe in both cases I use a width of 0.01 as you mentioned.

    Best,
    Yunhao

     
  • Ravishankar Sundararaman

    Oh, I didn't notice the bigger issue: you are using different pseudopotentials for the two calculations! GBRV for one and SG15 for the rest; that would of course explain the large energy differences. The number of electrons was only a side effect; the two Pt psp's differ in whether 5s electrons are treated as valence or core.

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-08-10

    Oh, that is the case! Thank you so much!
    Yunhao

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-09-06

    Hello Shankar,

    I am going to calculate a system under water environment and fixed potential. But I am confused of how to transfer my POSCAR in vasp into proper .ionpos files of jdftx. The system I want to calculate is shown in the POSCAR file attached in this ticket. My way is to first transfer it into .xyz file (see POSCAR.xyz) and then give it cell parameters (in common.in). But when I do this, it reported errors where you can check it in Charged.out. Also, how to fix all the ion positions automatically? I would like to calculate the total energy of the system with all atoms fixed.

    Thank you very much!

    Best,
    Yunhao

     
  • Ravishankar Sundararaman

    I think your issue is that VASP lattice vectors and coordinates are in Angstroms, whereas JDFTx's are in bohrs. Make sure you did these unit conversions correctly; that is the most commons ource of this type of error.

    To calculate energy at fixed atom positions, simply omit the ionic-minimize command. (You could also set the move scales in the ion command to zero in order to fix only som eo fthe atom positions.)

    Best,
    Shankar

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-09-06

    Hi Shankar,
    THank you very much for your reply. I followed your instruction and then generate the ionpos file from xyz file again, and I modified the lattice parameters as bohr, I am sure all these files are OK, but the issue still occur. I check the output files called Charged.out, and the warning seems very strange. For example, as you can see in the Charged.out attached,
    it says:"
    WARNING: H #0 and H #4 are closer than the vector-sum of their core radii."

    However, I have only four H , so #0 and #4 are just the same one! IAll the other warnings are just like this, the same situation. I have checked other files and find no mistake. I am not sure how this issue happens and how to solve it.

    Very appreciated for your help.

    Best,
    Yunhao

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-09-06

    OH, for this issue, I included the POSCAR.ionpos twice.... I am sorry for that...

     
  • Ravishankar Sundararaman

    Oh ok cool, glad you figured it out!

     
  • Yunhao Zhao

    Yunhao Zhao - 2016-09-06

    Hi Shankar,
    I am sorry I cannot still figure this problem out totally. I corrected the issue reported last ticket, but there is still error about the core radii. I am sure this time all the structure transfer is okay, but it cannot still read it. I put all the files in the attachment, POSCAR is the initial structure I want to calculate by jdftx, POSCAR.xyz is the transferred files from POSCAR, and POSCAR.ionpos is the final position file for jdftx, which I got by using "xyzToIonpos POSCAR.xyz" command. I set the lattice as you can find. The error is in Charged.out and it says: WARNING: Mo #4 and Mo #5 are closer than the vector-sum of their core radii."

    I really don't know where is wrong, I have converted all the unit inot bohr and it won't be the issue of that.

    THank you very much !

    Yunhao

     
1 2 > >> (Page 1 of 2)