NIFTy merge requestshttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests2023-11-25T16:11:31Zhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/889likelihood.__add__: Add domain2023-11-25T16:11:31ZJulian Rüstiglikelihood.__add__: Add domainResolves #390 .Resolves #390 .Julian RüstigJulian Rüstighttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/732Let one demo also run with MPI2022-01-31T18:45:18ZPhilipp Arrasparras@mpa-garching.mpg.deLet one demo also run with MPIhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/189Laplace fixes2017-08-17T23:21:36ZMartin ReineckeLaplace fixesThis should fix the bug mentioned in issue #175 and also improve performance. Some tests have been added as well.This should fix the bug mentioned in issue #175 and also improve performance. Some tests have been added as well.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/599Laplace distribution operator for L1 regularisation2021-03-24T08:53:58ZVincent EberleLaplace distribution operator for L1 regularisation# Laplace Distribution
First draft for a laplace distribution operator. Up to now it produces a laplace distribution: \
```p(x) = 1/(2*sigma) * exp(-1*abs(x-mu)/sigma) ```
with mu = 0 and sigma = 1, by default.
Now the operator transfor...# Laplace Distribution
First draft for a laplace distribution operator. Up to now it produces a laplace distribution: \
```p(x) = 1/(2*sigma) * exp(-1*abs(x-mu)/sigma) ```
with mu = 0 and sigma = 1, by default.
Now the operator transforms the Gaussian distribution to a uniform distribution and then to a laplace. If there is a computational more efficient way, I could incorperate this (@parras @mtr)Martin ReineckeMartin Reineckehttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/862JaxOpt style VI minimization and optimize_kl for nifty.re2023-11-19T20:48:45ZPhilipp FrankJaxOpt style VI minimization and optimize_kl for nifty.reGordian EdenhoferGordian Edenhoferhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/638Jax operator2021-07-01T10:23:36ZPhilipp Arrasparras@mpa-garching.mpg.deJax operatorMartin ReineckeMartin Reineckehttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/673Jax linear operator2021-08-11T11:16:01ZPhilipp Arrasparras@mpa-garching.mpg.deJax linear operatorMartin ReineckeMartin Reineckehttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/680Jax fixes2021-08-30T18:17:57ZPhilipp Arrasparras@mpa-garching.mpg.deJax fixesMartin ReineckeMartin Reineckehttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/6Issue/12/remove np support2016-10-25T02:13:06ZGhost UserIssue/12/remove np supportTheo SteiningerTheo Steiningerhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/598Inverse tangent and unitstep nonlinearities2021-02-16T19:01:51ZPhilipp FrankInverse tangent and unitstep nonlinearitieshttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/722InverseGammaOperator restructure2021-12-14T14:07:37ZVincent EberleInverseGammaOperator restructure## Changes in the InverseGammaOperator
I did some changes in the InverseGammaOperator in order to have some convenience functions for debugging namely:
- one can simply return (if mathematically existent) the `mode`, `mean` and the `vari...## Changes in the InverseGammaOperator
I did some changes in the InverseGammaOperator in order to have some convenience functions for debugging namely:
- one can simply return (if mathematically existent) the `mode`, `mean` and the `variance`
- one can use the mode and the mean in order to initialize the InverseGammaOperator by setting `alpha` and `q` to `None` and setting the values for mode and mean.
IMHO this can help a lot to find better values for alpha and q since these are sometimes hard to set.
@gedenhof @mtr @parras what do you think about these changes?
The code can be found [here](https://gitlab.mpcdf.mpg.de/ift/nifty/-/blob/681fd5591356a0072fa0ba1e3a712c3bd24efe05/src/library/special_distributions.py#L93).https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/416Inverse gamma2020-03-09T12:18:23ZPhilipp Arrasparras@mpa-garching.mpg.deInverse gammaMartin ReineckeMartin Reineckehttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/181introducing the RealFFTOperator2017-08-15T02:25:01ZMartin Reineckeintroducing the RealFFTOperatorThis merge request supersedes merge request !180.
It only applies the minimal changes necessary to introduce the new FFT operator and renames it to "RealFFTOperator". The demo "wiener_filter_via_curvature.py" is updated to produce nicer ...This merge request supersedes merge request !180.
It only applies the minimal changes necessary to introduce the new FFT operator and renames it to "RealFFTOperator". The demo "wiener_filter_via_curvature.py" is updated to produce nicer pictures, and a copy demonstrating the new operator is added.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/458Introduce SamplingDtypeEnabler2020-05-13T16:04:42ZPhilipp Arrasparras@mpa-garching.mpg.deIntroduce SamplingDtypeEnablerhttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/312introduce relaxed adjointness tests for R-linear operators2019-04-10T12:04:23ZMartin Reineckeintroduce relaxed adjointness tests for R-linear operatorshttps://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/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/374Introduce expm1 by wrapping the numpy function2019-11-18T15:11:01ZGordian EdenhoferIntroduce expm1 by wrapping the numpy functionFurthermore, perform some minor cosmetic changes such as streamlining the definition of the log1p function.Furthermore, perform some minor cosmetic changes such as streamlining the definition of the log1p function.https://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/718Introduce DomainChangerAndReshaper and Operator.force(op)2021-12-08T10:33:51ZPhilipp Arrasparras@mpa-garching.mpg.deIntroduce DomainChangerAndReshaper and Operator.force(op)Martin ReineckeMartin Reineckehttps://gitlab.mpcdf.mpg.de/ift/nifty/-/merge_requests/461Introduce a slicing and a splitting operator2020-05-18T09:23:32ZGordian EdenhoferIntroduce a slicing and a splitting operatorIntroduce a SliceOperator for slicing a field into a smaller size all
while preserving distances of the domain. Optionally center the selected
slices.
Plus, introduce a SplitOperator for splitting a single Field into a
MultiField.Introduce a SliceOperator for slicing a field into a smaller size all
while preserving distances of the domain. Optionally center the selected
slices.
Plus, introduce a SplitOperator for splitting a single Field into a
MultiField.