Function Space for Parameters

105
views
0
12 weeks ago by

Dear FEniCS Community,

I would like to implement a continuation method in FEniCS.

To archive this, I try to define the expanded functional $G( \mathbf{u}, \lambda ) = ( F( \mathbf{u}, \lambda ) , f( \mathbf{u}, \lambda ) )^T$ directly in FEniCS and use the implemented nonlinear solver to solve for the PDE solution and the parameter simultaneously, instead of implementing the Newton iteration myself.

But since $\lambda \in \mathbb{R}$ is not a function defined on the mesh, but a real number, I was wondering, if there is any way to create a function space like $V_h \times \mathbb{R}$.

I may could use MultiMesh and a weird one triangle mesh to get a pure one dimensional space. But I would prefer to avoid this workaround.
If there is no nice solution, I would just implement the Newton iteration explicitly.

Kind regards,
Steffen

Community: FEniCS Project

3
12 weeks ago by
This is entirely possible. See, for example, defcon which uses function spaces of reals.

Cool, thanks for pointing me to defcon! That's a nice project, also mathematically. Maybe I can use defcon directly :)

Right now, I wasn't able to find in the sources how to define the function space like desired.
As far as I could look through, the newton solver is always applied for constant parameter and the parameter update is done in line 45 of defcon/parametertools.py.

written 12 weeks ago by Steffen