37 #include "libmesh/error_vector.h" 
   38 #include "libmesh/steady_solver.h" 
   39 #include "libmesh/adjoint_refinement_estimator.h" 
   58     libMesh::SteadySolver* time_solver = 
new libMesh::SteadySolver( *(system) );
 
   60     system->time_solver = libMesh::UniquePtr<libMesh::TimeSolver>( time_solver );
 
   72         std::string error_message = 
"You asked for QoI error estimates but did not use an Adjoint Refinement Error Estimator!\n";
 
   73         error_message += 
"Please use the ADJOINT_REFINEMENT option for the estimator_type if you want QoI error estimates.\n";
 
   74         std::cout<<error_message<<std::endl;
 
   89     std::cout << 
"==========================================================" << std::endl
 
   91               << 
" adaptive refinements" << std::endl
 
   92               << 
"==========================================================" << std::endl;
 
   97         std::cout << 
"==========================================================" << std::endl
 
   98                   << 
"Adaptive Refinement Step " << r_step << std::endl
 
   99                   << 
"==========================================================" << std::endl;
 
  123         libMesh::ErrorVector error;
 
  128           for(
unsigned int i = 0; i != context.
system->qoi.size(); i++)
 
  130             libMesh::AdjointRefinementEstimator* adjoint_ref_error_estimator = libMesh::libmesh_cast_ptr<libMesh::AdjointRefinementEstimator*>( context.
error_estimator.get() );
 
  131             std::cout<<
"The error estimate for QoI("<<i<<
") is: "<<adjoint_ref_error_estimator->get_global_QoI_error_estimate(i)<<std::endl;
 
  140             std::cout << 
"==========================================================" << std::endl
 
  141                       << 
"Convergence detected!" << std::endl
 
  142                       << 
"==========================================================" << std::endl;
 
  166      const libMesh::QoISet&          qoi_indices,
 
  167      const libMesh::ParameterVector& parameters_in,
 
  168      libMesh::SensitivityData&       sensitivities) 
const 
  170     context.
system->adjoint_qoi_parameter_sensitivity
 
  171       (qoi_indices, parameters_in, sensitivities);
 
  176      const libMesh::QoISet&          qoi_indices,
 
  177      const libMesh::ParameterVector& parameters_in,
 
  178      libMesh::SensitivityData&       sensitivities) 
const 
  180     context.
system->forward_qoi_parameter_sensitivity
 
  181       (qoi_indices, parameters_in, sensitivities);
 
  184       context.
vis->output_residual_sensitivities
 
  188       context.
vis->output_solution_sensitivities
 
virtual void forward_qoi_parameter_sensitivity(SolverContext &context, const libMesh::QoISet &qoi_indices, const libMesh::ParameterVector ¶meters_in, libMesh::SensitivityData &sensitivities) const 
 
SharedPtr< libMesh::EquationSystems > equation_system
 
virtual void solve(SolverContext &context)
 
SharedPtr< PostProcessedQuantities< libMesh::Real > > postprocessing
 
void build_mesh_refinement(libMesh::MeshBase &mesh)
 
void check_qoi_error_option_consistency(SolverContext &context)
 
void perform_amr(SolverContext &context, const libMesh::ErrorVector &error)
 
void estimate_error_for_amr(SolverContext &context, libMesh::ErrorVector &error)
 
void steady_adjoint_solve(SolverContext &context)
Do steady version of adjoint solve. 
 
bool check_for_convergence(SolverContext &context, const libMesh::ErrorVector &error) const 
 
SharedPtr< libMesh::ErrorEstimator > error_estimator
 
virtual ~SteadyMeshAdaptiveSolver()
 
bool output_residual_sensitivities
 
GRINS::MultiphysicsSystem * system
 
SharedPtr< GRINS::Visualization > vis
 
Interface with libMesh for solving Multiphysics problems. 
 
SteadyMeshAdaptiveSolver(const GetPot &input)
 
void print_qoi(SolverContext &context, std::ostream &output)
 
ErrorEstimatorOptions _error_estimator_options
 
Simple class to hold objects passed to Solver::solve. 
 
unsigned int max_refinement_steps() const 
 
bool compute_qoi_error_estimate() const 
 
MeshAdaptivityOptions _mesh_adaptivity_options
 
virtual void adjoint_qoi_parameter_sensitivity(SolverContext &context, const libMesh::QoISet &qoi_indices, const libMesh::ParameterVector ¶meters_in, libMesh::SensitivityData &sensitivities) const 
 
bool output_solution_sensitivities
 
virtual void init_time_solver(MultiphysicsSystem *system)