13 #include "libmesh/petsc_matrix.h" 17 template <
typename Number>
virtual void setICsandBounds()
Sets the initial conditions and bounds right before it is needed.
const std::vector< ReporterValueName > * _inequality_names
Inequality constraint names.
const std::vector< ReporterValueName > & _parameter_names
Parameter names.
virtual void setMisfitToSimulatedValues()
Function to override misfit values with the simulated values from the matrix free hessian forward sol...
const unsigned int _n_ineq_cons
Number of inequality constraint names.
virtual void computeInequalityConstraints(libMesh::PetscVector< Number > &ineqs_constraints) const
Function to compute the inequality constraints.
Real getLowerBound(dof_id_type i) const
std::vector< std::vector< Real > * > _ineq_gradients
Gradient values declared as reporter data.
dof_id_type getNumEqCons() const
Function to get the total number of equalities.
dof_id_type _ndof
Total number of parameters.
virtual void computeEqualityGradient(libMesh::PetscMatrix< Number > &gradient) const
Function to compute the gradient of the equality constraints/ This is the last call of the equality c...
The following methods are specializations for using the Parallel::packed_range_* routines for a vecto...
virtual dof_id_type getNumParams() const
Function to get the total number of parameters.
const unsigned int _nparams
Number of parameter vectors.
std::vector< std::vector< Real > * > _ineq_constraints
Inequality values declared as reporter data.
Base class for optimization objects, implements routines for calculating misfit.
virtual void finalize() override
void setInitialCondition(libMesh::PetscVector< Number > ¶m)
Function to initialize petsc vectors from vpp data.
std::vector< std::vector< Real > * > _eq_gradients
Gradient values declared as reporter data.
virtual void execute() override
const std::vector< double > x
std::vector< dof_id_type > _nvalues
Number of values for each parameter.
const std::string & type() const
virtual Real computeObjective()=0
Function to compute objective.
std::vector< Real > parseInputData(std::string type, Real default_value, unsigned int param_id) const
Function to to parse bounds and initial conditions from input file.
std::vector< Real > _lower_bounds
Bounds of the parameters.
A UserObject that tests the requesting of Reporter values that are actually correct.
std::vector< std::vector< Real > * > _parameters
Parameter values declared as reporter data.
std::vector< std::vector< Real > * > _eq_constraints
Equality values declared as reporter data.
const unsigned int _n_eq_cons
Number of equality constraint names.
const std::vector< ReporterValueName > * _equality_names
Equality constraint names.
virtual void computeInequalityGradient(libMesh::PetscMatrix< Number > &gradient) const
Function to compute the gradient of the inequality constraints/ This is the last call of the inequali...
OptimizationReporterBase(const InputParameters ¶meters)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual void computeGradient(libMesh::PetscVector< Number > &gradient) const
Function to compute gradient.
std::vector< std::vector< Real > * > _gradients
Gradient values declared as reporter data.
virtual void updateParameters(const libMesh::PetscVector< Number > &x)
Function to set parameters.
const InputParameters & parameters() const
std::vector< Real > _upper_bounds
static InputParameters validParams()
Real getUpperBound(dof_id_type i) const
Upper and lower bounds for each parameter being controlled.
virtual void initialize() override
const Real _tikhonov_coeff
Tikhonov Coefficient for regularization.
virtual void computeEqualityConstraints(libMesh::PetscVector< Number > &eqs_constraints) const
Function to compute the equality constraints.
solveObject to interface with Petsc Tao
dof_id_type getNumInEqCons() const
Function to get the total number of inequalities.