add_form(const std::shared_ptr< Form > &form) | polyfem::solver::NLHomoProblem | inline |
boundary_nodes_ | polyfem::solver::NLProblem | protected |
boundary_values() const override | polyfem::solver::NLHomoProblem | protectedvirtual |
constraint_grad() const | polyfem::solver::NLHomoProblem | private |
current_size() const | polyfem::solver::NLProblem | inlineprotected |
current_size_ | polyfem::solver::NLProblem | protected |
CurrentSize enum name | polyfem::solver::NLProblem | protected |
extended_hessian_to_reduced_hessian(const THessian &extended, THessian &reduced) const | polyfem::solver::NLHomoProblem | |
extended_to_reduced(const TVector &extended) const | polyfem::solver::NLHomoProblem | |
extended_to_reduced_grad(const TVector &extended) const | polyfem::solver::NLHomoProblem | |
fixed_mask_ | polyfem::solver::NLHomoProblem | private |
forms() | polyfem::solver::FullNLProblem | inline |
forms_ | polyfem::solver::FullNLProblem | protected |
full_boundary_nodes_ | polyfem::solver::NLProblem | protected |
full_hessian_to_reduced_hessian(const THessian &full, THessian &reduced) const override | polyfem::solver::NLHomoProblem | virtual |
full_size() const | polyfem::solver::NLProblem | inline |
full_size_ | polyfem::solver::NLProblem | protected |
full_to_reduced(const TVector &full, const Eigen::MatrixXd &disp_grad) const | polyfem::solver::NLHomoProblem | |
full_to_reduced(const TVector &full) const override | polyfem::solver::NLHomoProblem | virtual |
full_to_reduced_aux(const std::vector< int > &boundary_nodes, const int full_size, const int reduced_size, const FullMat &full, ReducedMat &reduced) const | polyfem::solver::NLProblem | private |
full_to_reduced_aux_grad(const std::vector< int > &boundary_nodes, const int full_size, const int reduced_size, const FullMat &full, ReducedMat &reduced) const | polyfem::solver::NLProblem | private |
full_to_reduced_grad(const TVector &full) const override | polyfem::solver::NLHomoProblem | virtual |
FullNLProblem(const std::vector< std::shared_ptr< Form > > &forms) | polyfem::solver::FullNLProblem | |
gradient(const TVector &x, TVector &gradv) override | polyfem::solver::NLHomoProblem | virtual |
has_symmetry_constraint() const | polyfem::solver::NLHomoProblem | inline |
hessian(const TVector &x, THessian &hessian) override | polyfem::solver::NLHomoProblem | virtual |
homo_forms | polyfem::solver::NLHomoProblem | private |
init(const TVector &x0) override | polyfem::solver::NLHomoProblem | virtual |
init_lagging(const TVector &x) override | polyfem::solver::NLHomoProblem | virtual |
init_projection() | polyfem::solver::NLHomoProblem | private |
is_step_collision_free(const TVector &x0, const TVector &x1) override | polyfem::solver::NLHomoProblem | virtual |
is_step_valid(const TVector &x0, const TVector &x1) override | polyfem::solver::NLHomoProblem | virtual |
line_search_begin(const TVector &x0, const TVector &x1) override | polyfem::solver::NLHomoProblem | virtual |
line_search_end() override | polyfem::solver::FullNLProblem | virtual |
local_boundary_ | polyfem::solver::NLProblem | private |
macro_full_to_mid_ | polyfem::solver::NLHomoProblem | private |
macro_full_to_reduced(const TVector &full) const | polyfem::solver::NLHomoProblem | private |
macro_full_to_reduced_grad(const Eigen::MatrixXd &full) const | polyfem::solver::NLHomoProblem | private |
macro_mid_to_full_ | polyfem::solver::NLHomoProblem | private |
macro_mid_to_reduced_ | polyfem::solver::NLHomoProblem | private |
macro_reduced_size() const | polyfem::solver::NLHomoProblem | |
macro_reduced_to_full(const TVector &reduced, bool homogeneous=false) const | polyfem::solver::NLHomoProblem | private |
macro_strain_constraint_ | polyfem::solver::NLHomoProblem | private |
max_lagging_iterations() const | polyfem::solver::FullNLProblem | |
max_step_size(const TVector &x0, const TVector &x1) override | polyfem::solver::NLHomoProblem | virtual |
n_boundary_samples_ | polyfem::solver::NLProblem | private |
NLHomoProblem(const int full_size, const std::vector< int > &boundary_nodes, const std::vector< mesh::LocalBoundary > &local_boundary, const int n_boundary_samples, const assembler::RhsAssembler &rhs_assembler, const assembler::MacroStrainValue ¯o_strain_constraint, const State &state, const double t, const std::vector< std::shared_ptr< Form > > &forms, const bool solve_symmetric_macro_strain) | polyfem::solver::NLHomoProblem | |
NLProblem(const int full_size, const std::vector< int > &boundary_nodes, const std::vector< std::shared_ptr< Form > > &forms) | polyfem::solver::NLProblem | protected |
NLProblem(const int full_size, const std::vector< int > &boundary_nodes, const std::vector< mesh::LocalBoundary > &local_boundary, const int n_boundary_samples, const assembler::RhsAssembler &rhs_assembler, const std::shared_ptr< utils::PeriodicBoundary > &periodic_bc, const double t, const std::vector< std::shared_ptr< Form > > &forms) | polyfem::solver::NLProblem | |
only_symmetric | polyfem::solver::NLHomoProblem | private |
periodic_bc_ | polyfem::solver::NLProblem | protected |
post_step(const polysolve::nonlinear::PostStepData &data) override | polyfem::solver::NLHomoProblem | virtual |
reduced_size() const | polyfem::solver::NLProblem | inline |
reduced_size_ | polyfem::solver::NLProblem | protected |
reduced_to_disp_grad(const TVector &reduced, bool homogeneous=false) const | polyfem::solver::NLHomoProblem | |
reduced_to_extended(const TVector &reduced, bool homogeneous=false) const | polyfem::solver::NLHomoProblem | |
reduced_to_full(const TVector &reduced) const override | polyfem::solver::NLHomoProblem | virtual |
reduced_to_full_aux(const std::vector< int > &boundary_nodes, const int full_size, const int reduced_size, const ReducedMat &reduced, const Eigen::MatrixXd &rhs, FullMat &full) const | polyfem::solver::NLProblem | private |
reduced_to_full_shape_derivative(const Eigen::MatrixXd &disp_grad, const TVector &adjoint_full) const | polyfem::solver::NLHomoProblem | |
rhs_assembler_ | polyfem::solver::NLProblem | private |
set_apply_DBC(const TVector &x, const bool val) | polyfem::solver::NLProblem | |
set_fixed_entry(const Eigen::VectorXi &fixed_entry) | polyfem::solver::NLHomoProblem | |
set_project_to_psd(bool val) override | polyfem::solver::FullNLProblem | virtual |
solution_changed(const TVector &new_x) override | polyfem::solver::NLHomoProblem | virtual |
state_ | polyfem::solver::NLHomoProblem | private |
stop(const TVector &x) override | polyfem::solver::FullNLProblem | inlinevirtual |
t_ | polyfem::solver::NLProblem | protected |
update_lagging(const TVector &x, const int iter_num) override | polyfem::solver::NLHomoProblem | virtual |
update_quantities(const double t, const TVector &x) override | polyfem::solver::NLHomoProblem | virtual |
use_full_size() | polyfem::solver::NLProblem | inline |
use_reduced_size() | polyfem::solver::NLProblem | inline |
uses_lagging() const | polyfem::solver::FullNLProblem | |
value(const TVector &x) override | polyfem::solver::NLHomoProblem | virtual |
~FullNLProblem()=default | polyfem::solver::FullNLProblem | virtual |
~NLHomoProblem()=default | polyfem::solver::NLHomoProblem | virtual |
~NLProblem()=default | polyfem::solver::NLProblem | virtual |