Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Open sidebar
pyMOR
pymor
Commits
7e309311
Unverified
Commit
7e309311
authored
Sep 24, 2021
by
René Fritze
Committed by
GitHub
Sep 24, 2021
Browse files
Finish release notes for 2021.1 (#1414)
parents
89016bbf
72eb8e38
Pipeline
#102829
passed with stages
in 86 minutes and 48 seconds
Changes
1
Pipelines
3
Hide whitespace changes
Inline
Sidebyside
Showing
1 changed file
with
68 additions
and
13 deletions
+68
13
docs/source/release_notes/2021.1.rst
docs/source/release_notes/2021.1.rst
+68
13
No files found.
docs/source/release_notes/2021.1.rst
View file @
7e309311
...
...
@@ 48,11 +48,36 @@ The reductor also implements a dense method for small to medium problems.
Timedependent parameter values
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 `[#1379] Time dependent parameter values <https://github.com/pymor/pymor/pull/1379>`_
We have extended the handling of Parameters in pyMOR to allow timedependent
parameter values. Such parameter values are specified by instantiating a
:class:`~pymor.parameters.base.Mu` object with a Function that maps the current
time to the respective parameter value. The function is automatically evaluated
at `mu['t']` and correspondingly updated in `mu.with_(t=new_time)` such that
the time dependence of the values is completely transparent to their consumer.
This allows existing ROMs to be used with timedependent parameter values
without any changes in the MOR algorithm. For further details, see
`[#1379] <https://github.com/pymor/pymor/pull/1379>`_.
Additional new features
^^^^^^^^^^^^^^^^^^^^^^^
Symbolic ExpressionFunctions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
A simple symbolic math expression library has been added to pyMOR, which is now
used by ExpressionFunction and ExpressionParameterFunctional to parse and
evaluate the given expressions, see
`[#1277] <https://github.com/pymor/pymor/pull/1277>`_. As immediate benefits,
the :attr:`shape <pymor.analyticalproblems.functions.Function.shape_range>`
of the expression is now automatically determined and the expression is
automatically vectorized correctly. In particular, there is no longer a need to
add `...` to indexing expressions. Further, malformed expressions now lead
to meaningful error messages at parse time.
In the future, conversion routines will be added to make the expression library
usable for :mod:`~pymor.discretizers` that use external PDE solvers, such that
the same ExpressionFunction can be used for different PDE solver backends.
Output reductor using ANNs
~~~~~~~~~~~~~~~~~~~~~~~~~~
To further extend the neural network based reductors, in
...
...
@@ 70,11 +95,35 @@ training routines have been separated from the reductors.
Improvements to the HAPOD algorithm
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 `[#1322] Various Improvements to the HAPOD algorithm (v2) <https://github.com/pymor/pymor/pull/1322>`_
Empirical Interpolation improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 `[#1240] Several EI improvements <https://github.com/pymor/pymor/pull/1240>`_
pyMOR's implementation of
`the HAPOD algorithm <https://epubs.siam.org/doi/abs/10.1137/16M1085413>`_
has seen several significant improvements in
`[#1322] <https://github.com/pymor/pymor/pull/1322>`_:
 :func:`~pymor.algorithms.hapod.hapod` now launches its own asyncio event
loop in order to avoid conflicts with already running event loops
(e.g. when running from jupyter).
 It is now possible to explicitly specify that a node has to be processed
after certain other nodes. In particular, this can be used to ensure the
right execution order for incremental POD computations.
 HAPOD trees are now created dynamically, which should significantly simplify
specifying own tree topologies.
 :func:`~pymor.algorithms.hapod.dist_hapod` now has an `arity` argument, which
allows to control the number of intermediate POD levels.
 :func:`~pymor.algorithms.hapod.inc_hapod` now accepts arbitrary iterables for
the snapshot data, which makes it easy to incrementally compute the data
while computing the POD.
Improved support for Empirical Interpolation of functions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The :func:`~pymor.algorithms.ei.ei_greedy` algorithm has been improved, in
particular to make it more useful for the interpolation of coefficient
Functions. Based on these improvements, an
:func:`~pymor.algorithms.ei.interpolate_function` method has been added which
creates an :class:`~pymor.analyticalproblems.functions.EmpiricalInterpolatedFunction`
from an arbitrary pyMOR Function. The `function_ei` demo script
demonstrates the new functionality. For further details, see
`[#1240] <https://github.com/pymor/pymor/pull/1240>`_.
Methods for exporting matrices of system models
...
...
@@ 85,14 +134,13 @@ for constructing models from matrices.
In `[#1309] <https://github.com/pymor/pymor/pull/1309>`_,
the corresponding `to_*` methods were added for exporting matrices from a model.
pyMOR is now a pure

Python package
pyMOR is now a pure
Python package
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 `[#1314] Replace all Cython modules by equivalent NumPy code <https://github.com/pymor/pymor/pull/1314>`_
All Cython modules in pyMOR's discretization toolkit have been replaced by
equivalent NumPy code, see `[#1314] <https://github.com/pymor/pymor/pull/1314>`_.
As a result, pyMOR is now a pure Python package, which should significantly
simplify pyMOR's installation when no prebuilt binary wheels are available.
Symbolic ExpressionFunctions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 `[#1277] Use symbolic expressions in ExpressionFunction <https://github.com/pymor/pymor/pull/1277>`_
Backward incompatible changes
...
...
@@ 100,9 +148,17 @@ Backward incompatible changes
Drop python 3.6 support
~~~~~~~~~~~~~~~~~~~~~~~
Support for Python 3.6 has been dropped in pyMOR 2021.1
`[#1302] <https://github.com/pymor/pymor/pull/1302>`_. The minimum supported
version now is Python 3.7.
Symbolic ExpressionFunctions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Due to the improvements in `[#1277] <https://github.com/pymor/pymor/pull/1277>`_,
the signature of ExpressionFunction has changed. To use existing code with
pyMOR 2021.1, the `shape_range` argument has to be removed from all
instantiations of ExpressionFunction. Further, all occurrences of `...`
have to be removed in indexing expressions.
Further notable improvements
...
...
@@ 114,7 +170,6 @@ Further notable improvements
 `[#1270] Simplify SecondOrderModelrelated operators <https://github.com/pymor/pymor/pull/1270>`_
 `[#1294] Let sample_randomly return a Mu instance in case count=None <https://github.com/pymor/pymor/pull/1294>`_
 `[#1296] Simplify semantics of assemble_lincomb / fix #1276 <https://github.com/pymor/pymor/pull/1296>`_
 `[#1302] Drop python 3.6 support <https://github.com/pymor/pymor/pull/1302>`_
 `[#1304] Several improvements to Qtbased visualizations <https://github.com/pymor/pymor/pull/1304>`_
 `[#1309] Add methods to models.iosys for exporting matrices <https://github.com/pymor/pymor/pull/1309>`_
 `[#1317] Add FenicsMatrixOperator._real_apply_inverse_adjoint_one_vector <https://github.com/pymor/pymor/pull/1317>`_
...
...
Write
Preview
Markdown
is supported
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