You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have been struggling for quite some time now trying to run something as simple as a structure relaxation with variable cell and atomic positions. The problem occurs when I use the following setup :
MOTION/CELL_OPT/TYPE GEO_OPT
and seems to be due to the fact that in this case CP2K runs the calculation in sort of a tree architecture, wherein each GEO_OPT is a seperate child calculation producing individual output files in the form:
aiida-GEO_OPT-N.out
aiida-GEO_OPT-N-1.cell
...
with N seemingly corresponding to the CELL_OPT step index (zero-based indexing).
The calculation also produces aiida-1_M.restart files where M also seems to correspond to the CELL_OPT step index, but in one-based indexing.
This complex file architecture of course interferes with the retrieve of files within aiida. I tried to avoid this problem by imposing fixed file names in the input parameters with the '=' sign in a syntax of the form: {"FILENAME" : "=aiida-1.frc.xyz}
in what I hope a appropriate sections of the CP2K input.
I managed to do this to a certain extent, still have problems at parsing:
151272 1h ago Cp2kCalculation ⨯ Excepted
(aiida-2.5.0) $ verdi process report 151272
*** 151272: None
*** (empty scheduler output file)
*** (empty scheduler errors file)
*** 1 LOG MESSAGES:
+-> REPORT at 2024-12-18 15:49:45.260334+01:00
| [151272|Cp2kCalculation|on_except]: Traceback (most recent call last):
| File "/home/cadarp02/miniforge3/envs/aiida-2.5.0/lib/python3.11/site-packages/plumpy/process_states.py", line 228, in execute
| result = self.run_fn(*self.args, **self.kwargs)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| File "/home/cadarp02/miniforge3/envs/aiida-2.5.0/lib/python3.11/site-packages/aiida/engine/processes/calcjobs/calcjob.py", line 678, in parse
| exit_code_retrieved = self.parse_retrieved_output(retrieved_temporary_folder)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| File "/home/cadarp02/miniforge3/envs/aiida-2.5.0/lib/python3.11/site-packages/aiida/engine/processes/calcjobs/calcjob.py", line 789, in parse_retrieved_output
| exit_code = parser.parse(**parse_kwargs)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| File "/home/cadarp02/aiida/plugin_src/aiida-cp2k/aiida_cp2k/parsers/__init__.py", line 44, in parse
| trajectory = self._parse_trajectory(last_structure)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| File "/home/cadarp02/aiida/plugin_src/aiida-cp2k/aiida_cp2k/parsers/__init__.py", line 187, in _parse_trajectory
| trajectory.set_trajectory(
| File "/home/cadarp02/miniforge3/envs/aiida-2.5.0/lib/python3.11/site-packages/aiida/orm/nodes/data/array/trajectory.py", line 138, in set_trajectory
| self._internal_validate(stepids, cells, symbols, positions, times, velocities)
| File "/home/cadarp02/miniforge3/envs/aiida-2.5.0/lib/python3.11/site-packages/aiida/orm/nodes/data/array/trajectory.py", line 65, in _internal_validate
| raise ValueError('TrajectoryData.cells must have shape (s,3,3), with s=number of steps')
| ValueError: TrajectoryData.cells must have shape (s,3,3), with s=number of steps
Below is the parameter Dict input used for the Cp2kCalculation:
Could you please help me figure out if, how and where precisely in the parameter input I can properly control the output architecture to allow AiiDA to correctly retrieve the relevant outputs and succesfully obtain in particular:
Dear aiida-cp2k developpers,
I have been struggling for quite some time now trying to run something as simple as a structure relaxation with variable cell and atomic positions. The problem occurs when I use the following setup :
MOTION/CELL_OPT/TYPE GEO_OPT
and seems to be due to the fact that in this case CP2K runs the calculation in sort of a tree architecture, wherein each GEO_OPT is a seperate child calculation producing individual output files in the form:
with N seemingly corresponding to the CELL_OPT step index (zero-based indexing).
The calculation also produces aiida-1_M.restart files where M also seems to correspond to the CELL_OPT step index, but in one-based indexing.
This complex file architecture of course interferes with the retrieve of files within aiida. I tried to avoid this problem by imposing fixed file names in the input parameters with the '=' sign in a syntax of the form:
{"FILENAME" : "=aiida-1.frc.xyz}
in what I hope a appropriate sections of the CP2K input.
I managed to do this to a certain extent, still have problems at parsing:
Below is the parameter Dict input used for the Cp2kCalculation:
Here the content of the remote folder at the end of the calculation:
The content of the cell files is as follows:
Could you please help me figure out if, how and where precisely in the parameter input I can properly control the output architecture to allow AiiDA to correctly retrieve the relevant outputs and succesfully obtain in particular:
with the cell properly read from the output files.
Thank you very much for your help.
Best regards.
Sylvian.
The text was updated successfully, but these errors were encountered: