pyiron.testing.randomatomistic module¶
-
class
pyiron.testing.randomatomistic.AtomisticExampleJob(project, job_name)[source]¶ Bases:
pyiron.testing.randomatomistic.ExampleJob,pyiron.atomistics.job.interactive.GenericInteractiveExampleJob generating a list of random numbers to simulate energy fluctuations.
- Parameters
project (ProjectHDFio) – ProjectHDFio instance which points to the HDF5 file the job is stored in
job_name (str) – name of the job, which has to be unique within the project
-
.. attribute:: job_name name of the job, which has to be unique within the project
-
.. attribute:: status - execution status of the job, can be one of the following [initialized, appended, created, submitted, running,
aborted, collect, suspended, refresh, busy, finished]
-
.. attribute:: job_id unique id to identify the job in the pyiron database
-
.. attribute:: parent_id job id of the predecessor job - the job which was executed before the current one in the current job series
-
.. attribute:: master_id job id of the master job - a meta job which groups a series of jobs, which are executed either in parallel or in serial.
-
.. attribute:: child_ids list of child job ids - only meta jobs have child jobs - jobs which list the meta job as their master
-
.. attribute:: project Project instance the jobs is located in
-
.. attribute:: project_hdf5 ProjectHDFio instance which points to the HDF5 file the job is stored in
-
.. attribute:: job_info_str short string to describe the job by it is job_name and job ID - mainly used for logging
-
.. attribute:: working_directory working directory of the job is executed in - outside the HDF5 file
-
.. attribute:: path path to the job as a combination of absolute file system path and path within the HDF5 file.
-
.. attribute:: version Version of the hamiltonian, which is also the version of the executable unless a custom executable is used.
-
.. attribute:: executable Executable used to run the job - usually the path to an external executable.
-
.. attribute:: library_activated For job types which offer a Python library pyiron can use the python library instead of an external executable.
-
.. attribute:: server Server object to handle the execution environment for the job.
-
.. attribute:: queue_id the ID returned from the queuing system - it is most likely not the same as the job ID.
-
.. attribute:: logger logger object to monitor the external execution and internal pyiron warnings.
-
.. attribute:: restart_file_list list of files which are used to restart the calculation from these files.
-
.. attribute:: job_type - Job type object with all the available job types: [‘ExampleJob’, ‘SerialMaster’, ‘ParallelMaster’, ‘ScriptJob’,
‘ListMaster’]
-
from_hdf(hdf=None, group_name=None)[source]¶ Restore the ExampleJob object in the HDF5 File
- Parameters
hdf (ProjectHDFio) – HDF5 group object - optional
group_name (str) – HDF5 subgroup name - optional
-
get_structure(iteration_step=- 1, wrap_atoms=True)[source]¶ Gets the structure from a given iteration step of the simulation (MD/ionic relaxation). For static calculations there is only one ionic iteration step :param iteration_step: Step for which the structure is requested :type iteration_step: int
- Returns
atomistics.structure.atoms.Atoms object
-
run_if_interactive()[source]¶ Run the job as Python library and store the result in the HDF5 File.
- Returns
job ID
- Return type
int
-
set_input_to_read_only()[source]¶ This function enforces read-only mode for the input classes, but it has to be implement in the individual classes.
-
property
structure¶ Returns:
-
to_hdf(hdf=None, group_name=None)[source]¶ Store the ExampleJob object in the HDF5 File
- Parameters
hdf (ProjectHDFio) – HDF5 group object - optional
group_name (str) – HDF5 subgroup name - optional
-
class
pyiron.testing.randomatomistic.ExampleInput(input_file_name=None)[source]¶ Bases:
pyiron.base.generic.parameters.GenericParametersInput class for the ExampleJob based on the GenericParameters class.
- Parameters
input_file_name (str) – Name of the input file - optional
-
class
pyiron.testing.randomatomistic.ExampleJob(project, job_name)[source]¶ Bases:
pyiron.base.job.generic.GenericJobExampleJob generating a list of random numbers to simulate energy fluctuations.
- Parameters
project (ProjectHDFio) – ProjectHDFio instance which points to the HDF5 file the job is stored in
job_name (str) – name of the job, which has to be unique within the project
-
.. attribute:: job_name name of the job, which has to be unique within the project
-
.. attribute:: status - execution status of the job, can be one of the following [initialized, appended, created, submitted, running,
aborted, collect, suspended, refresh, busy, finished]
-
.. attribute:: job_id unique id to identify the job in the pyiron database
-
.. attribute:: parent_id job id of the predecessor job - the job which was executed before the current one in the current job series
-
.. attribute:: master_id job id of the master job - a meta job which groups a series of jobs, which are executed either in parallel or in serial.
-
.. attribute:: child_ids list of child job ids - only meta jobs have child jobs - jobs which list the meta job as their master
-
.. attribute:: project Project instance the jobs is located in
-
.. attribute:: project_hdf5 ProjectHDFio instance which points to the HDF5 file the job is stored in
-
.. attribute:: job_info_str short string to describe the job by it is job_name and job ID - mainly used for logging
-
.. attribute:: working_directory working directory of the job is executed in - outside the HDF5 file
-
.. attribute:: path path to the job as a combination of absolute file system path and path within the HDF5 file.
-
.. attribute:: version Version of the hamiltonian, which is also the version of the executable unless a custom executable is used.
-
.. attribute:: executable Executable used to run the job - usually the path to an external executable.
-
.. attribute:: library_activated For job types which offer a Python library pyiron can use the python library instead of an external executable.
-
.. attribute:: server Server object to handle the execution environment for the job.
-
.. attribute:: queue_id the ID returned from the queuing system - it is most likely not the same as the job ID.
-
.. attribute:: logger logger object to monitor the external execution and internal pyiron warnings.
-
.. attribute:: restart_file_list list of files which are used to restart the calculation from these files.
-
.. attribute:: job_type - Job type object with all the available job types: [‘ExampleJob’, ‘SerialMaster’, ‘ParallelMaster’, ‘ScriptJob’,
‘ListMaster’]
-
collect_logfiles()[source]¶ Collect the errors from the info.log file and store them in the HDF5 file
-
collect_output()[source]¶ Parse the output files of the example job and store the results in the HDF5 File.
-
collect_output_log(file_name='output.log')[source]¶ general purpose routine to extract output from logfile
- Parameters
file_name (str) – output.log - optional
-
collect_warnings()[source]¶ Collect the warnings if any were written to the info.log file and store them in the HDF5 file
-
from_hdf(hdf=None, group_name=None)[source]¶ Restore the ExampleJob object in the HDF5 File
- Parameters
hdf (ProjectHDFio) – HDF5 group object - optional
group_name (str) – HDF5 subgroup name - optional
-
interactive_close()[source]¶ For jobs which executables are available as Python library, those can also be executed with a library call instead of calling an external executable. This is usually faster than a single core python job. After the interactive execution, the job can be closed using the interactive_close function.
-
run_if_interactive()[source]¶ Run the job as Python library and store the result in the HDF5 File.
- Returns
job ID
- Return type
int
-
set_input_to_read_only()[source]¶ This function enforces read-only mode for the input classes, but it has to be implement in the individual classes.
-
to_hdf(hdf=None, group_name=None)[source]¶ Store the ExampleJob object in the HDF5 File
- Parameters
hdf (ProjectHDFio) – HDF5 group object - optional
group_name (str) – HDF5 subgroup name - optional