NonlinearVariationalProblem

class dolfin.cpp.fem.NonlinearVariationalProblem

Bases: dolfin.cpp.fem.HierarchicalNonlinearVariationalProblem

This class represents a nonlinear variational problem: Find u in V such that

F(u; v) = 0  for all v in V^,

where V is the trial space and V^ is the test space.

Create nonlinear variational problem, shared pointer version. The Jacobian form is specified which allows the use of a nonlinear solver that relies on the Jacobian (using Newton’s method).

Parameters:
  • const Form > F (std::shared_ptr<) –
  • Function > u (std::shared_ptr<) –
  • std::shared_ptr< const DirichletBC >> bcs (std::vector<) –
  • const Form > J (std::shared_ptr<) –
bcs()

Return boundary conditions.

Return type:std::vector< std::shared_ptr< const DirichletBC > >
has_jacobian()

Check whether Jacobian has been defined.

Return type:bool
has_lower_bound()

Check whether lower bound has been defined.

Return type:bool
has_upper_bound()

Check whether upper bound have has defined.

Return type:bool
jacobian_form()

Return Jacobian form.

Return type:std::shared_ptr< const Form >
lower_bound()

Return lower bound.

Return type:std::shared_ptr< const GenericVector >
residual_form()

Return residual form.

Return type:std::shared_ptr< const Form >
set_bounds()

Set the bounds for bound constrained solver.

Parameters:
  • Function & lb_func (const) –
  • Function & ub_func (const) –
Return type:

void

solution()

Return the solution

test_space()

Return the test space

thisown

The membership flag

trial_space()

Return the trial space

upper_bound()

Return upper bound.

Return type:std::shared_ptr< const GenericVector >