14 class LinearizedControlProblem;
37 template<
typename Derived>
41 template<
typename Problem>
42 bool solve(Problem & problem)
const;
44 template<
typename Problem>
45 std::unique_ptr<internal::ProblemComputationData>
createComputationData(
const Problem & problem)
const;
47 template<
typename Problem>
51 Derived &
derived() {
return *
static_cast<Derived *
>(
this); }
53 const Derived &
derived()
const {
return *
static_cast<const Derived *
>(
this); }
63 template<
typename Derived>
70 template<
typename Derived>
71 template<
typename Problem>
76 updateComputationData(problem, data);
77 bool b = derived().solve_(problem, data);
78 data->setVariablesToSolution();
79 problem.substitutions().updateVariableValues();
83 template<
typename Derived>
84 template<
typename Problem>
86 const Problem & problem)
const
89 return derived().createComputationData_(problem);
93 template<
typename Derived>
94 template<
typename Problem>
99 derived().updateComputationData_(problem, data);
103 template<
typename Derived>
105 : ResolutionSchemeBase(abilities, big)
108 template<
typename Derived>
119 #include <tvm/scheme/internal/helpers.hpp>
Definition: ResolutionScheme.h:65
LinearResolutionScheme(internal::SchemeAbilities abilities, double big=constant::big_number)
Definition: ResolutionScheme.h:109
Definition: ResolutionScheme.h:39
Derived & derived()
Definition: ResolutionScheme.h:51
bool solve(Problem &problem) const
Definition: ResolutionScheme.h:72
std::unique_ptr< internal::ProblemComputationData > createComputationData(const Problem &problem) const
Definition: ResolutionScheme.h:85
ResolutionScheme(internal::SchemeAbilities abilities, double big=constant::big_number)
Definition: ResolutionScheme.h:104
void updateComputationData(const Problem &problem, internal::ProblemComputationData *data) const
Definition: ResolutionScheme.h:95
const Derived & derived() const
Definition: ResolutionScheme.h:53
Definition: ProblemComputationData.h:27
Definition: ResolutionSchemeBase.h:22
Definition: SchemeAbilities.h:59
ProblemComputationData * getComputationData(Problem &problem, const Scheme &resolutionScheme)
void restore_is_malloc_allowed()
Definition: memoryChecks.h:77
void override_is_malloc_allowed(bool allow)
Definition: memoryChecks.h:69