Loading CONTRIBUTORS +1 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ Software maintainer ------------------- # Ordered alphabetically by last name. Last name, First name; <email>; Years of contribution Cukarska, Ana; <ana.cukarska@tum.de>; 2026- Dietrich, Felix; <felix.dietrich@tum.de>; 2019- Lehmberg, Daniel; <daniel.lehmberg@hm.edu>; 2019- Loading Makefile +6 −6 Original line number Diff line number Diff line Loading @@ -148,7 +148,7 @@ install_deps: venv #install_devdeps: @ Install (or update) development dependencies in virtual environment specifed in file "requirements-dev.txt". install_devdeps: venv $(ACTIVATE_VENV); \ python -m pip install --upgrade pip wheel setuptools twine; \ python -m pip install --upgrade pip wheel setuptools importlib twine; \ python -m pip install -r requirements-dev.txt #install_docdeps: @ Install non-Python dependencies to build datafold's documentation (requires admin rights or set, DOCKER_ENVIRONMENT=true). Loading @@ -157,14 +157,14 @@ ifeq ($(OS),Linux) ifeq ($(IS_DOCKER),) # true if IS_DOCKER is empty @# TODO this could be improved to avoid statement duplication... only sudo changes sudo apt-get update \ && wget "https://github.com/jgm/pandoc/releases/download/3.1.5/pandoc-3.1.5-1-amd64.deb" \ && sudo apt -y --no-install-recommends install ./pandoc-3.1.5-1-amd64.deb \ && wget "https://github.com/jgm/pandoc/releases/download/3.9/pandoc-3.9-1-amd64.deb" \ && sudo apt -y --no-install-recommends install ./pandoc-3.9-1-amd64.deb \ && sudo apt -y --no-install-recommends install $(_DOCDEPS) \ && rm -f pandoc-3.1.5-1-amd64.deb; && rm -f pandoc-3.9-1-amd64.deb; else # in docker "sudo" is not available and everything is executed with root apt-get update \ && wget "https://github.com/jgm/pandoc/releases/download/3.1.5/pandoc-3.1.5-1-amd64.deb" \ && apt -y --no-install-recommends install ./pandoc-3.1.5-1-amd64.deb \ && wget "https://github.com/jgm/pandoc/releases/download/3.9/pandoc-3.9-1-amd64.deb" \ && apt -y --no-install-recommends install ./pandoc-3.9-1-amd64.deb \ && apt -y --no-install-recommends install $(_DOCDEPS); endif else # OS = Windows Loading README.rst +1 −1 Original line number Diff line number Diff line Loading @@ -35,7 +35,7 @@ The package includes: model can handle a sparse kernel matrix and allows setting an arbitrary kernel, including the standard Gaussian kernel, `continuous k-nearest neighbor kernel <https://arxiv.org/abs/1606.02353>`__, or `dynamics-adapted cone kernel <https://cims.nyu.edu/~dimitris/files/Giannakis15_cone_kernels.pdf>`__. `dynamics-adapted cone kernel <https://epubs.siam.org/doi/10.1137/140954544>`__. * Cross-validation. The method ``EDMDCV`` allows model parameters to be optimized with cross-validation splittings that account for the temporal order in time series data. * Methods to perform Model Predictive Control (MPC) with Koopman operator-based methods ( Loading datafold/appfold/tests/test_edmd.py +2 −2 Original line number Diff line number Diff line Loading @@ -766,7 +766,7 @@ class EDMDTest(unittest.TestCase): diff = inverse_dict - self.sine_wave_tsc # sort out the removed rows from Takens (NaN values) self.assertTrue((diff.dropna() < 1e-14).all().all()) self.assertTrue((diff.dropna() < 1e-14).to_numpy().all()) if plot: ax = self.sine_wave_tsc.plot() Loading Loading @@ -805,7 +805,7 @@ class EDMDTest(unittest.TestCase): diff = inverse_dict - self.sine_wave_tsc # sort out the removed rows from Takens (NaN values) self.assertTrue((diff.dropna() < 1e-14).all().all()) self.assertTrue((diff.dropna() < 1e-14).to_numpy().all()) # test that the fit_param dmd__store_generator_matrix was really passed to the # DMD model. Loading datafold/dynfold/tests/test_dmd.py +4 −2 Original line number Diff line number Diff line Loading @@ -726,7 +726,7 @@ class DMDTest(unittest.TestCase): # also fails if there are changes in the implementation that includes small # numerical noise self.assertLessEqual(np.abs(score_dmd - score_gdmd), 9.81e-11) self.assertLessEqual(np.abs(score_dmd - score_gdmd), 9.81e-10) if plot: print(score_dmd) Loading Loading @@ -898,7 +898,9 @@ class DMDTest(unittest.TestCase): expected = DMDStandard().fit(harmonic) actual = DMDStandard().fit(combined, sample_weights=weights) nptest.assert_array_equal(expected.eigenvalues_, actual.eigenvalues_) nptest.assert_almost_equal( expected.eigenvalues_, actual.eigenvalues_, decimal=16 ) def test_resdmd(self): dim = 7 Loading Loading
CONTRIBUTORS +1 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ Software maintainer ------------------- # Ordered alphabetically by last name. Last name, First name; <email>; Years of contribution Cukarska, Ana; <ana.cukarska@tum.de>; 2026- Dietrich, Felix; <felix.dietrich@tum.de>; 2019- Lehmberg, Daniel; <daniel.lehmberg@hm.edu>; 2019- Loading
Makefile +6 −6 Original line number Diff line number Diff line Loading @@ -148,7 +148,7 @@ install_deps: venv #install_devdeps: @ Install (or update) development dependencies in virtual environment specifed in file "requirements-dev.txt". install_devdeps: venv $(ACTIVATE_VENV); \ python -m pip install --upgrade pip wheel setuptools twine; \ python -m pip install --upgrade pip wheel setuptools importlib twine; \ python -m pip install -r requirements-dev.txt #install_docdeps: @ Install non-Python dependencies to build datafold's documentation (requires admin rights or set, DOCKER_ENVIRONMENT=true). Loading @@ -157,14 +157,14 @@ ifeq ($(OS),Linux) ifeq ($(IS_DOCKER),) # true if IS_DOCKER is empty @# TODO this could be improved to avoid statement duplication... only sudo changes sudo apt-get update \ && wget "https://github.com/jgm/pandoc/releases/download/3.1.5/pandoc-3.1.5-1-amd64.deb" \ && sudo apt -y --no-install-recommends install ./pandoc-3.1.5-1-amd64.deb \ && wget "https://github.com/jgm/pandoc/releases/download/3.9/pandoc-3.9-1-amd64.deb" \ && sudo apt -y --no-install-recommends install ./pandoc-3.9-1-amd64.deb \ && sudo apt -y --no-install-recommends install $(_DOCDEPS) \ && rm -f pandoc-3.1.5-1-amd64.deb; && rm -f pandoc-3.9-1-amd64.deb; else # in docker "sudo" is not available and everything is executed with root apt-get update \ && wget "https://github.com/jgm/pandoc/releases/download/3.1.5/pandoc-3.1.5-1-amd64.deb" \ && apt -y --no-install-recommends install ./pandoc-3.1.5-1-amd64.deb \ && wget "https://github.com/jgm/pandoc/releases/download/3.9/pandoc-3.9-1-amd64.deb" \ && apt -y --no-install-recommends install ./pandoc-3.9-1-amd64.deb \ && apt -y --no-install-recommends install $(_DOCDEPS); endif else # OS = Windows Loading
README.rst +1 −1 Original line number Diff line number Diff line Loading @@ -35,7 +35,7 @@ The package includes: model can handle a sparse kernel matrix and allows setting an arbitrary kernel, including the standard Gaussian kernel, `continuous k-nearest neighbor kernel <https://arxiv.org/abs/1606.02353>`__, or `dynamics-adapted cone kernel <https://cims.nyu.edu/~dimitris/files/Giannakis15_cone_kernels.pdf>`__. `dynamics-adapted cone kernel <https://epubs.siam.org/doi/10.1137/140954544>`__. * Cross-validation. The method ``EDMDCV`` allows model parameters to be optimized with cross-validation splittings that account for the temporal order in time series data. * Methods to perform Model Predictive Control (MPC) with Koopman operator-based methods ( Loading
datafold/appfold/tests/test_edmd.py +2 −2 Original line number Diff line number Diff line Loading @@ -766,7 +766,7 @@ class EDMDTest(unittest.TestCase): diff = inverse_dict - self.sine_wave_tsc # sort out the removed rows from Takens (NaN values) self.assertTrue((diff.dropna() < 1e-14).all().all()) self.assertTrue((diff.dropna() < 1e-14).to_numpy().all()) if plot: ax = self.sine_wave_tsc.plot() Loading Loading @@ -805,7 +805,7 @@ class EDMDTest(unittest.TestCase): diff = inverse_dict - self.sine_wave_tsc # sort out the removed rows from Takens (NaN values) self.assertTrue((diff.dropna() < 1e-14).all().all()) self.assertTrue((diff.dropna() < 1e-14).to_numpy().all()) # test that the fit_param dmd__store_generator_matrix was really passed to the # DMD model. Loading
datafold/dynfold/tests/test_dmd.py +4 −2 Original line number Diff line number Diff line Loading @@ -726,7 +726,7 @@ class DMDTest(unittest.TestCase): # also fails if there are changes in the implementation that includes small # numerical noise self.assertLessEqual(np.abs(score_dmd - score_gdmd), 9.81e-11) self.assertLessEqual(np.abs(score_dmd - score_gdmd), 9.81e-10) if plot: print(score_dmd) Loading Loading @@ -898,7 +898,9 @@ class DMDTest(unittest.TestCase): expected = DMDStandard().fit(harmonic) actual = DMDStandard().fit(combined, sample_weights=weights) nptest.assert_array_equal(expected.eigenvalues_, actual.eigenvalues_) nptest.assert_almost_equal( expected.eigenvalues_, actual.eigenvalues_, decimal=16 ) def test_resdmd(self): dim = 7 Loading