aiidalab / aiidalab-qe

AiiDAlab App for Quantum ESPRESSO
https://aiidalab-qe.readthedocs.io/
MIT License
12 stars 14 forks source link

UI experience #102

Open mkotiuga opened 3 years ago

mkotiuga commented 3 years ago

Nice work on aiida-lab and the qe-app. After about a day messing around, I have some comments on my experience. Here are some comments on the general UI (see other issues for comments on magnetic run submission, Bandstructure, connection to CSCS)

Speed - maybe this is an issue on my end, but sometimes things could be very slow. Starting the server the first time took ~10 min and then once or twice it crashed and restarting it took ~5 min. Also loading the process list pages took a noticeable amount of time. I didn't time it, but after clicking through that once, I just resorted using the aiida commands in a terminal window. Those are slow much slower relative to using aiida on my workstation, but I guess that is to be expected.

Getting setup - when setting up the connection to CSCS, I didn't notice the "computer database" box at the top at first. I started doing it all by hand, and then noticed that box. Is there a reason that the database isn't pulled automatically when the box is 'maximized'? Just an idea for the future, but depending how it is used, maybe there is a way to set up the code and computer (I know that these are two difference steps in aiida) in one go to make the user experience more seamless.

Running a calculation: Select structure:

Workflow:

Status and results: -Random: why is the 'local' computer time in GMT, not CET - GMT+2? I guess this doesn't really matter, but it would be nice if it could be the local time of the user, or at least CET.

'process list' feature

mbercx commented 3 years ago

Hi @mkotiuga, thanks for the extensive feedback! I'll just make a little checklist here of smaller issues to fix, and maybe move some items that require more extensive changes to separate issues. πŸ˜„

TODO

Discussion

In general, have an issue calling a 'non-spin-polarized' calculation 'non-magnetic'. Of course a non-spin-polarized calculation will ALWAYS be non-magnetic, but you can do a spin polarized calculation and get a non-magnetic result. Furthermore, you could probably cook up a case where you chose "ferromagnetic" and you get a non-magnetic result in the end - For example, I would guess this would happen for elemental Ca

Although I understand your point, the QE app is aimed at users that don't understand what a "non-spin-polarised" calculation means. I think it's ok here to sacrifice some precision in language to make it easier for non-experts to understand, but if you have a suggestion that can accomplish both, let me know πŸ™ƒ.

I think a lot of people would be interested in the project DOS, and this shouldn't require an additional calculation overall.

We're working on adding that, see https://github.com/aiidalab/aiidalab-qe/issues/62. There is also an open issue on the aiida-quantumespresso repo about increasing the flexibility, so I at some point that will be integrated with the QeAppWorkChain.

Random: why is the 'local' computer time in GMT, not CET - GMT+2? I guess this doesn't really matter, but it would be nice if it could be the local time of the user, or at least CET.

This may be related to the fact that this is actually running on AWS in Ireland. @csadorf I suppose that this can be fixed?

Really nice if there was some indication of how the calculation is progressing, but I know aiida doesn't parse anything until the end, and the target users are not 'experts' so maybe this is just a waste.

If you select the actual calculation, you can see the tail of the output due to some magic from @csadorf! There was a suggestion to maybe show this (and make it scrollable) at all times, but then the question can become "which output you want to show when there are multiple calculations running?".

After a run completes, in come cases I had to 'refresh' to get the band structure to display.

Yes, I've also noticed this. Not sure why, but I hope it gets fixed when I update to Dou's widget instead of this old visualizer.

I didn't continue to use it b/c of the speed but once you have selected a run type, ie 'killed', you can select another run type, but there is no option 'all' to go back to the initial process list (which is the output like 'verdi process list -a')

I'm not entirely sure what you mean here. Where would you like to go back to the initial process list?

mkotiuga commented 3 years ago

Hi @mbercx - thanks for the initial processing off my long feedback. Hopefully my experience can be helpful! I think you got all the point I was making/raising - of course you can ignore some of my suggestions. I just have a few follow ups.


Quickly on the non-spinpolarized/non-magnetic. For the edge cases I mentioned above, I do think this is an important distinction, even for the non-expert user. Maybe there is a better name, but the idea of having local moments exists in the actual materials - its not just a construct of our calculations. Maybe its worth 'polling' some experimentalists to see how they understand the terminology so the nomenclature can be as clear & precise as possible. Perhaps a little info box (like one clicks on a '?' or 'i') could go into more detail. I guess I keep thinking of the following scenario: an experimentalist is working on a paramagnetic, insulating material (natural I go to the nickelates), where there are no pathological singlets/triplets formed between magnetic sites. They choose non-magnetic and insulator- but this calculation would result in a metal (I am ignoring the fact that you would need a U here - that is a completely different can of worms that you have not touched yet). Anyway, I may just be beating a dead horse at this point....

Really nice if there was some indication of how the calculation is progressing, but I know aiida doesn't parse anything until the end, and the target users are not 'experts' so maybe this is just a waste.

If you select the actual calculation, you can see the tail of the output due to some magic from @csadorf! There was a suggestion to maybe show this (and make it scrollable) at all times, but then the question can become "which output you want to show when there are multiple calculations running?".

Back to the idea of a non-expert user - the tail of the output may not be helpful to them. I was thinking something like, in the case of an scf calculation, the scf step and the last energy difference. I do understand, that this is not something aiida is doing on the fly, however I think it could be managed with a grep/awk one-liner. Of course this would be run-type specific. All this said, maybe to the non-expert user, this isn't particularly useful either.

I didn't continue to use it b/c of the speed but once you have selected a run type, ie 'killed', you can select another run type, but there is no option 'all' to go back to the initial process list (which is the output like 'verdi process list -a')

I'm not entirely sure what you mean here. Where would you like to go back to the initial process list?

I meant from the 'process list' feature from the main page of aiidaLab. When you open the page you get the full process list (something like verdi process list -a). There is a menu to select process types, (ie killed). You can switch between process types, but once you choose one you cannot got back to all processes. I guess you can refresh (I didn't try that), but it would just be nice to be able to go back to the full process list.

yakutovicha commented 2 years ago

[ ] Improve visibility of computer database.

Is it safe to say that the new CompResources widget fixes that?

csadorf commented 2 years ago

[ ] Improve visibility of computer database.

Is it safe to say that the new CompResources widget fixes that?

Yes, I'd say so, @mbercx do you agree?

mbercx commented 2 years ago

Without question! Box checked βœ