Static calculation with SCAN?

What is the best way to do a static calculation with SCAN? I can use wf_scan_opt for the relaxation, or else directly call pymatgen’s MVLScanRelaxSet, but I am not sure how to make the static calculation use the appropriate POTCARs. Setting PMG_VASP_PSP_DIR to the POTPAW_54 directory works fine for the optimization, but for the static calculation it gives the error “You do not have the right POTCAR with functional PBE and label Ce in your VASP_PSP_DIR”. I tried passing vasp_input_set=MVLScanRelaxSet(structure, potcar_functional=‘PBE_54’) to OptimizeFW but this didn’t make a difference, it still gave the same error.

I don’t use the SCAN functional, so I don’t know what all the input settings look like. However, I believe this is because StaticFW use a WriteVaspStaticFromPrev. Even though you are passing your own input set, that function is hardcoded to use MPStaticSet.from_prev_calc if a previous (relaxation) calculation exists.

A possible workaround is to pass vasp_input_set_params to StaticFW instead of vasp_input_set, but even this only gives you control only the user_incar_settings and control over the keyword arguments over MPStaticSet.from_prev_calc. Maybe those are enough for you to control (again, I don’t use SCAN)?

https://github.com/hackingmaterials/atomate/issues/238 is tracking this issue

···

On Monday, August 13, 2018 at 1:11:07 PM UTC-4, Steven Hartman wrote:

What is the best way to do a static calculation with SCAN? I can use wf_scan_opt for the relaxation, or else directly call pymatgen’s MVLScanRelaxSet, but I am not sure how to make the static calculation use the appropriate POTCARs. Setting PMG_VASP_PSP_DIR to the POTPAW_54 directory works fine for the optimization, but for the static calculation it gives the error “You do not have the right POTCAR with functional PBE and label Ce in your VASP_PSP_DIR”. I tried passing vasp_input_set=MVLScanRelaxSet(structure, potcar_functional=‘PBE_54’) to OptimizeFW but this didn’t make a difference, it still gave the same error.

After looking into this some more, I think I might be able to use the add_modify_potcar powerup to achieve this. I can also use add_modify_incar to set METAGGA = SCAN for the entire workflow.

···

On Wed, Aug 15, 2018 at 8:18 AM Brandon B [email protected] wrote:

I don’t use the SCAN functional, so I don’t know what all the input settings look like. However, I believe this is because StaticFW use a WriteVaspStaticFromPrev. Even though you are passing your own input set, that function is hardcoded to use MPStaticSet.from_prev_calc if a previous (relaxation) calculation exists.

A possible workaround is to pass vasp_input_set_params to StaticFW instead of vasp_input_set, but even this only gives you control only the user_incar_settings and control over the keyword arguments over MPStaticSet.from_prev_calc. Maybe those are enough for you to control (again, I don’t use SCAN)?

https://github.com/hackingmaterials/atomate/issues/238 is tracking this issue

On Monday, August 13, 2018 at 1:11:07 PM UTC-4, Steven Hartman wrote:

What is the best way to do a static calculation with SCAN? I can use wf_scan_opt for the relaxation, or else directly call pymatgen’s MVLScanRelaxSet, but I am not sure how to make the static calculation use the appropriate POTCARs. Setting PMG_VASP_PSP_DIR to the POTPAW_54 directory works fine for the optimization, but for the static calculation it gives the error “You do not have the right POTCAR with functional PBE and label Ce in your VASP_PSP_DIR”. I tried passing vasp_input_set=MVLScanRelaxSet(structure, potcar_functional=‘PBE_54’) to OptimizeFW but this didn’t make a difference, it still gave the same error.

You received this message because you are subscribed to the Google Groups “atomate” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/d/msgid/atomate/ea339209-e377-4edc-b926-47a71cc4ec6c%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

We are brainstorming some reorganization to atomate to make these sorts of changes easier and more natural in the future, but it might be some time before they are released… Glad you were able to find a solution in the meantime

···

On Friday, August 17, 2018 at 11:02:33 AM UTC-7, Steven Hartman wrote:

After looking into this some more, I think I might be able to use the add_modify_potcar powerup to achieve this. I can also use add_modify_incar to set METAGGA = SCAN for the entire workflow.

On Wed, Aug 15, 2018 at 8:18 AM Brandon B [email protected] wrote:

I don’t use the SCAN functional, so I don’t know what all the input settings look like. However, I believe this is because StaticFW use a WriteVaspStaticFromPrev. Even though you are passing your own input set, that function is hardcoded to use MPStaticSet.from_prev_calc if a previous (relaxation) calculation exists.

A possible workaround is to pass vasp_input_set_params to StaticFW instead of vasp_input_set, but even this only gives you control only the user_incar_settings and control over the keyword arguments over MPStaticSet.from_prev_calc. Maybe those are enough for you to control (again, I don’t use SCAN)?

https://github.com/hackingmaterials/atomate/issues/238 is tracking this issue

On Monday, August 13, 2018 at 1:11:07 PM UTC-4, Steven Hartman wrote:

What is the best way to do a static calculation with SCAN? I can use wf_scan_opt for the relaxation, or else directly call pymatgen’s MVLScanRelaxSet, but I am not sure how to make the static calculation use the appropriate POTCARs. Setting PMG_VASP_PSP_DIR to the POTPAW_54 directory works fine for the optimization, but for the static calculation it gives the error “You do not have the right POTCAR with functional PBE and label Ce in your VASP_PSP_DIR”. I tried passing vasp_input_set=MVLScanRelaxSet(structure, potcar_functional=‘PBE_54’) to OptimizeFW but this didn’t make a difference, it still gave the same error.

You received this message because you are subscribed to the Google Groups “atomate” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/d/msgid/atomate/ea339209-e377-4edc-b926-47a71cc4ec6c%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.