OptimizerBase
-
class OptimizerBase
Subclassed by NeuralNetworkOptimizer, NewtonOptimizer
Public Functions
-
virtual void Solve(Vector &alpha, const Vector &u, const VectorVector &moments, unsigned idx_cell = 0) = 0
Computes the optimal Lagrange multilpiers for the dual entropy minimization problem.
- Parameters:
alpha – vector where the solution Lagrange multipliers are saved to.
u – moment vector
moments – VectorVector to the moment basis evaluated at all quadpoints
idx_cell – index of the cell where alpha should be computed (out of u)
-
virtual void SolveMultiCell(VectorVector &alpha, const VectorVector &u, const VectorVector &moments, Vector &alpha_norms) = 0
Computes the optimal Lagrange multilpiers for the dual entropy minimization problem.
- Parameters:
alpha – vector where the solution Lagrange multipliers are saved to.
u – moment vector
moments – VectorVector to the moment basis evaluated at all quadpoints
-
virtual void ReconstructMoments(Vector &sol, const Vector &alpha, const VectorVector &moments) = 0
Reconstruct the moment sol from the Lagrange multiplier alpha.
- Parameters:
sol – moment vector
alpha – Lagrange multipliers
moments – Moment basis
Public Static Functions
-
static OptimizerBase *Create(Config *settings)
Optimizer creator: Depending on the chosen option, this function creates an object of the chosen child class of OptimizerBase.
Protected Attributes
-
EntropyBase *_entropy
Class to handle entropy functional evaluations.
-
virtual void Solve(Vector &alpha, const Vector &u, const VectorVector &moments, unsigned idx_cell = 0) = 0