8 #ifndef UGCORE_UGBASE_LIB_DISC_OPERATOR_NON_LINEAR_OPERATOR_NEWTON_SOLVER_NEWTONUPDATERGENERIC_H_
9 #define UGCORE_UGBASE_LIB_DISC_OPERATOR_NON_LINEAR_OPERATOR_NEWTON_SOLVER_NEWTONUPDATERGENERIC_H_
16 #include <type_traits>
23 template <
typename TVector>
49 VecScaleAdd(solNew, scaleOldSol, solOld, scaleCorr, corr);
Definition: newtonUpdaterGeneric.h:25
virtual bool updateSolution(vector_type &solNew, number scaleOldSol, vector_type const &solOld, number scaleCorr, vector_type const &corr)
Definition: newtonUpdaterGeneric.h:46
TVector vector_type
Definition: newtonUpdaterGeneric.h:32
virtual bool updateSolution(vector_type &sol, vector_type const &corr, bool signNegative=true)
Definition: newtonUpdaterGeneric.h:34
virtual bool tellAndFixUpdateEvents(vector_type const &sol)
Definition: newtonUpdaterGeneric.h:64
virtual bool resetSolution(vector_type &resettedSol, vector_type const &oldSol)
Definition: newtonUpdaterGeneric.h:55
virtual ~NewtonUpdaterGeneric()
Definition: newtonUpdaterGeneric.h:29
double number
Definition: types.h:124
void VecScaleAdd(vector_t &vOut, typename vector_t::value_type s1, const vector_t &v1, typename vector_t::value_type s2, const vector_t &v2)
Scales two Vectors, adds them and returns the sum in a third vector.
Definition: math_vector_functions_common_impl.hpp:265