PolyFEM
Loading...
Searching...
No Matches
L2ProjectionForm.hpp
Go to the documentation of this file.
1
2
#pragma once
3
4
#include "
Form.hpp
"
5
6
#include <
polyfem/utils/Types.hpp
>
7
8
namespace
polyfem::solver
9
{
10
11
class
L2ProjectionForm
:
public
Form
12
{
13
public
:
14
L2ProjectionForm
(
15
const
StiffnessMatrix
&M,
16
const
StiffnessMatrix
&A,
17
const
Eigen::VectorXd &
y
);
18
19
std::string
name
()
const override
{
return
"L2_projection"
; }
20
21
protected
:
25
double
value_unweighted
(
const
Eigen::VectorXd &
x
)
const override
;
26
30
void
first_derivative_unweighted
(
const
Eigen::VectorXd &
x
, Eigen::VectorXd &gradv)
const override
;
31
35
void
second_derivative_unweighted
(
const
Eigen::VectorXd &
x
,
StiffnessMatrix
&hessian)
const override
;
36
37
StiffnessMatrix
M_
;
38
Eigen::VectorXd
rhs_
;
39
};
40
41
}
// namespace polyfem::solver
Form.hpp
y
int y
Definition
SplineBasis3d.cpp:55
x
int x
Definition
SplineBasis3d.cpp:55
Types.hpp
polyfem::solver::Form
Definition
Form.hpp:11
polyfem::solver::L2ProjectionForm
Definition
L2ProjectionForm.hpp:12
polyfem::solver::L2ProjectionForm::name
std::string name() const override
Definition
L2ProjectionForm.hpp:19
polyfem::solver::L2ProjectionForm::first_derivative_unweighted
void first_derivative_unweighted(const Eigen::VectorXd &x, Eigen::VectorXd &gradv) const override
Compute the first derivative of the value wrt x.
Definition
L2ProjectionForm.cpp:19
polyfem::solver::L2ProjectionForm::value_unweighted
double value_unweighted(const Eigen::VectorXd &x) const override
Compute the value of the form.
Definition
L2ProjectionForm.cpp:14
polyfem::solver::L2ProjectionForm::second_derivative_unweighted
void second_derivative_unweighted(const Eigen::VectorXd &x, StiffnessMatrix &hessian) const override
Compute the second derivative of the value wrt x.
Definition
L2ProjectionForm.cpp:24
polyfem::solver::L2ProjectionForm::rhs_
Eigen::VectorXd rhs_
Definition
L2ProjectionForm.hpp:38
polyfem::solver::L2ProjectionForm::M_
StiffnessMatrix M_
Definition
L2ProjectionForm.hpp:37
polyfem::solver
Definition
OptState.hpp:16
polyfem::StiffnessMatrix
Eigen::SparseMatrix< double, Eigen::ColMajor > StiffnessMatrix
Definition
Types.hpp:22
src
polyfem
solver
forms
L2ProjectionForm.hpp
Generated by
1.9.8