pyANOVAapprox 2.0.0__tar.gz → 2.0.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/PKG-INFO +1 -1
  2. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/pyproject.toml +1 -1
  3. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/src/pyANOVAapprox/approx.py +0 -2
  4. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/src/pyANOVAapprox/bandwidth.py +11 -9
  5. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/.github/workflows/ci.yml +0 -0
  6. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/.github/workflows/documentation.yml +0 -0
  7. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/.github/workflows/format.yml +0 -0
  8. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/.github/workflows/release.yml +0 -0
  9. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/.gitignore +0 -0
  10. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/LICENSE +0 -0
  11. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/README.md +0 -0
  12. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/docs/Makefile +0 -0
  13. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/docs/source/Analysis.rst +0 -0
  14. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/docs/source/Approximation.rst +0 -0
  15. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/docs/source/Errors.rst +0 -0
  16. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/docs/source/conf.py +0 -0
  17. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/docs/source/index.rst +0 -0
  18. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/simpleTest/TestFunctionPeriodic.py +0 -0
  19. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/simpleTest/exampleAutoapproximate.py +0 -0
  20. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/simpleTest/exampleCheb.py +0 -0
  21. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/simpleTest/exampleClassification.py +0 -0
  22. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/simpleTest/exampleNonPeriodic.py +0 -0
  23. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/simpleTest/examplePeriodic.py +0 -0
  24. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/simpleTest/exampleWavelet.py +0 -0
  25. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/src/pyANOVAapprox/__init__.py +0 -0
  26. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/src/pyANOVAapprox/analysis.py +0 -0
  27. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/src/pyANOVAapprox/errors.py +0 -0
  28. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/src/pyANOVAapprox/fista.py +0 -0
  29. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/src/pyANOVAapprox/trafos.py +0 -0
  30. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/tests/TestFunctionCheb.py +0 -0
  31. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/tests/TestFunctionPeriodic.py +0 -0
  32. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/tests/cheb_fista.py +0 -0
  33. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/tests/cheb_lsqr.py +0 -0
  34. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/tests/per_fista.py +0 -0
  35. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/tests/per_lsqr.py +0 -0
  36. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/tests/run_tests.py +0 -0
  37. {pyanovaapprox-2.0.0 → pyanovaapprox-2.0.1}/tests/wav_lsqr.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyANOVAapprox
3
- Version: 2.0.0
3
+ Version: 2.0.1
4
4
  Summary: Approximation Package for High-Dimensional Functions
5
5
  Project-URL: Homepage, https://github.com/NFFT/pyGroupedTransforms
6
6
  Author-email: Felix Wirth <fwi012001@gmail.com>
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "pyANOVAapprox"
7
- version = "2.0.0"
7
+ version = "2.0.1"
8
8
  authors = [
9
9
  { name="Felix Wirth", email="fwi012001@gmail.com" },
10
10
  ]
@@ -246,8 +246,6 @@ class approx:
246
246
  setting = self.getSetting(settingnr)
247
247
  if settingnr is None:
248
248
  settingnr = self.aktsetting
249
- # print(setting.U)
250
- # print(setting.N)
251
249
  self.trafo[settingnr] = GroupedTransform(
252
250
  system=gt_systems[setting.basis],
253
251
  U=setting.U,
@@ -5,9 +5,11 @@ def getfcu(ghat, u):
5
5
  idx = [s.u for s in ghat.settings].index(u)
6
6
  bws = ghat.settings[idx].bandwidths
7
7
 
8
- fcu = ghat[u].reshape(bws[::-1] - 1)
9
- fcu = np.permute_dims(fcu, range(len(bws))[::-1])
10
-
8
+ #fcu = ghat[u].reshape(bws[::-1] - 1)
9
+ #fcu = np.permute_dims(fcu, range(len(bws))[::-1])
10
+ fcu = ghat[u].reshape(bws - 1)
11
+ fcu = np.permute_dims(fcu, range(len(bws)))
12
+
11
13
  return fcu
12
14
 
13
15
 
@@ -30,7 +32,7 @@ def compute_bandwidth(B, D, t):
30
32
  us = set(D.keys()) - {()}
31
33
  bw = {u: [6] * len(u) for u in us}
32
34
  bw[()] = []
33
-
35
+
34
36
  minfreqs = sum(math.prod((bw[u][j] - 1) for j in range(len(u))) for u in us)
35
37
  if B < minfreqs:
36
38
  raise ValueError(f"Budget too small: {B} < {minfreqs}")
@@ -156,19 +158,19 @@ def estimate_rates(self, lam, settingnr=None, verbose=False):
156
158
  )
157
159
 
158
160
  if (idx is None) or idx >= len(axissum):
159
- D[u][len(u) - j - 1] = math.nan
160
- t[u][len(u) - j - 1] = math.nan
161
+ D[u][j] = math.nan
162
+ t[u][j] = math.nan
161
163
  else:
162
164
  idx = min(len(axissum), len(axissum) - idx + 2)
163
165
  Duj, tuj = fitrate_log(np.cumsum((axissum[0:idx])[::-1])[::-1])
164
- D[u][len(u) - j - 1] = Duj
165
- t[u][len(u) - j - 1] = -tuj / 2
166
+ D[u][j] = Duj
167
+ t[u][j] = -tuj / 2
166
168
 
167
169
  if verbose:
168
170
  x = np.arange(1, idx + 1)
169
171
  ax.plot(
170
172
  x,
171
- D[u][len(u) - j - 1] * x ** (-2 * t[u][len(u) - j - 1]),
173
+ D[u][j] * x ** (-2 * t[u][j]),
172
174
  linewidth=2,
173
175
  # color=j
174
176
  )
File without changes
File without changes
File without changes