AiiDA Python
This package is an AiiDA plugin allowing you to run python code as CalcJob on a remote computer. Usage is easy one has to inherit CalcJobPython class and instead of prepare_for_submition method one ahs to overload run_python. Parser is generated automatically one does not have to write its own.
from aiida.plugins import CalculationFactory
CalcJobPython = CalculationFactory("aiida_python.calc")
class ClassThatCannotStartWithTestExample(CalcJobPython):
@classmethod
def define(cls, spec):
super().define(spec)
spec.input('inputarray', valid_type=ArrayData)
spec.input('repeats', valid_type=Int)
spec.output('value', valid_type=Float)
def run_python(self):
import numpy as np
a = self.inputs.inputarray
repeats = self.inputs.repeats
a_inv = np.linalg.inv(a)
for ii in range(repeats):
a_inv = np.matmul(a_inv, a_inv)
a_inv = a_inv/sum(a_inv)
a = np.linalg.inv(a)
c = float(np.sum(a))
self.outputs.value = c
Here is a test case example
def test_example(aiida_local_code_factory, clear_database):
from aiida.plugins import CalculationFactory
from aiida.engine import run
import numpy as np
executable = 'python3'
entry_point = 'test.calc_example'
code = aiida_local_code_factory(entry_point=entry_point, executable=executable)
calculation = CalculationFactory(entry_point)
np_a = np.array([[1,2,1],[3,4,3],[0,1,1]])
a = ArrayData()
a.set_array("only_one", np_a)
inputs = { 'code': code,
'inputarray': a,
'repeats': Int(10)}
result = run(calculation, **inputs)
For more information look at this link.
Metadata
Release files for aiida-python 0.0.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| aiida-python-0.0.6.tar.gz | 10.0 kB | Without provenance | Details |
Release files / aiida-python-0.0.6.tar.gz
| Download URL | aiida-python-0.0.6.tar.gz |
|---|---|
| Size | 10.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1c366a4d98b2ba185cbb32c8629873e84ec973bba1858bbe3c98218cc14a2b8c
|
|
BLAKE2b-256 checksum How to use checksums |
bc80040f0698f350c732fd23530b750df2be6229e02ba817f8378c42db2e1f0d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.6
|
Security for aiida-python 0.0.6
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.