https://mooseframework.inl.gov
OptimizationApp.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #include "OptimizationApp.h"
11 #include "Moose.h"
12 #include "AppFactory.h"
13 #include "MooseSyntax.h"
14 #include "ExecFlagRegistry.h"
15 
16 #include "OptimizationAppTypes.h"
17 
20 {
22 
23  params.set<bool>("use_legacy_material_output") = false;
24  params.set<bool>("use_legacy_initial_residual_evaluation_behavior") = false;
25 
26  return params;
27 }
28 
30 {
32 }
33 
35 
36 void
38 {
39  Registry::registerObjectsTo(f, {"OptimizationApp"});
40  Registry::registerActionsTo(af, {"OptimizationApp"});
41 
42  // Optimization reporter actions
43  registerSyntaxTask(
44  "AddOptimizationReporterAction", "OptimizationReporter", "add_optimization_reporter");
45  registerMooseObjectTask("add_optimization_reporter", OptimizationReporterBase, false);
46  addTaskDependency("add_optimization_reporter", "add_reporter");
47 
48  // General Optimization action
49  registerTask("auto_create_mesh", false);
50  registerTask("auto_create_problem", false);
51  registerSyntaxTask("OptimizationAction", "Optimization", "auto_create_mesh");
52  registerSyntaxTask("OptimizationAction", "Optimization", "auto_create_problem");
53  addTaskDependency("setup_mesh", "auto_create_mesh");
54  addTaskDependency("create_problem", "auto_create_problem");
55 }
56 
57 void
59 {
60  registerApp(OptimizationApp);
61 }
62 
63 /***************************************************************************************************
64  *********************** Dynamic Library Entry Points - DO NOT MODIFY ******************************
65  **************************************************************************************************/
66 extern "C" void
68 {
70 }
71 extern "C" void
73 {
75 }
T & set(const std::string &name, bool quiet_mode=false)
static void registerAll(Factory &f, ActionFactory &af, Syntax &s)
static void registerObjectsTo(Factory &f, const std::set< std::string > &labels)
Syntax _syntax
static InputParameters validParams()
OptimizationApp(const InputParameters &parameters)
Base class for optimization objects, implements routines for calculating misfit.
static void registerActionsTo(ActionFactory &f, const std::set< std::string > &labels)
Real f(Real x)
Test function for Brents method.
ActionFactory _action_factory
void OptimizationApp__registerAll(Factory &f, ActionFactory &af, Syntax &s)
virtual ~OptimizationApp()
static void registerApps()
void OptimizationApp__registerApps()
Factory _factory
static InputParameters validParams()