NIFTy merge requestshttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests2018-04-09T08:25:39Zhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/243Upload New File2018-04-09T08:25:39ZTorsten EnsslinUpload New FileI was unsure whether this is the right place for the file and right way to include it. So dismiss this merge request if it is not. Otherwise, please accept it. I will then link the file from the paper.I was unsure whether this is the right place for the file and right way to include it. So dismiss this merge request if it is not. Otherwise, please accept it. I will then link the file from the paper.Martin ReineckeMartin Reineckehttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/240WIP: Docker experiments2018-04-05T15:59:53ZPhilipp Arrasparras@mpa-garching.mpg.deWIP: Docker experimentshttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/228Unify verbosity behaviour of GradientNormController2018-03-15T15:53:30ZPhilipp Arrasparras@mpa-garching.mpg.deUnify verbosity behaviour of GradientNormControllerhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/214WIP: Resolve "Tests: Energy class"2018-01-30T19:03:35ZPhilipp Arrasparras@mpa-garching.mpg.deWIP: Resolve "Tests: Energy class"Closes #99Closes #99https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/213WIP: Resolve "Tests: Energy class"2018-01-30T19:03:36ZPhilipp Arrasparras@mpa-garching.mpg.deWIP: Resolve "Tests: Energy class"Closes #99Closes #99https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/212WIP: Resolve "Gradients of all PowerEnergy classes and NoiseEnergy seem to be...2018-01-30T13:00:16ZPhilipp Arrasparras@mpa-garching.mpg.deWIP: Resolve "Gradients of all PowerEnergy classes and NoiseEnergy seem to be broken"Closes #214Closes #214https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/209WIP: Byebye volume factors2018-01-25T11:23:34ZMartin ReineckeWIP: Byebye volume factorsThis branch contains Reimar's work on eliminating (most of) the volume factors.
Unit tests are passing, but the demos need more adjusting.
Please test this as hard as you can! (And add new unit tests if appropriate...)
@reimar, @kjako, ...This branch contains Reimar's work on eliminating (most of) the volume factors.
Unit tests are passing, but the demos need more adjusting.
Please test this as hard as you can! (And add new unit tests if appropriate...)
@reimar, @kjako, @ensslint, @parras: this means you ;)Reimar H LeikeReimar H Leikehttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/208WIP: Throw exception if curvature is not implemented for RelaxedNewton2018-01-16T17:21:37ZPhilipp Arrasparras@mpa-garching.mpg.deWIP: Throw exception if curvature is not implemented for RelaxedNewtonThe problem: If an energy class without curvature is defined and then minimized with RelaxedNewton, it does not raise an error and continues the script. In this way, I thought that my algorithm estimates noise variances but it doesn't.
...The problem: If an energy class without curvature is defined and then minimized with RelaxedNewton, it does not raise an error and continues the script. In this way, I thought that my algorithm estimates noise variances but it doesn't.
I do not know how to implement this check properly. Do I really need to import `sys` for that and use `sys.exit()`?https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/207new operator convenience functionality2018-01-25T11:24:30ZMartin Reineckenew operator convenience functionalityThe operators on this branch have the following new properties:
- they can be chained with "*", "+", and "-"
- they have new properties ".inverse" and ".adjoint", which return the inverse resp. the adjoint operator
This allows very simp...The operators on this branch have the following new properties:
- they can be chained with "*", "+", and "-"
- they have new properties ".inverse" and ".adjoint", which return the inverse resp. the adjoint operator
This allows very simple creation of combined operators. See the end of `demos/wiener_filter_easy.py` or `nifty/library/wiener_filter_curvature.py` for a nice demo.
@kjako, @dpumpe, @parras, @theos, @reimar, @ensslint : I'd be happy about any feedback!Martin ReineckeMartin Reineckehttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/206added nonlinear_critical_filter in demo, fixed some things in energies, added…2017-12-15T12:03:24ZJakob Knollmuelleradded nonlinear_critical_filter in demo, fixed some things in energies, added…added nonlinear_critical_filter in demo, fixed some things in energies, added DOFSpace+Projection (untested)added nonlinear_critical_filter in demo, fixed some things in energies, added DOFSpace+Projection (untested)https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/180Add an alternative FFT operator2017-08-14T12:35:04ZMartin ReineckeAdd an alternative FFT operatorThis branch introduces a new FFT operator which uses the same primitive data type (float or complex) in both position and harmonic space.
For complex inputs, it behaves in exactly the same way as the existing `FFTOperator`; for real fie...This branch introduces a new FFT operator which uses the same primitive data type (float or complex) in both position and harmonic space.
For complex inputs, it behaves in exactly the same way as the existing `FFTOperator`; for real fields it represents the (hermitian) complex fields on the harmonic side as the sum of their real and imaginary parts. This construction does not lose any information with respect to the complex fields, lives on the same spaces and has the same distance array.
Currently tests only use `zerocenter=False`, because zerocentered domains seem to trigger a bug in Nifty's FFTs (see issue #174). Also one of the MPI tests fails because FFTs of odd length are not (yet) supported in that scenario. However it is absolutely necessary to test odd lengths to get more coverage.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/179WIP: Resolve "Remove one of the WienerFilter demos"2017-08-03T08:06:11ZPhilipp Arrasparras@mpa-garching.mpg.deWIP: Resolve "Remove one of the WienerFilter demos"Closes #173Closes #173https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/178WIP: Issue173 wiener filter demos2017-11-29T12:48:42ZPhilipp Arrasparras@mpa-garching.mpg.deWIP: Issue173 wiener filter demosHier mein Vorschlag für die beiden WienerFilter demos.
Was haltet ihr davon, wenn wir das wf_via_curvature durch ein 1D-Beispiel mit Rekonstruktion im Ortsraum ersetzen? Das wäre dann noch einfacher für den Einstieg. Da hätte ich auch w...Hier mein Vorschlag für die beiden WienerFilter demos.
Was haltet ihr davon, wenn wir das wf_via_curvature durch ein 1D-Beispiel mit Rekonstruktion im Ortsraum ersetzen? Das wäre dann noch einfacher für den Einstieg. Da hätte ich auch was da.
Cheers
Philipphttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/170More cg work2017-08-21T06:02:58ZTheo SteiningerMore cg workhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/168WIP: Fixing wiener filter demo2017-08-02T21:13:16ZJakob KnollmuellerWIP: Fixing wiener filter demoI added some distribution_strategies in wiener_filter_via_hamiltonian.py, the WienerFilterEnergy now also uses the given inverter and distribution_strategies are now set in InvertibleOperatorMixin if no x0 is givenI added some distribution_strategies in wiener_filter_via_hamiltonian.py, the WienerFilterEnergy now also uses the given inverter and distribution_strategies are now set in InvertibleOperatorMixin if no x0 is givenhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/152Field testing2018-01-25T12:48:03ZTheo SteiningerField testinghttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/147re-organize PowerSpace2017-07-12T08:02:57ZMartin Reineckere-organize PowerSpaceThis branch aims at making the current `PowerSpace` design simpler.
The following changes have been made so far:
- the `PowerSpace` members are always fully computed upon construction of the `PowerSpace`; caching has been removed. Th...This branch aims at making the current `PowerSpace` design simpler.
The following changes have been made so far:
- the `PowerSpace` members are always fully computed upon construction of the `PowerSpace`; caching has been removed. This still has performance drawbacks which I hope to address in the future.
- the parameters `logarithmic` and `nbin` can still be supplied to the constructor, but they are no longer part of the `PowerSpace`'s state. They are used to compute the `binbounds`, and forgotten afterwards. (In the current implementation it is possible to set these attributes to values which contradict the actual `binbounds`, which is inconsistent.)
- `pundex` is currently not supported, but can be reintroduced if needed.
- "natural" binning (which happens if neither `logarithmic`, `nbin` or `binbounds` are specified to the constructor) has been improved to avoid spurious extra bins due to numerical noise.
- index computation has been accelerated significantly
- the `config` property has been removed; `binbounds` is now a direct property of the class.
I'm sure that a lot will have to change before this can be merged; please consider this merge request mainly as a starting point for discussion!
As a quick demonstration of the advantages of the new implementation, run the following commands in both "master" and "index_games" branch and watch CPU time and memory consumption:
```
a=RGSpace((10000,10000),harmonic=True)
p=PowerSpace(a,binbounds=sqrt(2.)*np.arange(10000.))
```https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/142Tiny fix for Field.power_synthesize() & RGSpace.hermitian_fixed_points()2017-05-27T14:07:22ZPumpe, Daniel (dpumpe)Tiny fix for Field.power_synthesize() & RGSpace.hermitian_fixed_points()Field.power_synthesize working again as, RGSpace.hermitian_fixed_spaces was uncommented.Field.power_synthesize working again as, RGSpace.hermitian_fixed_spaces was uncommented.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/134more docu on sqrt power spectrum issue #1282017-05-22T20:06:17ZReimar H Leikemore docu on sqrt power spectrum issue #128Added some clarifications to the documentation and fixed typosAdded some clarifications to the documentation and fixed typoshttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/133Add projection to field2017-05-29T13:47:43ZJakob KnollmuellerAdd projection to fieldadded projection of a Field into power space to Field class (mathematically: m^\dagger P m ) required for critical Filteringadded projection of a Field into power space to Field class (mathematically: m^\dagger P m ) required for critical Filtering