PolyFEM
Loading...
Searching...
No Matches
polyfem::solver::AdjointOptUtils Struct Reference

#include <Optimizations.hpp>

Static Public Member Functions

static json apply_opt_json_spec (const json &input_args, bool strict_validation)
 
static std::shared_ptr< polysolve::nonlinear::Solver > make_nl_solver (const json &solver_params, const json &linear_solver_params, const double characteristic_length)
 
static Eigen::VectorXd inverse_evaluation (const json &args, const int ndof, const std::vector< int > &variable_sizes, VariableToSimulationGroup &var2sim)
 
static void solve_pde (State &state)
 
static int compute_variable_size (const json &args, const std::vector< std::shared_ptr< State > > &states)
 

Detailed Description

Definition at line 29 of file Optimizations.hpp.

Member Function Documentation

◆ apply_opt_json_spec()

json polyfem::solver::AdjointOptUtils::apply_opt_json_spec ( const json input_args,
bool  strict_validation 
)
static

Definition at line 145 of file Optimizations.cpp.

References polyfem::solver::apply_objective_json_spec(), and polyfem::logger().

Referenced by polyfem::OptState::init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ compute_variable_size()

int polyfem::solver::AdjointOptUtils::compute_variable_size ( const json args,
const std::vector< std::shared_ptr< State > > &  states 
)
static

Definition at line 204 of file Optimizations.cpp.

References polyfem::compute_surface_node_ids(), polyfem::compute_total_surface_node_ids(), polyfem::compute_volume_node_ids(), and polyfem::log_and_throw_adjoint_error().

Referenced by polyfem::OptState::init_variables().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ inverse_evaluation()

Eigen::VectorXd polyfem::solver::AdjointOptUtils::inverse_evaluation ( const json args,
const int  ndof,
const std::vector< int > &  variable_sizes,
VariableToSimulationGroup var2sim 
)
static

Definition at line 79 of file Optimizations.cpp.

References polyfem::solver::VariableToSimulationGroup::data, and x.

Referenced by polyfem::OptState::initial_guess().

Here is the caller graph for this function:

◆ make_nl_solver()

std::shared_ptr< polysolve::nonlinear::Solver > polyfem::solver::AdjointOptUtils::make_nl_solver ( const json solver_params,
const json linear_solver_params,
const double  characteristic_length 
)
static

Definition at line 66 of file Optimizations.cpp.

References polyfem::adjoint_logger(), and polyfem::log_and_throw_adjoint_error().

Referenced by polyfem::OptState::solve().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ solve_pde()

void polyfem::solver::AdjointOptUtils::solve_pde ( State state)
static

Definition at line 109 of file Optimizations.cpp.

References polyfem::State::assemble_mass_mat(), polyfem::State::assemble_rhs(), and polyfem::State::solve_problem().

Here is the call graph for this function:

The documentation for this struct was generated from the following files: