24#ifndef __ADAPTIVE_LINEAR_VARIATIONAL_SOLVER_H
25#define __ADAPTIVE_LINEAR_VARIATIONAL_SOLVER_H
28#include "GenericAdaptiveVariationalSolver.h"
36 class LinearVariationalProblem;
76 std::shared_ptr<GoalFunctional>
goal);
89 std::shared_ptr<Form>
goal,
90 std::shared_ptr<ErrorControl>
control);
107 virtual std::vector<std::shared_ptr<const DirichletBC>>
extract_bcs()
const;
121 std::shared_ptr<const Function> u)
const;
128 virtual void adapt_problem(std::shared_ptr<const Mesh> mesh);
148 void init(std::shared_ptr<LinearVariationalProblem> problem,
149 std::shared_ptr<GoalFunctional>
goal);
152 std::shared_ptr<LinearVariationalProblem> _problem;
Definition AdaptiveLinearVariationalSolver.h:65
virtual std::vector< std::shared_ptr< const DirichletBC > > extract_bcs() const
Definition AdaptiveLinearVariationalSolver.cpp:97
virtual double evaluate_goal(Form &M, std::shared_ptr< const Function > u) const
Definition AdaptiveLinearVariationalSolver.cpp:104
virtual std::shared_ptr< const Function > solve_primal()
Definition AdaptiveLinearVariationalSolver.cpp:87
virtual void adapt_problem(std::shared_ptr< const Mesh > mesh)
Definition AdaptiveLinearVariationalSolver.cpp:112
~AdaptiveLinearVariationalSolver()
Destructor.
Definition AdaptiveLinearVariationalSolver.h:93
virtual std::size_t num_dofs_primal()
Definition AdaptiveLinearVariationalSolver.cpp:118
AdaptiveLinearVariationalSolver(std::shared_ptr< LinearVariationalProblem > problem, std::shared_ptr< GoalFunctional > goal)
Definition AdaptiveLinearVariationalSolver.cpp:39
Definition GenericAdaptiveVariationalSolver.h:46
std::shared_ptr< Form > goal
The goal functional.
Definition GenericAdaptiveVariationalSolver.h:139
std::shared_ptr< ErrorControl > control
Error control object.
Definition GenericAdaptiveVariationalSolver.h:142