Dear David,
Thank you very much for your answer! I did not know that Firedrake works together with dolfin-adjoint. That sounds very promising. I
will have a look at the examples and try it out!
Best,
Henrik
--
Dipl.-Math. Henrik Büsing
Institute for Applied Geophysics and Geothermal Energy
E.ON Energy Research Center
RWTH Aachen University
Mathieustr. | Tel +49 (0)241 80 49907
52074 Aachen, Germany | Fax +49 (0)241 80 49889
http://www.eonerc.rwth-aachen.de/GGE
hbuesing@eonerc.rwth-aachen.de
Von: firedrake-bounces@imperial.ac.uk [mailto:firedrake-bounces@imperial.ac.uk]
Im Auftrag von David Ham
Gesendet: Samstag, 1. April 2017 11:28
An: firedrake <firedrake@imperial.ac.uk>
Betreff: Re: [firedrake] Parameter estimation and optimal experimental design with Firedrake
Hi Henrik,
OK, for this you need Dolfin-adjoint which, despite its name, also works with Firedrake. Dolfin-adjoint solves the adjoint to a PDE solved with Firedrake, including the time-dependent case, with respect to a user-defined functional which
can be a function of both space and time. Dolfin-adjoint also wraps several popular optimisation packages to provide a high level interface to solve the optimisation problem,
You install Dolfin-adjoint in Firedrake by running:
firedrake-update --adjoint
This will install dolfin-adjoint and libadjoint in the Firedrake virtualenv, and future updates will update dolfin-adjoint as well as the rest of Firedrake. Once you've installed, dolfin-adjoint is documented at
dolfin-adjoint.org . Most of the documentation there refers to FEniCS, but working with Firedrake is essentially identical. There is an example optimisation problem in the Firedrake Jupyter Notebooks (http://firedrakeproject.org/notebooks.html)
and you can also look at the Firedrake tests in dolfin-adjoint, which will be installed in src/dolfin-adjoint/tests_firedrake
Cheers,
David
On Fri, 31 Mar 2017 at 20:48 Buesing, Henrik <HBuesing@eonerc.rwth-aachen.de> wrote:
Dear all,
How would I do parameter estimation (and optimal experimental design) in Firedrake?
I have a time-dependent forward model consisting of a PDE system and depending on certain parameters. I also have time-dependent measurements/data. Now, I would like to minimize some functional, which measures the distance from the forward model to the recorded data.
How would I do this in Firedrake? Is there an example for this?
In a next step, I would like to do optimal experimental design, where one maximizes the Fisher information (e.g. minimize the trace of the inverse of the information matrix) with respect to position.
Any ideas on how to approach this?
Thank you for your help!
Henrik
--
Dipl.-Math. Henrik Büsing
Institute for Applied Geophysics and Geothermal Energy
E.ON Energy Research Center
RWTH Aachen University
Mathieustr. | Tel +49 (0)241 80 49907
52074 Aachen, Germany | Fax +49 (0)241 80 49889
http://www.eonerc.rwth-aachen.de/GGE
hbuesing@eonerc.rwth-aachen.de
--
Dr David Ham
Department of Mathematics
Imperial College London