do_rss_multi_node

do_rss_multi_node#

autoplex.data.rss.jobs.do_rss_multi_node(mlip_type, mlip_path, iteration_index, structure=None, structure_paths=None, output_file_name='RSS_relax_results', scalar_pressure_method='exp', scalar_exp_pressure=100, scalar_pressure_exponential_width=0.2, scalar_pressure_low=0, scalar_pressure_high=50, max_steps=1000, force_tol=0.01, stress_tol=0.01, hookean_repul=False, hookean_paras=None, write_traj=True, num_processes_rss=1, device='cpu', isolated_atom_energies=None, num_groups=1, config_type='traj', keep_symmetry=True)[source]#

Perform sandom structure searching (RSS) on multiple nodes using a machine learning interatomic potential (MLIP).

Parameters:
  • mlip_type (str) – Choose one specific MLIP type: ‘GAP’ | ‘J-ACE’ | ‘P-ACE’ | ‘NequIP’ | ‘M3GNet’ | ‘MACE’.

  • mlip_path (str) – Path to the MLIP model.

  • iteration_index (str) – Index for the current iteration.

  • structures (list of Structure) – List of structures to be relaxed.

  • structure_paths (str | list[str]) – Path(s) to structures to be used in the RSS process.

  • output_file_name (str) – Prefix for the trajectory/log file name. The actual output file name may be composed of this prefix, an index, and file types.

  • scalar_pressure_method (str) – Method for adding external pressures. Default is ‘exp’.

  • scalar_exp_pressure (float) – Scalar exponential pressure. Default is 100.

  • scalar_pressure_exponential_width (float) – Width for scalar pressure exponential. Default is 0.2.

  • scalar_pressure_low (float) – Low limit for scalar pressure. Default is 0.

  • scalar_pressure_high (float) – High limit for scalar pressure. Default is 50.

  • max_steps (int) – Maximum number of steps for relaxation. Default is 1000.

  • force_tol (float) – Force residual tolerance for relaxation. Default is 0.01.

  • stress_tol (float) – Stress residual tolerance for relaxation. Default is 0.01.

  • hookean_repul (bool) – If true, apply Hookean repulsion. Default is False.

  • hookean_paras (dict) – Parameters for Hookean repulsion as a dictionary of tuples. Default is None.

  • write_traj (bool) – If true, write trajectory of RSS. Default is True.

  • num_processes_rss (int) – Number of processes used for running RSS.

  • device (str) – Specify device to use “cuda” or “cpu”.

  • isolated_atom_energies (dict) – Dictionary of isolated atoms energies.

  • struct_start_index (int) – Specify the starting index within a list

  • num_groups (int) – Number of structure groups, used for assigning tasks across multiple nodes, with each node handling one group.

  • config_type (str) – Specify the type of configurations generated from RSS

  • keep_symmetry (bool) – If true, preserve symmetry during relaxation.

  • structure (list[Structure] | list[list[Structure]] | None) –

Returns:

Output list[str] containing paths for the results of the RSS relaxation.

Return type:

list