-
-
Notifications
You must be signed in to change notification settings - Fork 15.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #144253 from sheepforce/pyscf
pyscf: 1.7.6.post1 -> 2.0.1
- Loading branch information
Showing
11 changed files
with
233 additions
and
31 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
25 changes: 25 additions & 0 deletions
25
pkgs/development/libraries/science/chemistry/cppe/default.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
{ stdenv, lib, fetchFromGitHub, cmake }: | ||
|
||
stdenv.mkDerivation rec { | ||
pname = "cppe"; | ||
version = "0.3.1"; | ||
|
||
src = fetchFromGitHub { | ||
owner = "maxscheurer"; | ||
repo = pname; | ||
rev = "v${version}"; | ||
sha256 = "sha256-guM7+ZWDJLcAUJtPkKLvC4LYSA2eBvER7cgwPZ7FxHw="; | ||
}; | ||
|
||
nativeBuildInputs = [ cmake ]; | ||
|
||
cmakeFlags = [ "-DCMAKE_INSTALL_LIBDIR=lib" ]; | ||
|
||
meta = with lib; { | ||
description = "C++ and Python library for Polarizable Embedding"; | ||
homepage = "https://github.com/maxscheurer/cppe"; | ||
license = licenses.lgpl3Only; | ||
platforms = platforms.unix; | ||
maintainers = [ maintainers.sheepforce ]; | ||
}; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
{ buildPythonPackage | ||
, lib | ||
, cmake | ||
, cppe | ||
, eigen | ||
, python | ||
, pybind11 | ||
, numpy | ||
, h5py | ||
, numba | ||
, scipy | ||
, pandas | ||
, polarizationsolver | ||
, pytest | ||
}: | ||
|
||
buildPythonPackage rec { | ||
inherit (cppe) pname version src meta; | ||
|
||
# The python interface requires eigen3, but builds from a checkout in tree. | ||
# Using the nixpkgs version instead. | ||
postPatch = '' | ||
substituteInPlace setup.py \ | ||
--replace "external/eigen3" "${eigen}/include/eigen3" | ||
''; | ||
|
||
nativeBuildInputs = [ | ||
cmake | ||
eigen | ||
]; | ||
|
||
dontUseCmakeConfigure = true; | ||
|
||
buildInputs = [ pybind11 ]; | ||
|
||
checkInputs = [ | ||
pytest | ||
h5py | ||
numba | ||
numpy | ||
pandas | ||
polarizationsolver | ||
scipy | ||
]; | ||
|
||
pythonImportsCheck = [ "cppe" ]; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
{ buildPythonPackage, lib, fetchPypi }: | ||
|
||
buildPythonPackage rec { | ||
pname = "fields"; | ||
version = "5.0.0"; | ||
|
||
src = fetchPypi { | ||
inherit pname version; | ||
sha256 = "sha256-MdSqA9jUTjXfE8Qx3jUTaZfwR6kkpZfYT3vCCeG+Vyc="; | ||
}; | ||
|
||
pythonImportsCheck = [ "fields" ]; | ||
|
||
meta = with lib; { | ||
description = "Container class boilerplate killer"; | ||
homepage = "https://github.com/ionelmc/python-fields"; | ||
license = licenses.bsd2; | ||
maintainers = [ maintainers.sheepforce ]; | ||
}; | ||
} |
38 changes: 38 additions & 0 deletions
38
pkgs/development/python-modules/polarizationsolver/default.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
{ buildPythonPackage | ||
, lib | ||
, fetchFromGitLab | ||
, python | ||
, numpy | ||
, scipy | ||
, periodictable | ||
, fields | ||
}: | ||
|
||
buildPythonPackage rec { | ||
pname = "polarizationsolver"; | ||
version = "unstable-2021-11-02"; | ||
|
||
src = fetchFromGitLab { | ||
owner = "reinholdt"; | ||
repo = pname; | ||
rev = "00424ac4d1862257a55e4b16543f63ace3fe8c22"; | ||
sha256 = "sha256-LACf8Xw+o/uJ3+PD/DE/o7nwKY7fv3NyYbpjCrTTnBU="; | ||
}; | ||
|
||
propagatedBuildInputs = [ | ||
numpy | ||
periodictable | ||
scipy | ||
]; | ||
|
||
checkInputs = [ fields ]; | ||
|
||
pythonImportsCheck = [ "polarizationsolver" ]; | ||
|
||
meta = with lib; { | ||
description = "Multipole moment solver for quantum chemistry and polarisable embedding"; | ||
homepage = "https://gitlab.com/reinholdt/polarizationsolver"; | ||
license = licenses.gpl3Plus; | ||
maintainers = [ maintainers.sheepforce ]; | ||
}; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,45 +1,109 @@ | ||
{ buildPythonPackage, lib, fetchFromGitHub, libcint, libxc, xcfun, blas | ||
, numpy, scipy, h5py | ||
{ buildPythonPackage | ||
, python3 | ||
, lib | ||
, fetchFromGitHub | ||
, cmake | ||
, blas | ||
, libcint | ||
, libxc | ||
, xcfun | ||
, cppe | ||
, h5py | ||
, numpy | ||
, scipy | ||
, nose | ||
, nose-exclude | ||
}: | ||
|
||
buildPythonPackage rec { | ||
pname = "pyscf"; | ||
version = "1.7.6.post1"; | ||
version = "2.0.1"; | ||
|
||
src = fetchFromGitHub { | ||
owner = "pyscf"; | ||
repo = pname; | ||
rev = "f6c9c6654dd9609c5e467a1edd5c2c076f793acc"; | ||
sha256 = "0xbwkjxxysfpqz72qn6n4a0zr2h6sprbcal8j7kzymh7swjy117w"; | ||
rev = "v${version}"; | ||
sha256 = "sha256-nwnhaqSn/9WHBjUPaEabK4x23fJ83WwEYvz6aCcvsDw="; | ||
}; | ||
|
||
# Backport from the 2.0.0 alpha releases of PySCF. | ||
# H5Py > 3.3 deprecates the file modes, that PySCF sets. | ||
patches = [ ./h5py.patch ]; | ||
# setup.py calls Cmake and passes the arguments in CMAKE_CONFIGURE_ARGS to cmake. | ||
nativeBuildInputs = [ cmake ]; | ||
dontUseCmakeConfigure = true; | ||
preConfigure = '' | ||
export CMAKE_CONFIGURE_ARGS="-DBUILD_LIBCINT=0 -DBUILD_LIBXC=0 -DBUILD_XCFUN=0" | ||
PYSCF_INC_DIR="${libcint}:${libxc}:${xcfun}"; | ||
''; | ||
|
||
buildInputs = [ | ||
blas | ||
libcint | ||
libxc | ||
xcfun | ||
blas | ||
]; | ||
|
||
propagatedBuildInputs = [ | ||
cppe | ||
h5py | ||
numpy | ||
scipy | ||
h5py | ||
]; | ||
|
||
PYSCF_INC_DIR="${libcint}:${libxc}:${xcfun}"; | ||
checkInputs = [ nose nose-exclude ]; | ||
|
||
doCheck = false; | ||
pythonImportsCheck = [ "pyscf" ]; | ||
preCheck = '' | ||
# Set config used by tests to ensure reproducibility | ||
echo 'pbc_tools_pbc_fft_engine = "NUMPY"' > pyscf/pyscf_config.py | ||
export OMP_NUM_THREADS=1 | ||
ulimit -s 20000 | ||
export PYSCF_CONFIG_FILE=$(pwd)/pyscf/pyscf_config.py | ||
''; | ||
# As defined for the PySCF CI at https://github.com/pyscf/pyscf/blob/master/.github/workflows/run_tests.sh | ||
# minus some additionally numerically instable tests, that are sensitive to BLAS, FFTW, etc. | ||
checkPhase = '' | ||
runHook preCheck | ||
nosetests pyscf/ -v \ | ||
--exclude-dir=examples --exclude-dir=pyscf/pbc/grad \ | ||
--exclude-dir=pyscf/x2c \ | ||
--exclude-dir=pyscf/pbc/tdscf \ | ||
-e test_bz \ | ||
-e h2o_vdz \ | ||
-e test_mc2step_4o4e \ | ||
-e test_ks_noimport \ | ||
-e test_jk_hermi0 \ | ||
-e test_j_kpts \ | ||
-e test_k_kpts \ | ||
-e high_cost \ | ||
-e skip \ | ||
-e call_in_background \ | ||
-e libxc_cam_beta_bug \ | ||
-e test_finite_diff_rks_eph \ | ||
-e test_finite_diff_uks_eph \ | ||
-e test_pipek \ | ||
-e test_n3_cis_ewald \ | ||
-I test_kuccsd_supercell_vs_kpts\.py \ | ||
-I test_kccsd_ghf\.py \ | ||
-I test_h_.*\.py \ | ||
--exclude-test=pyscf/pbc/gw/test/test_kgw_slow_supercell.DiamondTestSupercell3 \ | ||
--exclude-test=pyscf/pbc/gw/test/test_kgw_slow_supercell.DiamondKSTestSupercell3 \ | ||
--exclude-test=pyscf/pbc/gw/test/test_kgw_slow.DiamondTestSupercell3 \ | ||
--exclude-test=pyscf/pbc/gw/test/test_kgw_slow.DiamondKSTestSupercell3 \ | ||
--exclude-test=pyscf/pbc/tdscf/test/test_krhf_slow_supercell.DiamondTestSupercell3 \ | ||
--exclude-test=pyscf/pbc/tdscf/test/test_kproxy_hf.DiamondTestSupercell3 \ | ||
--exclude-test=pyscf/pbc/tdscf/test/test_kproxy_ks.DiamondTestSupercell3 \ | ||
--exclude-test=pyscf/pbc/tdscf/test/test_kproxy_supercell_hf.DiamondTestSupercell3 \ | ||
--exclude-test=pyscf/pbc/tdscf/test/test_kproxy_supercell_ks.DiamondTestSupercell3 \ | ||
-I .*_slow.*py -I .*_kproxy_.*py -I test_proxy.py tdscf/*_slow.py gw/*_slow.py | ||
runHook postCheck | ||
''; | ||
|
||
meta = with lib; { | ||
description = "Python-based simulations of chemistry framework"; | ||
homepage = "https://github.com/pyscf/pyscf"; | ||
license = licenses.asl20; | ||
platforms = platforms.linux; | ||
platforms = platforms.unix; | ||
maintainers = [ maintainers.sheepforce ]; | ||
}; | ||
} |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters