diff --git a/pkgs/development/python-modules/aerosandbox/default.nix b/pkgs/development/python-modules/aerosandbox/default.nix new file mode 100644 index 000000000000..f108219b6b08 --- /dev/null +++ b/pkgs/development/python-modules/aerosandbox/default.nix @@ -0,0 +1,52 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + setuptools, + numpy, + scipy, + pandas, + matplotlib, + seaborn, + tqdm, + sortedcontainers, + dill, + casadi, +}: + +buildPythonPackage rec { + pname = "aerosandbox"; + version = "4.2.5"; + format = "wheel"; + + src = fetchPypi { + pname = "AeroSandbox"; + inherit version format; + + python = "py3"; + dist = "py3"; + hash = "sha256-9WxeXmcOZpKpNn8r6REudQlDRXavym52tvKajYJIfXA="; + }; + + build-system = [ setuptools ]; + dependencies = [ + numpy + scipy + pandas + matplotlib + seaborn + tqdm + sortedcontainers + dill + casadi + ]; + + pythonImportsCheck = [ "aerosandbox" ]; + + meta = { + description = "Aircraft design optimization made fast through modern automatic differentiation"; + homepage = "https://peterdsharpe.github.io/AeroSandbox"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ sigmanificient ]; + }; +} diff --git a/pkgs/development/python-modules/neuralfoil/default.nix b/pkgs/development/python-modules/neuralfoil/default.nix new file mode 100644 index 000000000000..f217b740e17e --- /dev/null +++ b/pkgs/development/python-modules/neuralfoil/default.nix @@ -0,0 +1,39 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + numpy, + aerosandbox, + pytestCheckHook, +}: + +buildPythonPackage { + pname = "neuralfoil"; + version = "0.2.3"; + pyproject = true; + + src = fetchFromGitHub { + owner = "peterdsharpe"; + repo = "NeuralFoil"; + rev = "46cda4041134d1b1794d3a81761d8d3e63f20855"; + hash = "sha256-kbPHPJh8xcIdPYIiaxwYqpfcnYzzDD6F0tG3flR0j3M="; + }; + + build-system = [ setuptools ]; + dependencies = [ + numpy + aerosandbox + ]; + + pythonImportsCheck = [ "neuralfoil" ]; + + nativeBuildInputs = [ pytestCheckHook ]; + + meta = { + description = "Airfoil aerodynamics analysis tool using physics-informed machine learning, in pure Python/NumPy"; + homepage = "https://github.com/peterdsharpe/NeuralFoil"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ sigmanificient ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 602d2fcb8acc..af519225b952 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -101,6 +101,8 @@ self: super: with self; { aeppl = callPackage ../development/python-modules/aeppl { }; + aerosandbox = callPackage ../development/python-modules/aerosandbox { }; + aesara = callPackage ../development/python-modules/aesara { }; aesedb = callPackage ../development/python-modules/aesedb { }; @@ -9096,6 +9098,8 @@ self: super: with self; { networkx = callPackage ../development/python-modules/networkx { }; + neuralfoil = callPackage ../development/python-modules/neuralfoil { }; + neuron-full = pkgs.neuron-full.override { python3 = python; }; neuronpy = toPythonModule neuron-full;