PolyFEM
Loading...
Searching...
No Matches
VariableToSimulationGroup.hpp
Go to the documentation of this file.
1#pragma once
2
5
6#include <functional>
7
8namespace polyfem::solver
9{
11 {
12 public:
13 void update(const Eigen::VectorXd &x);
14
16 const legacy::State &target,
17 const Eigen::VectorXd &x,
18 Eigen::VectorXd &state_variable) const;
19
20 Eigen::VectorXd compute_adjoint_term(const Eigen::VectorXd &x) const;
21
25 const legacy::State &target,
26 const Eigen::VectorXd &x,
27 const std::function<Eigen::VectorXd()> &grad) const;
28
29 std::vector<std::shared_ptr<VariableToSimulation>> data;
30 };
31
32} // namespace polyfem::solver
int x
main class that contains the polyfem solver and all its state
Definition State.hpp:114
Eigen::VectorXd compute_adjoint_term(const Eigen::VectorXd &x) const
Eigen::VectorXd apply_parametrization_jacobian(ParameterType type, const legacy::State &target, const Eigen::VectorXd &x, const std::function< Eigen::VectorXd()> &grad) const
Compute parametrization jacobian for all var2sim matching parameter type and output to target state.
void compute_state_variable(ParameterType type, const legacy::State &target, const Eigen::VectorXd &x, Eigen::VectorXd &state_variable) const
std::vector< std::shared_ptr< VariableToSimulation > > data