diff options
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/qiskit-nature/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/qiskit-nature/default.nix | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/qiskit-nature/default.nix b/nixpkgs/pkgs/development/python-modules/qiskit-nature/default.nix new file mode 100644 index 000000000000..09941fcdd448 --- /dev/null +++ b/nixpkgs/pkgs/development/python-modules/qiskit-nature/default.nix @@ -0,0 +1,80 @@ +{ lib +, pythonOlder +, buildPythonPackage +, fetchFromGitHub + # Python Inputs +, h5py +, numpy +, psutil +, qiskit-terra +, retworkx +, scikit-learn +, scipy +, withPyscf ? false +, pyscf + # Check Inputs +, pytestCheckHook +, ddt +, pylatexenc +}: + +buildPythonPackage rec { + pname = "qiskit-nature"; + version = "0.2.2"; + + disabled = pythonOlder "3.6"; + + src = fetchFromGitHub { + owner = "qiskit"; + repo = pname; + rev = version; + sha256 = "sha256-nQbvH911Gt4KddG23qwmiXfRJTWwVEsrzPvuTQfy4FY="; + }; + + postPatch = '' + substituteInPlace requirements.txt --replace "h5py<3.3" "h5py" + ''; + + propagatedBuildInputs = [ + h5py + numpy + psutil + qiskit-terra + retworkx + scikit-learn + scipy + ] ++ lib.optional withPyscf pyscf; + + checkInputs = [ + pytestCheckHook + ddt + pylatexenc + ]; + + pythonImportsCheck = [ "qiskit_nature" ]; + + pytestFlagsArray = [ + "--durations=10" + ] ++ lib.optionals (!withPyscf) [ + "--ignore=test/algorithms/excited_state_solvers/test_excited_states_eigensolver.py" + ]; + + disabledTests = [ + # small math error < 0.05 (< 9e-6 %) + "test_vqe_uvccsd_factory" + # unsure of failure reason. Might be related to recent cvxpy update? + "test_two_qubit_reduction" + ] ++ lib.optionals (!withPyscf) [ + "test_h2_bopes_sampler" + "test_potential_interface" + ]; + + meta = with lib; { + description = "Software for developing quantum computing programs"; + homepage = "https://qiskit.org"; + downloadPage = "https://github.com/QISKit/qiskit-optimization/releases"; + changelog = "https://qiskit.org/documentation/release_notes.html"; + license = licenses.asl20; + maintainers = with maintainers; [ drewrisinger ]; + }; +} |