Simulations dynamically handled by ASE
Cc: @mscheidg
This is a comment on the general issue on how to parse calculations "dynamically handled by ASE". This aroused while solving #273 (closed) (which is now fixed, in the sense that we can parse what the user uploaded).
In this post I would like to draw attention to the fact that in a large number of cases, the main results of calculations "dynamically handled by ASE" are not included in the output files uploaded by the users (see below). Solving this situation may require consensus within / between NOMAD & ASE.
Background: An inspection of the Q-Espresso input & output files associated with #273 (closed) (now solved) revealed that most of these calculations were relaxation tasks, as the Espresso input file contained
calculation='relax'
...
ion_dynamics='ase3'
However, only the starting atom coordinates are reported, i.e., the intermediate & final coordinates are missing in the Espresso output file; this is critical, since the task was a structural relaxation. Yet, such file had a clean end, as usual, with a timing report and a 'JOB DONE' message. See for instance (repo link)
entry_id: vF8g488PLu2pn0N4omfN0-MBljoj
upload_id: evKd-Lb8S7C5C7s-Ld3MxA
ASE's documentation for the Espresso's ion_dynamics = ase3
reads "dynamic communication between Quantum Espresso and python, in this case ASE updates coordinates during relaxation"
ASE (link).
My interpretation is that ASE calls specific subroutines from Espresso in order to perform a given task, e.g, a relaxation. But unfortunately, for the cases I inspected, it seems that ASE didn't call the Espresso subroutines that report/print the results to the Espresso output file (stdout). Instead, it seems that such results were read "on the fly" and collected in the ASE script/notebook driving the simulation.