aiida_diff package

Subpackages

Submodules

aiida_diff.calculations module

Calculations provided by aiida_diff.

Register calculations via the “aiida.calculations” entry point in setup.json.

class aiida_diff.calculations.DiffCalculation(*args: Any, **kwargs: Any)[source]

Bases: aiida.engine.processes.calcjobs.calcjob.CalcJob

AiiDA calculation plugin wrapping the diff executable.

Simple AiiDA plugin wrapper for ‘diffing’ two files.

__abstractmethods__ = frozenset({})
__module__ = 'aiida_diff.calculations'
_abc_impl = <_abc_data object>
classmethod define(spec)[source]

Define inputs and outputs of the calculation.

prepare_for_submission(folder)[source]

Create input files.

Parameters

folder – an aiida.common.folders.Folder where the plugin should temporarily place all files needed by the calculation.

Returns

aiida.common.datastructures.CalcInfo instance

aiida_diff.cli module

Command line interface (cli) for aiida_diff.

Register new commands either via the “console_scripts” entry point or plug them directly into the ‘verdi’ command by using AiiDA-specific entry points like “aiida.cmdline.data” (both in the setup.json file).

aiida_diff.helpers module

Helper functions for automatically setting up computer & code. Helper functions for setting up

  1. An AiiDA localhost computer

  2. A “diff” code on localhost

Note: Point 2 is made possible by the fact that the diff executable is available in the PATH on almost any UNIX system.

aiida_diff.helpers.get_code(entry_point, computer)[source]

Get local code. Sets up code for given entry point on given computer.

Parameters
  • entry_point – Entry point of calculation plugin

  • computer – (local) AiiDA computer

Returns

The code node

Return type

aiida.orm.Code

aiida_diff.helpers.get_computer(name='localhost-test', workdir=None)[source]

Get AiiDA computer. Loads computer ‘name’ from the database, if exists. Sets up local computer ‘name’, if it isn’t found in the DB.

Parameters
  • name – Name of computer to load or set up.

  • workdir – path to work directory Used only when creating a new computer.

Returns

The computer node

Return type

aiida.orm.Computer

aiida_diff.helpers.get_path_to_executable(executable)[source]

Get path to local executable. :param executable: Name of executable in the $PATH variable :type executable: str :return: path to executable :rtype: str

aiida_diff.parsers module

Parsers provided by aiida_diff.

Register parsers via the “aiida.parsers” entry point in setup.json.

class aiida_diff.parsers.DiffParser(node)[source]

Bases: aiida.parsers.parser.Parser

Parser class for parsing output of calculation.

__abstractmethods__ = frozenset({})
__init__(node)[source]

Initialize Parser instance

Checks that the ProcessNode being passed was produced by a DiffCalculation.

Parameters
__module__ = 'aiida_diff.parsers'
_abc_impl = <_abc_data object>
parse(**kwargs)[source]

Parse outputs, store results in database.

Returns

an exit code, if parsing fails (or nothing if parsing succeeds)

Module contents

aiida_diff

AiiDA demo plugin that wraps the diff executable for computing the difference between two files.