File: calculators.rst

package info (click to toggle)
python-ase 3.24.0-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 15,448 kB
  • sloc: python: 144,945; xml: 2,728; makefile: 113; javascript: 47
file content (47 lines) | stat: -rw-r--r-- 1,423 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
.. _Adding new calculators:

======================
Adding new calculators
======================

Adding an ASE interface to your favorite force-calculator is very
simple.  Take a look at the
:class:`~ase.calculators.calculator.Calculator` and
:class:`~ase.calculators.calculator.FileIOCalculator` classes below
(the code is here: :git:`ase/calculators/calculator.py`).  You should
inherit from the :class:`~ase.calculators.calculator.FileIOCalculator`
and implement the :meth:`~ase.calculators.calculator.Calculator.read`,
:meth:`~ase.calculators.calculator.FileIOCalculator.read_results` and
:meth:`~ase.calculators.calculator.FileIOCalculator.write_input` methods.
The methods :meth:`~ase.calculators.calculator.Calculator.set`,
:meth:`~ase.calculators.calculator.Calculator.check_state` and
:meth:`~ase.calculators.calculator.Calculator.set_label` may also need
to be implemented.

.. seealso::

   * The code for our Abinit interface: :git:`ase/calculators/abinit.py`
   * :ref:`aep1`
   * :mod:`ase.calculators`


Description of base-classes
===========================


The Calculator base-class
-------------------------

.. autoclass:: ase.calculators.calculator.Calculator
   :members:
   :private-members:
   :member-order: bysource


The FileIOCalculator class
--------------------------

.. autoclass:: ase.calculators.calculator.FileIOCalculator
   :members:
   :private-members:
   :member-order: bysource