Wildmeshing Toolkit
|
#include <OptimizationSmoothing.hpp>
Classes | |
class | WMTKProblem |
Private Member Functions | |
void | create_solver () |
Private Attributes | |
std::shared_ptr< wmtk::function::Function > | m_energy |
std::shared_ptr< polysolve::nonlinear::Solver > | m_solver |
polysolve::json | m_linear_solver_params |
polysolve::json | m_nonlinear_solver_params |
Additional Inherited Members | |
Protected Member Functions inherited from wmtk::operations::AttributesUpdate | |
virtual std::vector< simplex::Simplex > | unmodified_primitives (const simplex::Simplex &simplex) const override |
Returns all simplices that will be potentially affected by the operation. More... | |
Protected Member Functions inherited from wmtk::operations::Operation | |
virtual bool | before (const simplex::Simplex &simplex) const |
virtual bool | after (const std::vector< simplex::Simplex > &unmods, const std::vector< simplex::Simplex > &mods) const |
void | apply_attribute_transfer (const std::vector< simplex::Simplex > &direct_mods) |
Protected Attributes inherited from wmtk::operations::Operation | |
std::function< double(const simplex::Simplex &)> | m_priority = nullptr |
invariants::InvariantCollection | m_invariants |
std::vector< std::shared_ptr< const operations::AttributeTransferStrategyBase > > | m_attr_transfer_strategies |
Definition at line 18 of file OptimizationSmoothing.hpp.
wmtk::operations::OptimizationSmoothing::OptimizationSmoothing | ( | std::shared_ptr< wmtk::function::Function > | energy | ) |
Definition at line 158 of file OptimizationSmoothing.cpp.
References create_solver(), m_linear_solver_params, and m_nonlinear_solver_params.
|
private |
Definition at line 168 of file OptimizationSmoothing.cpp.
References m_linear_solver_params, m_nonlinear_solver_params, m_solver, and wmtk::opt_logger().
Referenced by OptimizationSmoothing(), set_linear_solver_params(), and set_nonlinear_solver_params().
|
overridevirtual |
returns an empty vector in case of failure
Reimplemented from wmtk::operations::AttributesUpdate.
Definition at line 178 of file OptimizationSmoothing.cpp.
References wmtk::Mesh::create_accessor(), wmtk::operations::AttributesUpdate::execute(), wmtk::operations::OptimizationSmoothing::WMTKProblem< T >::initial_value(), m_energy, wmtk::operations::Operation::m_invariants, m_solver, wmtk::operations::Operation::mesh(), and wmtk::simplex::Simplex::tuple().
|
inline |
Definition at line 29 of file OptimizationSmoothing.hpp.
References m_linear_solver_params.
|
inline |
Definition at line 30 of file OptimizationSmoothing.hpp.
References m_nonlinear_solver_params.
|
inline |
Definition at line 33 of file OptimizationSmoothing.hpp.
References create_solver(), and m_linear_solver_params.
|
inline |
Definition at line 39 of file OptimizationSmoothing.hpp.
References create_solver(), and m_nonlinear_solver_params.
|
private |
Definition at line 46 of file OptimizationSmoothing.hpp.
Referenced by execute(), wmtk::operations::OptimizationSmoothing::WMTKProblem< T >::gradient(), wmtk::operations::OptimizationSmoothing::WMTKProblem< T >::hessian(), wmtk::operations::OptimizationSmoothing::WMTKProblem< T >::is_step_valid(), and wmtk::operations::OptimizationSmoothing::WMTKProblem< T >::value().
|
private |
Definition at line 50 of file OptimizationSmoothing.hpp.
Referenced by create_solver(), linear_solver_params(), OptimizationSmoothing(), and set_linear_solver_params().
|
private |
Definition at line 51 of file OptimizationSmoothing.hpp.
Referenced by create_solver(), nonlinear_solver_params(), OptimizationSmoothing(), and set_nonlinear_solver_params().
|
private |
Definition at line 47 of file OptimizationSmoothing.hpp.
Referenced by create_solver(), and execute().