-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support using customize pseudopotential #435
Conversation
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #435 +/- ##
==========================================
+ Coverage 53.42% 56.52% +3.10%
==========================================
Files 26 26
Lines 2104 2321 +217
==========================================
+ Hits 1124 1312 +188
- Misses 980 1009 +29
Flags with carried forward coverage won't be shown. Click here to find out more.
☔ View full report in Codecov by Sentry. |
9b63c35
to
0f748b1
Compare
@AndresOrtegaGuerrero this new widget borrow some idea from your magnetization setting widget. Let's see if we can converge them into a generic widget for setting things that dynamically changed with structure and depend on structure kinds. |
@unkcpz I really like the idea, specially because I was doing a test with PseudoDojo using the cutoff from the app, and it seems the cutoff I obtained were not well converged. So it would be nice if it also appears what is the overall wfc and rho cutoff use for the simulation. In case the user wants to do a convergence test (or just increase the cutoff) |
@unkcpz I think you should add like a caption that explains the user they can upload and/or modify each Pseudo |
Good point, the explanation on how the cutoffs for the pw calculation are get from cutoffs of pseudos should also explain. |
Yes maybe we can make a widget like DynamicalSettings |
Hi @AndresOrtegaGuerrero, can you give this a second look? It is already from my side. For making it generic, I'll open an issue for future implementation, I notice @mikibonacci also mention it in the comment of plugin UI pr. It is certainly worth doing. |
@unkcpz thank you!, I just check it looks good for me. My opinion will be that you should include two widgets to define the wfc and rho cutoff (in case the ones defined is not enough). I am saying out of experience, i tried to run something with the app using PseudoDojo, to later realized that the cutoffs were really off and not converged. Then to be forced to stop using the App since i didn't have control over it. I think if you are already modifying the pseudos you should include this. |
Ah! I see your point. Actually, you can just set the ecutwfc/ecutrho higher for one pseudo and it will be used. But you are right, this looks like a non-standard trick. I'll try to implement that. |
Emm.... Right after I start, I feel it does not fully make sense to have one more widget to set it. An extra cutoff widget are a but redundant as the one for setting pseudos cutoffs separately. |
@unkcpz I would suggest that for the design, there should be only control over ecutwfc and ecutrho (of the calculation). The user can upload a different functional per element or kind defined. I dont think there is need to display or control the cutoff of each element. In particular if the user is going to combine US , PAW or NC pseudos. The user rather have control over the ecutwfc and ecutrho of the calculation. |
I agree. Then it'll be after the pseudo, I display the cutoffs, if it is customized pseudo, I show "No recommended ecutwfc".
Why you think this is a special case? In my SSSP verification, US/PAW is used, I use dual=8 and for NC use dual=4 and run convergence. Do you mean sometimes higher cutoffs are required? |
What did you mean by dual? You meant the ration between ecutwfc and ecutrho, like in SSSP is ecutrho = (8 to 12) * ecutrho and in NC is ecutrho = 4* ecutwfc ? |
Yep. But anyway, I think we have a good plan for how to improve it. |
9c6b954
to
1161f09
Compare
1161f09
to
3fb264b
Compare
for more information, see https://pre-commit.ci
3fb264b
to
6e483a8
Compare
@unkcpz Yes, you can have like only two widget to control ecutwfc and ecutrho. once you select the pseudopotential the value of these two widgets get set by the values given by aiida-pseudo. Then the user can decide to increase them accordingly. In a future release, once the plugin PR is merge, we can even make one tab to run a convergence workflow when the user can select a list of ecutwfc to test. |
Hi @AndresOrtegaGuerrero, I did the change, please have another look. |
@unkcpz Thank you! , It looks great to me. I did a few test didn't find any issue. One suggestion I would add is that if would be good that the cutoffs wfn and rho, should be included in the override of pseudos |
pw_overrides[key].setdefault("pw", {"parameters": {"SYSTEM": {}}}) | ||
pw_overrides[key]["pw"]["parameters"]["SYSTEM"][ | ||
"ecutwfc" | ||
] = self.pseudo_setter.ecutwfc | ||
pw_overrides[key]["pw"]["parameters"]["SYSTEM"][ | ||
"ecutrho" | ||
] = self.pseudo_setter.ecutrho |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See here how ecutwfc/ecutrho in pw_overrides affect the bulider.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, that i tested. What i meant was in the GUI, that the widget is not available if the checkbox is activated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see~ I don't want to make this change for now. 1. It may not be proper to control the cutoffs setup with pseudo override. 2. we need more discussion on what needs to be overridden, how to display the override checkbox.
If we follow the other parameters that exist or are added by you, there in principle should be a checkbox for every parameter. But maybe that is not necessary. @superstar54 was suggesting since the user on this page would anyway want/know how to change things, maybe we don't need checkboxes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's discuss this on the issue #444
Not quite sure what you mean. It is passed to the builder through the override and it will change the summary report when it is changed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Look good to me
The use case comes from I need to test Li pseudopotential I generated and plot the bands/pdos.
PseudoUploadWidget