ift issueshttps://gitlab.mpcdf.mpg.de/groups/ift/-/issues2018-03-18T10:55:45Zhttps://gitlab.mpcdf.mpg.de/ift/D2O/-/issues/24Missing file in last commit?2018-03-18T10:55:45ZMartin ReineckeMissing file in last commit?Is it possible that you forgot to add a file `random.py` in your last commit?
As things are, D2O now imports Python's default `random` module, but this probably doesn't address the problems with MPI-parallel seeding you mentioned.Is it possible that you forgot to add a file `random.py` in your last commit?
As things are, D2O now imports Python's default `random` module, but this probably doesn't address the problems with MPI-parallel seeding you mentioned.https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/229Allow redirection of NIFTy's console output2018-03-14T18:56:03ZMartin ReineckeAllow redirection of NIFTy's console outputNIFTy still prints to the console occasionally (via the dobj.mprint() method). It should be possible to redirect this output to arbitrary file handles (or /dev/null) on user request.NIFTy still prints to the console occasionally (via the dobj.mprint() method). It should be possible to redirect this output to arbitrary file handles (or /dev/null) on user request.https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/228diagonal Operator with zeros2018-03-13T12:41:15ZReimar H Leikediagonal Operator with zerosCurrently the DiagonalOperator always has the capability of inverse_times. However, this is only legal if there are no zeros on the diagonal. One should either document that a non-zero diagonal is expected or change the properties of the...Currently the DiagonalOperator always has the capability of inverse_times. However, this is only legal if there are no zeros on the diagonal. One should either document that a non-zero diagonal is expected or change the properties of the operator dependent on the input.https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/202On nifty2go branch: Domain of signal fields2018-03-13T08:56:15ZPhilipp Arrasparras@mpa-garching.mpg.deOn nifty2go branch: Domain of signal fieldsI think there is an inconsistency in the current nifty2go branch. The WienerFilter and CriticalFilter classes assume the signal field to live in harmonic space whereas the Nonlinear* classes assume it to be in signal space.
What is the ...I think there is an inconsistency in the current nifty2go branch. The WienerFilter and CriticalFilter classes assume the signal field to live in harmonic space whereas the Nonlinear* classes assume it to be in signal space.
What is the reason for having implemented WienerFilterEnergy and Curvature this way? How do we resolve this inconsistency?https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/217Parallelism in `probe_with_posterior_samples`2018-03-01T22:50:58ZPhilipp Arrasparras@mpa-garching.mpg.deParallelism in `probe_with_posterior_samples`Can we draw these samples in parallel? @pfrank, could you perhaps contribute your implementation here?Can we draw these samples in parallel? @pfrank, could you perhaps contribute your implementation here?https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/224Add kwargs to plotting2018-03-01T20:29:55ZPhilipp Arrasparras@mpa-garching.mpg.deAdd kwargs to plottingCan we add `linewidth` and `alpha` to the kwargs supported by 1d-plotting routines? If so, I can do it.
Are there perhaps additional kwargs you guys need?Can we add `linewidth` and `alpha` to the kwargs supported by 1d-plotting routines? If so, I can do it.
Are there perhaps additional kwargs you guys need?https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/225broken link in Readme2018-02-22T13:00:52ZSilvan Streitbroken link in ReadmeThe link to the informal introduction in https://gitlab.mpcdf.mpg.de/ift/NIFTy#first-steps is broken.The link to the informal introduction in https://gitlab.mpcdf.mpg.de/ift/NIFTy#first-steps is broken.https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/222Bug in LaplaceOperator2018-02-21T21:21:01ZMartin ReineckeBug in LaplaceOperatorThe current version of `LaplaceOperator` has a bug that causes the input field to be modified whenever its `adjoint_times()` method is called.
The fix is trivial and will be applied in a few minutes.
@kjako, @reimar, @parras, @pfrank, @...The current version of `LaplaceOperator` has a bug that causes the input field to be modified whenever its `adjoint_times()` method is called.
The fix is trivial and will be applied in a few minutes.
@kjako, @reimar, @parras, @pfrank, @dpumpe, please check if this maybe fixes any mysterious problems you have encountered!https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/177Documentation for FFTSmoothingOperator and DirectSmoothingOperator missing2018-02-21T21:18:52ZPhilipp Arrasparras@mpa-garching.mpg.deDocumentation for FFTSmoothingOperator and DirectSmoothingOperator missinghttps://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/85Docstring: NIFTy2018-02-21T21:15:54ZTheo SteiningerDocstring: NIFTyhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/215More generic posterior sampling2018-02-21T21:13:02ZMartin ReineckeMore generic posterior samplingIt was mentioned that the machinery for drawing posterior samples should be made more general, and should not only be available for `WienerFilterCurvature`.
I'd be happy to implement this, but I need a clear description of the required ...It was mentioned that the machinery for drawing posterior samples should be made more general, and should not only be available for `WienerFilterCurvature`.
I'd be happy to implement this, but I need a clear description of the required ingredients and the algorithm.
Concerning this functionality, there are currently several open questions:
- issue #211
- issue #200
- NIFTy4 currently has two implementations: `generate_posterior_sample()` and `generate_posterior_sample2()`, both in `nifty4/library/wiener_filter_curvature.py`. Which is the correct one?
@kjako, @reimar, @parras: please let's get together and sort this out soon!https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/223power_synthesize() vs. draw_sample()2018-02-21T21:11:06ZMartin Reineckepower_synthesize() vs. draw_sample()Are there any fundamental differences between
- calling `power_synthesize(f)`, and
- calling `DiagonalOperator(diagonal=f).draw_sample()`?
I think we have some duplicate code here, which could be cleaned up.
Related question: does `dra...Are there any fundamental differences between
- calling `power_synthesize(f)`, and
- calling `DiagonalOperator(diagonal=f).draw_sample()`?
I think we have some duplicate code here, which could be cleaned up.
Related question: does `draw_sample()` work if the operator has complex values on the diagonal?
@reimar, @kjako, @parras, any comments?https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/221DiagonalOperator diagonal() function as property?2018-02-17T13:58:55ZChristoph LienhardDiagonalOperator diagonal() function as property?The DiagonalOperator class has a function diagonal() returning the respective Field.
IMHO this should be a property, since e.g.
```
diagonal_val = operator.diagonal().val
```
just looks stupid (from a purely designy pythonic point of vi...The DiagonalOperator class has a function diagonal() returning the respective Field.
IMHO this should be a property, since e.g.
```
diagonal_val = operator.diagonal().val
```
just looks stupid (from a purely designy pythonic point of view).
The main philosophy I propose in this case is that from a class point of view 'diagonal' to DiagonalOperator is the same as 'val' to Field.
Following this the getter of the proposed property 'diagonal' should not return a copy of the diagonal (in contrast to what the current function diagonal() returns) since the property 'val' of Field does not do this either.https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/179Field.from_random crashes mpi2018-02-15T14:31:18ZJakob KnollmuellerField.from_random crashes mpiHi,
I found another bug with mpi:
[minimal_example.py](/uploads/3863c7e25ac0661caab65a64bd964264/minimal_example.py)
the error I get is:
```
[MainThread][ERROR ] root Uncaught exception
Traceback (most recent call last):
F...Hi,
I found another bug with mpi:
[minimal_example.py](/uploads/3863c7e25ac0661caab65a64bd964264/minimal_example.py)
the error I get is:
```
[MainThread][ERROR ] root Uncaught exception
Traceback (most recent call last):
File "minimal_example-3.py", line 16, in <module>
std=some_diagonal.val)
File "/usr/local/lib/python2.7/dist-packages/ift_nifty-3.1.0-py2.7.egg/nifty/field.py", line 251, in from_random
lambda shape: generator_function(dtype=f.dtype,
File "/usr/local/lib/python2.7/dist-packages/d2o/distributed_data_object.py", line 469, in apply_generator
self.set_local_data(generator(self.distributor.local_shape), copy=copy)
File "/usr/local/lib/python2.7/dist-packages/ift_nifty-3.1.0-py2.7.egg/nifty/field.py", line 253, in <lambda>
**random_arguments))
File "/usr/local/lib/python2.7/dist-packages/ift_nifty-3.1.0-py2.7.egg/nifty/random.py", line 50, in normal
x *= dtype.type(std)
ValueError: operands could not be broadcast together with shapes (16,64,64) (64,64,64) (16,64,64)
-------------------------------------------------------
Primary job terminated normally, but 1 process returned
a non-zero exit code.. Per user-direction, the job has been aborted.
-------------------------------------------------------
--------------------------------------------------------------------------
mpirun detected that one or more processes exited with non-zero status, thus causing
the job to be terminated. The first process to do so was:
Process name: [[29272,1],1]
Exit code: 1
--------------------------------------------------------------------------
```
I only get it if the std in from_random is a array, for numbers it seems to work
Jakobhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/124Use sphinx for automated build of documentation2018-02-15T11:22:18ZTheo SteiningerUse sphinx for automated build of documentationIn the past I was successful with sphinx + napoleon
http://www.sphinx-doc.org/en/stable/ext/napoleon.htmlIn the past I was successful with sphinx + napoleon
http://www.sphinx-doc.org/en/stable/ext/napoleon.htmlPhilipp FrankPhilipp Frankhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/93Docstring: Probing2018-02-14T15:13:33ZTheo SteiningerDocstring: Probinghttps://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/220Link in docu broken2018-02-12T14:48:28ZPhilipp Arrasparras@mpa-garching.mpg.deLink in docu brokenAlso found by @wmarg: This link [here](https://gitlab.mpcdf.mpg.de/ift/NIFTy/blob/NIFTy_4/docs/source/start.rst#L19) is broken. Where should it actually point?Also found by @wmarg: This link [here](https://gitlab.mpcdf.mpg.de/ift/NIFTy/blob/NIFTy_4/docs/source/start.rst#L19) is broken. Where should it actually point?https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/219Power space not working in more than 2 dim.2018-02-06T17:18:02ZMargret WesterkampPower space not working in more than 2 dim.For changes in `demos/wiener_filter_via_curvature.py` of the dimension from 2 to 3 comes the error:
```
Traceback (most recent call last):
File "wiener_filter_via_curvature.py", line 43, in <module>
power_space = ift.PowerSpace(ha...For changes in `demos/wiener_filter_via_curvature.py` of the dimension from 2 to 3 comes the error:
```
Traceback (most recent call last):
File "wiener_filter_via_curvature.py", line 43, in <module>
power_space = ift.PowerSpace(harmonic_space)
File "/home/philipp/.local/lib/python3.6/site-packages/nifty4-3.9.0-py3.6.egg/nifty4/spaces/power_space.py", line 139, in __init__
File "/home/philipp/.local/lib/python3.6/site-packages/nifty4-3.9.0-py3.6.egg/nifty4/spaces/rg_space.py", line 93, in get_k_length_array
File "/home/philipp/.local/lib/python3.6/site-packages/nifty4-3.9.0-py3.6.egg/nifty4/field.py", line 77, in __init__
MemoryError
```
What is wrong here?https://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/209Square root in Laplace operator2018-02-06T13:43:33ZPhilipp Arrasparras@mpa-garching.mpg.deSquare root in Laplace operatorCan some explain to me why we devide by the square root of the distances to compute the second derivative in the LaplaceOperator?
https://gitlab.mpcdf.mpg.de/ift/NIFTy/blob/nifty2go/nifty/operators/laplace_operator.py#L99
If I see it c...Can some explain to me why we devide by the square root of the distances to compute the second derivative in the LaplaceOperator?
https://gitlab.mpcdf.mpg.de/ift/NIFTy/blob/nifty2go/nifty/operators/laplace_operator.py#L99
If I see it correctly, it appears first in commit https://gitlab.mpcdf.mpg.de/ift/NIFTy/commit/05eeeabb347754445190675af2ab761f89a6ed60 by @theos. I do not see why this makes sense already because of the denominator's dimensions.Philipp Arrasparras@mpa-garching.mpg.dePhilipp Arrasparras@mpa-garching.mpg.dehttps://gitlab.mpcdf.mpg.de/ift/nifty/-/issues/211Question on generate_posterior_sample()2018-02-06T10:58:22ZMartin ReineckeQuestion on generate_posterior_sample()Currently the code for generate_posterior sample contains the line
`power = sqrt(power_analyze(self.S.diagonal()))`
According to @reimar, this should actually read:
`power = power_analyze(sqrt(self.S.diagonal()))`
@kjako, any objecti...Currently the code for generate_posterior sample contains the line
`power = sqrt(power_analyze(self.S.diagonal()))`
According to @reimar, this should actually read:
`power = power_analyze(sqrt(self.S.diagonal()))`
@kjako, any objections?