Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Neel Shah
NIFTy
Commits
d8571144
Commit
d8571144
authored
May 25, 2020
by
Philipp Arras
Browse files
Turn Changelog into an actual Markdown document
parent
eb9f0834
Changes
1
Hide whitespace changes
Inline
Side-by-side
ChangeLog
→
ChangeLog
.md
View file @
d8571144
Changes since NIFTy 5:
Changes since NIFTy 6
=====================
*None.*
Changes since NIFTy 5
=====================
Minimum Python version increased to 3.6
Minimum Python version increased to 3.6
=======================================
---------------------------------------
New operators
New operators
=============
-------------
In addition to the below changes, the following operators were introduced:
In addition to the below changes, the following operators were introduced:
...
@@ -20,14 +27,14 @@ In addition to the below changes, the following operators were introduced:
...
@@ -20,14 +27,14 @@ In addition to the below changes, the following operators were introduced:
*
IntegrationOperator: Integrates over subspaces of fields
*
IntegrationOperator: Integrates over subspaces of fields
FFT convention adjusted
FFT convention adjusted
=======================
-----------------------
When going to harmonic space, NIFTy's FFT operator now uses a minus sign in the
When going to harmonic space, NIFTy's FFT operator now uses a minus sign in the
exponent (and, consequently, a plus sign on the adjoint transform). This
exponent (and, consequently, a plus sign on the adjoint transform). This
convention is consistent with almost all other numerical FFT libraries.
convention is consistent with almost all other numerical FFT libraries.
Interface change in EndomorphicOperator.draw_sample()
Interface change in EndomorphicOperator.draw_sample()
=====================================================
-----------------------------------------------------
Both complex-valued and real-valued Gaussian probability distributions have
Both complex-valued and real-valued Gaussian probability distributions have
Hermitian and positive endomorphisms as covariance. Just by looking at an
Hermitian and positive endomorphisms as covariance. Just by looking at an
...
@@ -59,13 +66,13 @@ print(met.draw_sample())
...
@@ -59,13 +66,13 @@ print(met.draw_sample())
```
```
MPI parallelisation over samples in MetricGaussianKL
MPI parallelisation over samples in MetricGaussianKL
====================================================
----------------------------------------------------
The classes
`MetricGaussianKL`
and
`MetricGaussianKL_MPI`
have been unified
The classes
`MetricGaussianKL`
and
`MetricGaussianKL_MPI`
have been unified
into one
`MetricGaussianKL`
class which has MPI support built in.
into one
`MetricGaussianKL`
class which has MPI support built in.
New approach for random number generation
New approach for random number generation
=========================================
-----------------------------------------
The code now uses
`numpy`
's new
`SeedSequence`
and
`Generator`
classes for the
The code now uses
`numpy`
's new
`SeedSequence`
and
`Generator`
classes for the
production of random numbers (introduced in numpy 1.17. This greatly simplifies
production of random numbers (introduced in numpy 1.17. This greatly simplifies
...
@@ -74,14 +81,14 @@ and leads to cleaner code overall. Please see the documentation of
...
@@ -74,14 +81,14 @@ and leads to cleaner code overall. Please see the documentation of
`nifty7.random`
for details.
`nifty7.random`
for details.
Interface Change for from_random and OuterProduct
Interface Change for from_random and OuterProduct
=================================================
-------------------------------------------------
The sugar.from_random, Field.from_random, MultiField.from_random now take domain
The sugar.from_random, Field.from_random, MultiField.from_random now take domain
as the first argument and default to 'normal' for the second argument.
as the first argument and default to 'normal' for the second argument.
Likewise OuterProduct takes domain as the first argument and a field as the second.
Likewise OuterProduct takes domain as the first argument and a field as the second.
Interface Change for non-linear Operators
Interface Change for non-linear Operators
=========================================
-----------------------------------------
The method
`Operator.apply()`
takes a
`Linearization`
or a
`Field`
or a
The method
`Operator.apply()`
takes a
`Linearization`
or a
`Field`
or a
`MultiField`
as input. This has not changed. However, now each non-linear
`MultiField`
as input. This has not changed. However, now each non-linear
...
@@ -98,7 +105,7 @@ behaviour since both `Operator._check_input()` and
...
@@ -98,7 +105,7 @@ behaviour since both `Operator._check_input()` and
fulfilled.
fulfilled.
Special functions for complete Field reduction operations
Special functions for complete Field reduction operations
=========================================================
---------------------------------------------------------
So far, reduction operations called on Fields (like
`vdot`
,
`sum`
,
`integrate`
,
So far, reduction operations called on Fields (like
`vdot`
,
`sum`
,
`integrate`
,
`mean`
,
`var`
,
`std`
,
`prod`
etc.) returned a scalar when the reduction was
`mean`
,
`var`
,
`std`
,
`prod`
etc.) returned a scalar when the reduction was
...
@@ -110,7 +117,7 @@ operate over all subdomains and therefore don't take a `spaces` argument; they
...
@@ -110,7 +117,7 @@ operate over all subdomains and therefore don't take a `spaces` argument; they
are named
`s_vdot`
,
`s_sum`
etc. and always return a scalar.
are named
`s_vdot`
,
`s_sum`
etc. and always return a scalar.
Updates regarding correlated fields
Updates regarding correlated fields
===================================
-----------------------------------
The most commonly used model for homogeneous and isotropic correlated fields in
The most commonly used model for homogeneous and isotropic correlated fields in
nifty5 has been
`SLAmplitude`
combined with
`CorrelatedField`
. This model
nifty5 has been
`SLAmplitude`
combined with
`CorrelatedField`
. This model
...
@@ -127,7 +134,7 @@ via `napprox` breaks the inference scheme with the new model so `napprox` may no
...
@@ -127,7 +134,7 @@ via `napprox` breaks the inference scheme with the new model so `napprox` may no
be used here.
be used here.
Removal of the standard MPI parallelization scheme:
Removal of the standard MPI parallelization scheme:
===================================================
---------------------------------------------------
When several MPI tasks are present, NIFTy5 distributes every Field over these
When several MPI tasks are present, NIFTy5 distributes every Field over these
tasks by splitting it along the first axis. This approach to parallelism is not
tasks by splitting it along the first axis. This approach to parallelism is not
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment