NIFTy merge requestshttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests2020-01-31T11:03:54Zhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/404getting_started_mf cleanup2020-01-31T11:03:54ZLukas Platzgetting_started_mf cleanuppolishing for better readabilitypolishing for better readabilityhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/403operator.py: Raise not-implemented in matmul call2020-01-23T12:58:54ZGordian Edenhoferoperator.py: Raise not-implemented in matmul callContrary to other overloaded operators, the `__matmul__` call apparently
needs to raise an exception instead of returning `NotImplemented`. This
behaviour can be seen for example in:
```python
psp = ift.RGSpace(512)
m = ift.MaskOperator...Contrary to other overloaded operators, the `__matmul__` call apparently
needs to raise an exception instead of returning `NotImplemented`. This
behaviour can be seen for example in:
```python
psp = ift.RGSpace(512)
m = ift.MaskOperator(ift.Field.from_raw(psp, np.random.randint(0, 2, 512)))
m(ift.from_random("normal", m.domain).val) is NotImplemented
```
which should be invalid and raise an exception but previously returned
`True` instead.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/402Scalable energies22020-01-23T13:40:59ZReimar H LeikeScalable energies2make the Scaling Operator preserve the metric, such that one can temper the likelihood with:
likelihood = likelihood.scale(scalar)
without breaking the code.make the Scaling Operator preserve the metric, such that one can temper the likelihood with:
likelihood = likelihood.scale(scalar)
without breaking the code.Martin ReineckeMartin Reineckehttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/401Gauss sampling dtype2020-01-21T20:35:51ZPhilipp Arrasparras@mpa-garching.mpg.deGauss sampling dtypehttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/400Add one_over() to MultiField2020-01-20T21:11:11ZPhilipp Arrasparras@mpa-garching.mpg.deAdd one_over() to MultiFieldhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/399Fix new finalize method2019-12-17T11:19:06ZPhilipp HaimFix new finalize methodThe way the new PowerDistrubutor was built didn't work for N_copies!=0. This should fix that.The way the new PowerDistrubutor was built didn't work for N_copies!=0. This should fix that.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/398Switch FFT to scipy.fft2019-12-20T11:20:56ZMartin ReineckeSwitch FFT to scipy.fftThis gets rid of the `pypocketfft` dependency, but can only be merged once `scipy` 1.4 has been released.This gets rid of the `pypocketfft` dependency, but can only be merged once `scipy` 1.4 has been released.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/396Cosmetics2019-12-09T09:47:20ZPhilipp Arrasparras@mpa-garching.mpg.deCosmeticshttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/395Introduce `nifty6.mpi` namespace2020-01-23T13:42:48ZLukas PlatzIntroduce `nifty6.mpi` namespaceAs proposed by @reimar in #278, MPI parallelization can be done through specialized operators like the `MetricGaussianKL_MPI`.
The current state of the `do_cleanup` branch does not import them by default (as that would fail without mp...As proposed by @reimar in #278, MPI parallelization can be done through specialized operators like the `MetricGaussianKL_MPI`.
The current state of the `do_cleanup` branch does not import them by default (as that would fail without mpi4py installed) and provides no easy way of importing them, making it necessary to write their full file path to import them: `from nifty6.minimization.metric_gaussian_kl_mpi import MetricGaussianKL_MPI`
This patch proposes to introduce a `nifty6.mpi` namespace, from which all MPI-related components can be directly imported like `from nifty6.mpi import MetricGaussianKL_MPI`.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/394Introduce partial insert2019-12-10T11:28:21ZPhilipp Arrasparras@mpa-garching.mpg.deIntroduce partial insertSolves #280 Solves #280 https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/392Boost performance of correlated fields2019-12-06T13:54:20ZPhilipp Arrasparras@mpa-garching.mpg.deBoost performance of correlated fieldsSolves the issue that for correlated fields with several amplitude models `PowerDistributor` calls unnecessarily often `special_add_at` and `bincounts`.
Solve #281Solves the issue that for correlated fields with several amplitude models `PowerDistributor` calls unnecessarily often `special_add_at` and `bincounts`.
Solve #281https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/391Add a change log entry for correlated fields2019-12-06T13:10:20ZPhilipp Arrasparras@mpa-garching.mpg.deAdd a change log entry for correlated fieldsSolves #277 Solves #277 https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/390Downgrade f-strings to good old format strings2019-12-06T08:18:39ZGordian EdenhoferDowngrade f-strings to good old format stringsSwitch back to ordinary format strings instead of f-strings introduced in fc6e304ab8, i.e. make NIFTy work again on python < 3.6.Switch back to ordinary format strings instead of f-strings introduced in fc6e304ab8, i.e. make NIFTy work again on python < 3.6.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/389Swap order of arguments of ScalingOperator2019-12-06T08:25:26ZGordian EdenhoferSwap order of arguments of ScalingOperatorMake the ScalingOperator consistent with `from_global_data`, `full` and
possibly other operators which take the domain as first argument. This
breaks the currently enforced consistency with the `DiagonalOperator`
which takes a field as f...Make the ScalingOperator consistent with `from_global_data`, `full` and
possibly other operators which take the domain as first argument. This
breaks the currently enforced consistency with the `DiagonalOperator`
which takes a field as first argument and the domain only as an optional
keyword argument.
Fixes #279.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/388Fix usage of print to logging2019-12-06T08:18:54ZGordian EdenhoferFix usage of print to loggingThis change is purely for consistency sake and a little bit pedantic :DThis change is purely for consistency sake and a little bit pedantic :Dhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/387Remove standard MPI parallelization2019-12-06T16:45:52ZPhilipp Arrasparras@mpa-garching.mpg.deRemove standard MPI parallelizationhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/386correlated_field.py: Implement offset in finalize2019-12-04T21:38:31ZGordian Edenhofercorrelated_field.py: Implement offset in finalizeAllow for specifying either a Field/MultiField or a float as an offset for the correlated field during `finalize`.
@parras Can you take a second look at it to make sure I don't do something stupid also regarding the text in the comment.Allow for specifying either a Field/MultiField or a float as an offset for the correlated field during `finalize`.
@parras Can you take a second look at it to make sure I don't do something stupid also regarding the text in the comment.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/385Usability improvements for correlated field2019-12-04T21:53:24ZGordian EdenhoferUsability improvements for correlated fieldRaise errors if provided wrong input values instead of raising assertions. Plus, more efficiently calculate statistics based on a set of samples.Raise errors if provided wrong input values instead of raising assertions. Plus, more efficiently calculate statistics based on a set of samples.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/384Small changes in CorrelatedFieldMaker2019-12-04T13:12:13ZPhilipp HaimSmall changes in CorrelatedFieldMakerhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/383fix from_global_data in distributed_do2019-11-29T11:26:11ZMartin Reineckefix from_global_data in distributed_doThis fix is already in the NIFTy_6 branch, but we need it in NIFTy_5 as well.This fix is already in the NIFTy_6 branch, but we need it in NIFTy_5 as well.