All plugins

aiida-mlip

Machine learning interatomic potentials AiiDA plugin

status stable AiiDA >=2.7,<3

General information

Install pip install aiida-mlip
Author(s) Federica Zanca, Elliott Kasoar, Jacob Wilkins, Alin M. Elena
Python import import aiida_mlip
Latest version 0.4.1
Released 2025-11-17

Registry checks

All checks passed

Plugins provided

Calculations 5 Parsers 5 Data 2

Entry points

CalcJobs and calculation functions aiida.calculations
  • mlip.descriptors

    class: aiida_mlip.calculations.descriptors:Descriptors

    Calcjob implementation to calculate MLIP descriptors. Methods ------- define(spec: CalcJobProcessSpec) -> None: Define the process specification, its inputs, outputs and exit codes. prepare_for_submission(folder: Folder) -> CalcInfo: Create the input files for the `CalcJob`.

    InputRequiredValid typesDescription
    arch false Str, NoneType Mlip architecture to use for calculation, defaults to mace
    calc_per_atom false Bool, NoneType Calculate descriptors for each atom.
    calc_per_element false Bool, NoneType Calculate mean descriptors for each element.
    code false AbstractCode, NoneType The `Code` to use for this job. This input is required, unless the `remote_folder` input is specified, which means an existing job is being imported and no code will actually be run.
    config false JanusConfigfile, NoneType Name of the log output file
    device false Str, NoneType Device on which to run calculation (cpu, cuda or mps)
    invariants_only false Bool, NoneType Only calculate invariant descriptors.
    log_filename false Str, NoneType Name of the log output file
    metadata false
    model false ModelData, NoneType Mlip model used for calculation
    monitors false Dict Add monitoring functions that can inspect output files while the job is running and decide to prematurely terminate the job.
    out false Str, NoneType Name of the xyz output file
    precision false Str, NoneType Precision level for calculation
    remote_folder false RemoteData, NoneType Remote directory containing the results of an already completed calculation job without AiiDA. The inputs should be passed to the `CalcJob` as normal but instead of launching the actual job, the engine will recreate the input files and then proceed straight to the retrieve step where the files of this `RemoteData` will be retrieved as if it had been actually launched through AiiDA. If a parser is defined in the inputs, the results are parsed and attached as output nodes as usual.
    struct false StructureData, NoneType The input structure.
    OutputRequiredValid typesDescription
    log_output true SinglefileData
    remote_folder true RemoteData Input files necessary to run the process will be stored in this folder node.
    results_dict true Dict The `results_dict` output node of the successful calculation.
    retrieved true FolderData Files that are retrieved by the daemon will be stored in this node. By default the stdout and stderr of the scheduler will be added, but one can add more by specifying them in `CalcInfo.retrieve_list`.
    std_output true SinglefileData
    xyz_output true SinglefileData
    remote_stash false RemoteStashData Contents of the `stash.source_list` option are stored in this remote folder after job completion.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    100 The process did not have the required `retrieved` output.
    110 The job ran out of memory.
    120 The job ran out of walltime.
    131 The specified account is invalid.
    140 The node running the job failed.
    150 {message}
    160 {message}
    305 Some output files missing or cannot be read
  • mlip.md

    class: aiida_mlip.calculations.md:MD

    Calcjob implementation to run geometry MD calculations using mlips. Methods ------- define(spec: CalcJobProcessSpec) -> None: Define the process specification, its inputs, outputs and exit codes. prepare_for_submission(folder: Folder) -> CalcInfo: Create the input files for the `CalcJob`.

    InputRequiredValid typesDescription
    arch false Str, NoneType Mlip architecture to use for calculation, defaults to mace
    code false AbstractCode, NoneType The `Code` to use for this job. This input is required, unless the `remote_folder` input is specified, which means an existing job is being imported and no code will actually be run.
    config false JanusConfigfile, NoneType Name of the log output file
    device false Str, NoneType Device on which to run calculation (cpu, cuda or mps)
    ensemble false Str, NoneType Name for thermodynamic ensemble
    log_filename false Str, NoneType Name of the log output file
    md_kwargs false Dict, NoneType Keywords for molecular dynamics
    metadata false
    model false ModelData, NoneType Mlip model used for calculation
    monitors false Dict Add monitoring functions that can inspect output files while the job is running and decide to prematurely terminate the job.
    precision false Str, NoneType Precision level for calculation
    remote_folder false RemoteData, NoneType Remote directory containing the results of an already completed calculation job without AiiDA. The inputs should be passed to the `CalcJob` as normal but instead of launching the actual job, the engine will recreate the input files and then proceed straight to the retrieve step where the files of this `RemoteData` will be retrieved as if it had been actually launched through AiiDA. If a parser is defined in the inputs, the results are parsed and attached as output nodes as usual.
    struct false StructureData, NoneType The input structure.
    OutputRequiredValid typesDescription
    final_structure true StructureData
    log_output true SinglefileData
    remote_folder true RemoteData Input files necessary to run the process will be stored in this folder node.
    results_dict true Dict The `results_dict` output node of the successful calculation.
    retrieved true FolderData Files that are retrieved by the daemon will be stored in this node. By default the stdout and stderr of the scheduler will be added, but one can add more by specifying them in `CalcInfo.retrieve_list`.
    stats_file true SinglefileData
    std_output true SinglefileData
    summary true SinglefileData
    traj_file true SinglefileData
    traj_output true TrajectoryData
    remote_stash false RemoteStashData Contents of the `stash.source_list` option are stored in this remote folder after job completion.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    100 The process did not have the required `retrieved` output.
    110 The job ran out of memory.
    120 The job ran out of walltime.
    131 The specified account is invalid.
    140 The node running the job failed.
    150 {message}
    160 {message}
    305 Some output files missing or cannot be read
  • mlip.opt

    class: aiida_mlip.calculations.geomopt:GeomOpt

    Calcjob implementation to run geometry optimisation calculations using mlips. Methods ------- define(spec: CalcJobProcessSpec) -> None: Define the process specification, its inputs, outputs and exit codes. prepare_for_submission(folder: Folder) -> CalcInfo: Create the input files for the `CalcJob`.

    InputRequiredValid typesDescription
    arch false Str, NoneType Mlip architecture to use for calculation, defaults to mace
    code false AbstractCode, NoneType The `Code` to use for this job. This input is required, unless the `remote_folder` input is specified, which means an existing job is being imported and no code will actually be run.
    config false JanusConfigfile, NoneType Name of the log output file
    device false Str, NoneType Device on which to run calculation (cpu, cuda or mps)
    fmax false Float, NoneType Maximum force for convergence
    log_filename false Str, NoneType Name of the log output file
    metadata false
    model false ModelData, NoneType Mlip model used for calculation
    monitors false Dict Add monitoring functions that can inspect output files while the job is running and decide to prematurely terminate the job.
    opt_cell_fully false Bool, NoneType Fully optimise the cell vectors, angles, and atomic positions
    opt_cell_lengths false Bool, NoneType Optimise cell vectors, as well as atomic positions
    opt_kwargs false Dict, NoneType Other optimisation keywords
    out false Str, NoneType Name of the xyz output file
    precision false Str, NoneType Precision level for calculation
    properties false Str, NoneType Properties to calculate
    remote_folder false RemoteData, NoneType Remote directory containing the results of an already completed calculation job without AiiDA. The inputs should be passed to the `CalcJob` as normal but instead of launching the actual job, the engine will recreate the input files and then proceed straight to the retrieve step where the files of this `RemoteData` will be retrieved as if it had been actually launched through AiiDA. If a parser is defined in the inputs, the results are parsed and attached as output nodes as usual.
    steps false Int, NoneType Number of optimisation steps
    struct false StructureData, NoneType The input structure.
    traj false Str, NoneType Path to save optimisation frames to
    OutputRequiredValid typesDescription
    final_structure true StructureData
    log_output true SinglefileData
    remote_folder true RemoteData Input files necessary to run the process will be stored in this folder node.
    results_dict true Dict The `results_dict` output node of the successful calculation.
    retrieved true FolderData Files that are retrieved by the daemon will be stored in this node. By default the stdout and stderr of the scheduler will be added, but one can add more by specifying them in `CalcInfo.retrieve_list`.
    std_output true SinglefileData
    traj_file true SinglefileData
    traj_output true TrajectoryData
    xyz_output true SinglefileData
    remote_stash false RemoteStashData Contents of the `stash.source_list` option are stored in this remote folder after job completion.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    100 The process did not have the required `retrieved` output.
    110 The job ran out of memory.
    120 The job ran out of walltime.
    131 The specified account is invalid.
    140 The node running the job failed.
    150 {message}
    160 {message}
    305 Some output files missing or cannot be read
  • mlip.sp

    class: aiida_mlip.calculations.singlepoint:Singlepoint

    Calcjob implementation to run single point calculations using mlips. Attributes ---------- XYZ_OUTPUT : str Default xyz output file name. Methods ------- define(spec: CalcJobProcessSpec) -> None: Define the process specification, its inputs, outputs and exit codes. validate_inputs(value: dict, port_namespace: PortNamespace) -> Optional[str]: Check if the inputs are valid. prepare_for_submission(folder: Folder) -> CalcInfo: Create the input files for the `CalcJob`.

    InputRequiredValid typesDescription
    arch false Str, NoneType Mlip architecture to use for calculation, defaults to mace
    code false AbstractCode, NoneType The `Code` to use for this job. This input is required, unless the `remote_folder` input is specified, which means an existing job is being imported and no code will actually be run.
    config false JanusConfigfile, NoneType Name of the log output file
    device false Str, NoneType Device on which to run calculation (cpu, cuda or mps)
    log_filename false Str, NoneType Name of the log output file
    metadata false
    model false ModelData, NoneType Mlip model used for calculation
    monitors false Dict Add monitoring functions that can inspect output files while the job is running and decide to prematurely terminate the job.
    out false Str, NoneType Name of the xyz output file
    precision false Str, NoneType Precision level for calculation
    properties false Str, NoneType Properties to calculate
    remote_folder false RemoteData, NoneType Remote directory containing the results of an already completed calculation job without AiiDA. The inputs should be passed to the `CalcJob` as normal but instead of launching the actual job, the engine will recreate the input files and then proceed straight to the retrieve step where the files of this `RemoteData` will be retrieved as if it had been actually launched through AiiDA. If a parser is defined in the inputs, the results are parsed and attached as output nodes as usual.
    struct false StructureData, NoneType The input structure.
    OutputRequiredValid typesDescription
    log_output true SinglefileData
    remote_folder true RemoteData Input files necessary to run the process will be stored in this folder node.
    results_dict true Dict The `results_dict` output node of the successful calculation.
    retrieved true FolderData Files that are retrieved by the daemon will be stored in this node. By default the stdout and stderr of the scheduler will be added, but one can add more by specifying them in `CalcInfo.retrieve_list`.
    std_output true SinglefileData
    xyz_output true SinglefileData
    remote_stash false RemoteStashData Contents of the `stash.source_list` option are stored in this remote folder after job completion.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    100 The process did not have the required `retrieved` output.
    110 The job ran out of memory.
    120 The job ran out of walltime.
    131 The specified account is invalid.
    140 The node running the job failed.
    150 {message}
    160 {message}
    305 Some output files missing or cannot be read
  • mlip.train

    class: aiida_mlip.calculations.train:Train

    Calcjob implementation to train mlips. Attributes ---------- DEFAULT_OUTPUT_FILE : str Default stdout file name. Methods ------- define(spec: CalcJobProcessSpec) -> None: Define the process specification, its inputs, outputs and exit codes. validate_inputs(value: dict, port_namespace: PortNamespace) -> Optional[str]: Check if the inputs are valid. prepare_for_submission(folder: Folder) -> CalcInfo: Create the input files for the `CalcJob`.

    InputRequiredValid typesDescription
    mlip_config true JanusConfigfile Config file with parameters for training
    code false AbstractCode, NoneType The `Code` to use for this job. This input is required, unless the `remote_folder` input is specified, which means an existing job is being imported and no code will actually be run.
    fine_tune false Bool, NoneType Whether fine-tuning a model
    foundation_model false ModelData, NoneType Model to fine-tune
    metadata false
    monitors false Dict Add monitoring functions that can inspect output files while the job is running and decide to prematurely terminate the job.
    remote_folder false RemoteData, NoneType Remote directory containing the results of an already completed calculation job without AiiDA. The inputs should be passed to the `CalcJob` as normal but instead of launching the actual job, the engine will recreate the input files and then proceed straight to the retrieve step where the files of this `RemoteData` will be retrieved as if it had been actually launched through AiiDA. If a parser is defined in the inputs, the results are parsed and attached as output nodes as usual.
    OutputRequiredValid typesDescription
    checkpoints true FolderData
    compiled_model true SinglefileData
    logs true FolderData
    model true ModelData
    remote_folder true RemoteData Input files necessary to run the process will be stored in this folder node.
    results_dict true Dict The `results_dict` output node of the training.
    retrieved true FolderData Files that are retrieved by the daemon will be stored in this node. By default the stdout and stderr of the scheduler will be added, but one can add more by specifying them in `CalcInfo.retrieve_list`.
    remote_stash false RemoteStashData Contents of the `stash.source_list` option are stored in this remote folder after job completion.
    Exit statusMessage
    1 The process has failed with an unspecified error.
    2 The process failed with legacy failure mode.
    10 The process returned an invalid output.
    11 The process did not register a required output.
    100 The process did not have the required `retrieved` output.
    110 The job ran out of memory.
    120 The job ran out of walltime.
    131 The specified account is invalid.
    140 The node running the job failed.
    150 {message}
    160 {message}
    305 Some output files missing or cannot be read
Data node types aiida.data
  • mlip.config

    aiida_mlip.data.config:JanusConfigfile
  • mlip.modeldata

    aiida_mlip.data.model:ModelData
CalcJob parsers aiida.parsers
  • mlip.descriptors_parser

    aiida_mlip.parsers.descriptors_parser:DescriptorsParser
  • mlip.md_parser

    aiida_mlip.parsers.md_parser:MDParser
  • mlip.opt_parser

    aiida_mlip.parsers.opt_parser:GeomOptParser
  • mlip.sp_parser

    aiida_mlip.parsers.sp_parser:SPParser
  • mlip.train_parser

    aiida_mlip.parsers.train_parser:TrainParser