| avg_mass_ | polyfem::solver::ContactForm | protected |
| barrier_stiffness() const | polyfem::solver::ContactForm | inline |
| barrier_stiffness_ | polyfem::solver::ContactForm | protected |
| barrier_support_size() const | polyfem::solver::ContactForm | inlineprotectedvirtual |
| broad_phase_ | polyfem::solver::ContactForm | protected |
| broad_phase_method_ | polyfem::solver::ContactForm | protected |
| candidates_ | polyfem::solver::ContactForm | protected |
| collision_mesh_ | polyfem::solver::ContactForm | protected |
| compute_displaced_surface(const Eigen::VectorXd &x) const | polyfem::solver::ContactForm | |
| ContactForm(const ipc::CollisionMesh &collision_mesh, const double dhat, const double avg_mass, const bool use_adaptive_barrier_stiffness, const bool is_time_dependent, const bool enable_shape_derivatives, const ipc::BroadPhaseMethod broad_phase_method, const double ccd_tolerance, const int ccd_max_iterations) | polyfem::solver::ContactForm | |
| dhat() const | polyfem::solver::ContactForm | inline |
| dhat_ | polyfem::solver::ContactForm | protected |
| disable() | polyfem::solver::Form | inline |
| dmin_ | polyfem::solver::ContactForm | protected |
| enable() | polyfem::solver::Form | inline |
| enable_shape_derivatives() const | polyfem::solver::ContactForm | inline |
| enable_shape_derivatives_ | polyfem::solver::ContactForm | protected |
| enabled() const | polyfem::solver::Form | inline |
| enabled_ | polyfem::solver::Form | protected |
| finish() | polyfem::solver::Form | inlinevirtual |
| first_derivative(const Eigen::VectorXd &x, Eigen::VectorXd &gradv) const | polyfem::solver::Form | inlinevirtual |
| first_derivative_unweighted(const Eigen::VectorXd &x, Eigen::VectorXd &gradv) const =0 | polyfem::solver::Form | protectedpure virtual |
| get_broad_phase() const | polyfem::solver::ContactForm | inline |
| init(const Eigen::VectorXd &x) override | polyfem::solver::ContactForm | virtual |
| init_lagging(const Eigen::VectorXd &x) | polyfem::solver::Form | inlinevirtual |
| is_project_to_psd() const | polyfem::solver::Form | inline |
| is_step_collision_free(const Eigen::VectorXd &x0, const Eigen::VectorXd &x1) const override | polyfem::solver::ContactForm | virtual |
| is_step_valid(const Eigen::VectorXd &x0, const Eigen::VectorXd &x1) const | polyfem::solver::Form | inlinevirtual |
| is_time_dependent_ | polyfem::solver::ContactForm | protected |
| line_search_begin(const Eigen::VectorXd &x0, const Eigen::VectorXd &x1) override | polyfem::solver::ContactForm | virtual |
| line_search_end() override | polyfem::solver::ContactForm | virtual |
| max_barrier_stiffness_ | polyfem::solver::ContactForm | protected |
| max_lagging_iterations() const | polyfem::solver::Form | inlinevirtual |
| max_step_size(const Eigen::VectorXd &x0, const Eigen::VectorXd &x1) const override | polyfem::solver::ContactForm | virtual |
| name() const override | polyfem::solver::ContactForm | inlinevirtual |
| output_dir_ | polyfem::solver::Form | protected |
| post_step(const polysolve::nonlinear::PostStepData &data) | polyfem::solver::Form | inlinevirtual |
| prev_distance_ | polyfem::solver::ContactForm | protected |
| project_to_psd_ | polyfem::solver::Form | protected |
| resolve_output_path(const std::string &path) const | polyfem::solver::Form | inlineprotected |
| save_ccd_debug_meshes | polyfem::solver::ContactForm | |
| scale_ | polyfem::solver::Form | private |
| second_derivative(const Eigen::VectorXd &x, StiffnessMatrix &hessian) const | polyfem::solver::Form | inline |
| second_derivative_unweighted(const Eigen::VectorXd &x, StiffnessMatrix &hessian) const =0 | polyfem::solver::Form | protectedpure virtual |
| set_barrier_stiffness(const double barrier_stiffness) | polyfem::solver::ContactForm | inline |
| set_enabled(const bool enabled) | polyfem::solver::Form | inline |
| set_output_dir(const std::string &output_dir) | polyfem::solver::Form | inline |
| set_project_to_psd(bool val) | polyfem::solver::Form | inline |
| set_scale(const double scale) | polyfem::solver::Form | inlinevirtual |
| set_weight(const double weight) | polyfem::solver::Form | inline |
| solution_changed(const Eigen::VectorXd &new_x) override | polyfem::solver::ContactForm | virtual |
| tight_inclusion_ccd_ | polyfem::solver::ContactForm | protected |
| update_barrier_stiffness(const Eigen::VectorXd &x, const Eigen::MatrixXd &grad_energy)=0 | polyfem::solver::ContactForm | pure virtual |
| update_collision_set(const Eigen::MatrixXd &displaced_surface)=0 | polyfem::solver::ContactForm | protectedpure virtual |
| update_lagging(const Eigen::VectorXd &x, const int iter_num) | polyfem::solver::Form | inlinevirtual |
| update_quantities(const double t, const Eigen::VectorXd &x) override | polyfem::solver::ContactForm | virtual |
| use_adaptive_barrier_stiffness() const | polyfem::solver::ContactForm | inline |
| use_adaptive_barrier_stiffness_ | polyfem::solver::ContactForm | protected |
| use_cached_candidates_ | polyfem::solver::ContactForm | protected |
| use_convergent_formulation() const | polyfem::solver::ContactForm | inlinevirtual |
| uses_lagging() const | polyfem::solver::Form | inlinevirtual |
| value(const Eigen::VectorXd &x) const | polyfem::solver::Form | inlinevirtual |
| value_per_element(const Eigen::VectorXd &x) const | polyfem::solver::Form | inline |
| value_per_element_unweighted(const Eigen::VectorXd &x) const | polyfem::solver::Form | inlineprotectedvirtual |
| value_unweighted(const Eigen::VectorXd &x) const =0 | polyfem::solver::Form | protectedpure virtual |
| weight() const override | polyfem::solver::ContactForm | inlinevirtual |
| weight_ | polyfem::solver::Form | protected |
| ~ContactForm()=default | polyfem::solver::ContactForm | virtual |
| ~Form() | polyfem::solver::Form | inlinevirtual |