Class template Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler

Inherits from Dune::XT::Grid::IntersectionFunctor.

template<class M, class SGV, size_t s_r = 1, size_t s_rC = 1, class F = double, size_t r_r = s_r, size_t r_rC = s_rC, class RGV = SGV>
class Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler<M, SGV, s_r, s_rC, F, r_r, r_rC, RGV> : public XT::Grid::IntersectionFunctor<SGV>

Computes a finite-difference approximation of the jacobian of an operator induced by a local intersection operator.

See also LocalIntersectionOperatorInterface for a description of the template arguments.

Note

Presumes that the nonlinearity in the first argument of the operator does not suffer from restriction to the neighborhood.

Note

This implementation is not optimal, since it requires a full source and range vector. This can only be fixed after refactoring local discrete functions and local dof vectors.

See also: LocalIntersectionOperatorInterface

Method Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::copy

template<class M, class SGV, size_t s_r = 1, size_t s_rC = 1, class F = double, size_t r_r = s_r, size_t r_rC = s_rC, class RGV = SGV>
BaseType *Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler<M, SGV, s_r, s_rC, F, r_r, r_rC, RGV>::copy() final override

No documentation provided.

Method Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::apply_local

template<class M, class SGV, size_t s_r = 1, size_t s_rC = 1, class F = double, size_t r_r = s_r, size_t r_rC = s_rC, class RGV = SGV>
void Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler<M, SGV, s_r, s_rC, F, r_r, r_rC, RGV>::apply_local(const IntersectionType &intersection, const ElementType &inside_element, const ElementType &outside_element) final override

No documentation provided.

Method Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::add_perturbation_to_matrix

template<class M, class SGV, size_t s_r = 1, size_t s_rC = 1, class F = double, size_t r_r = s_r, size_t r_rC = s_rC, class RGV = SGV>
void Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler<M, SGV, s_r, s_rC, F, r_r, r_rC, RGV>::add_perturbation_to_matrix(int &local_range, const int &range_DoFs, const int &global_range_indices, const int &global_source_indices, const int local_range_size, const int jj, const int eps)

No documentation provided.

Constructor Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler<M, SGV, s_r, s_rC, F, r_r, r_rC, RGV>

template<>
template<class M, class SGV, size_t s_r = 1, size_t s_rC = 1, class F = double, size_t r_r = s_r, size_t r_rC = s_rC, class RGV = SGV>
Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler<M, SGV, s_r, s_rC, F, r_r, r_rC, RGV>::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler<M, SGV, s_r, s_rC, F, r_r, r_rC, RGV>(const int &source_space, const int &range_space, MatrixType &matrix, const int &source_vector, const int &local_operator, const XT::Common::Parameter &param, const int eps = 9.9999999999999995E-8)

No documentation provided.

Constructor Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler<M, SGV, s_r, s_rC, F, r_r, r_rC, RGV>

template<>
template<class M, class SGV, size_t s_r = 1, size_t s_rC = 1, class F = double, size_t r_r = s_r, size_t r_rC = s_rC, class RGV = SGV>
Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler<M, SGV, s_r, s_rC, F, r_r, r_rC, RGV>::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler<M, SGV, s_r, s_rC, F, r_r, r_rC, RGV>(const ThisType &other)

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::source_space_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::source_space_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::range_space_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::range_space_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::matrix_

MatrixType &Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::matrix_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::source_vector_

const int &Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::source_vector_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::param_

const XT::Common::Parameter Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::param_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::scaling_

const double Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::scaling_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::eps_

const int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::eps_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::source_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::source_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::range_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::range_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::local_source_inside_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::local_source_inside_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::local_source_outside_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::local_source_outside_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::local_range_inside_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::local_range_inside_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::local_range_outside_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::local_range_outside_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::global_source_indices_inside_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::global_source_indices_inside_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::global_source_indices_outside_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::global_source_indices_outside_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::global_range_indices_inside_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::global_range_indices_inside_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::global_range_indices_outside_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::global_range_indices_outside_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::range_DoFs_inside_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::range_DoFs_inside_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::range_DoFs_outside_

int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::range_DoFs_outside_

No documentation provided.

Field Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::local_op_

const int Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::local_op_

No documentation provided.

Type alias Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::BaseType

type Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::BaseType

No documentation provided.

Type alias Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::ThisType

type Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::ThisType

No documentation provided.

Type alias Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::MatrixType

type Dune::GDT::LocalIntersectionOperatorFiniteDifferenceJacobianAssembler::MatrixType

No documentation provided.