Feel++
0.91.4
|
allows to solve nonlinear equations thanks to its interface to the interface to the PETSc nonlinear solver library. It requires the implementation of two extra functions in your application that will update the jacobian matrix associated to the tangent problem and the residual.
Consider that you have an application class MyApp
with a backend as data member
The function updateJacobian! and !updateResidual
implement the assembly of the matrix (jacobian matrix) and the vector
(residual vector) respectively.
As a simple example, let be a subset of
, ({i.e.}
) with boundary
. Consider now the following equation and boundary condition
where is a given parameter and
.
doc/tutorial/nonlinearpow.cpp
for an implementation of this problem.As a simple example, let be a subset of
, ( i.e.
) with boundary
. Consider now the following equation and boundary condition
where is a given parameter. This is generally called the Bratu problem: it appears when in simplified non-linear diffusion processes for example in the domain of combustion.
doc/tutorial/bratu.cpp for an implementation of this problem.