3 #ifndef DUNE_PDELAB_LOCALOPERATOR_INTERFACE_HH 4 #define DUNE_PDELAB_LOCALOPERATOR_INTERFACE_HH 122 template<
typename LFSU,
typename LFSV,
typename LocalPattern>
124 (
const LFSU& lfsu,
const LFSV& lfsv,
125 LocalPattern& pattern)
const 142 template<
typename LFSU,
typename LFSV,
typename LocalPattern>
144 (
const LFSU& lfsu,
const LFSV& lfsv,
145 LocalPattern& pattern)
const 169 template<
typename LFSU,
typename LFSV,
typename LocalPattern>
171 (
const LFSU& lfsu_s,
const LFSV& lfsv_s,
172 const LFSU& lfsu_n,
const LFSV& lfsv_n,
173 LocalPattern& pattern_sn,
174 LocalPattern& pattern_ns)
const 193 template<
typename LFSU,
typename LFSV,
typename LocalPattern>
195 (
const LFSU& lfsu_s,
const LFSV& lfsv_s,
196 LocalPattern& pattern_ss)
const 229 template<
typename EG,
typename LFSU,
typename X,
typename LFSV,
233 const LFSU& lfsu,
const X& x,
const LFSV& lfsv,
259 template<
typename EG,
typename LFSU,
typename X,
typename LFSV,
263 const LFSU& lfsu,
const X& x,
const LFSV& lfsv,
298 template<
typename IG,
typename LFSU,
typename X,
typename LFSV,
302 const LFSU& lfsu_s,
const X& x_s,
const LFSV& lfsv_s,
303 const LFSU& lfsu_n,
const X& x_n,
const LFSV& lfsv_n,
304 R& r_s, R& r_n)
const 331 template<
typename IG,
typename LFSU,
typename X,
typename LFSV,
335 const LFSU& lfsu_s,
const X& x_s,
const LFSV& lfsv_s,
360 template<
typename EG,
typename LFSV,
typename R>
380 template<
typename EG,
typename LFSV,
typename R>
403 template<
typename IG,
typename LFSV,
typename R>
405 const LFSV& lfsv_s,
const LFSV& lfsv_n,
406 R& r_s, R& r_n)
const 425 template<
typename IG,
typename LFSV,
typename R>
468 template<
typename EG,
typename LFSU,
typename X,
typename LFSV,
472 const LFSU& lfsu,
const X& z,
const LFSV& lfsv,
508 template<
typename EG,
typename LFSU,
typename X,
typename LFSV,
512 const LFSU& lfsu,
const X& z,
const LFSV& lfsv,
561 template<
typename IG,
typename LFSU,
typename X,
typename LFSV,
565 const LFSU& lfsu_s,
const X& z_s,
const LFSV& lfsv_s,
566 const LFSU& lfsu_n,
const X& z_n,
const LFSV& lfsv_n,
567 Y& y_s, Y& y_n)
const 605 template<
typename IG,
typename LFSU,
typename X,
typename LFSV,
609 const LFSU& lfsu_s,
const X& z_s,
const LFSV& lfsv_s,
653 template<
typename EG,
typename LFSU,
typename X,
typename LFSV,
657 const LFSU& lfsu,
const X& x,
const X& z,
const LFSV& lfsv,
693 template<
typename EG,
typename LFSU,
typename X,
typename LFSV,
697 const LFSU& lfsu,
const X& x,
const X& z,
const LFSV& lfsv,
752 template<
typename IG,
typename LFSU,
typename X,
typename LFSV,
756 const LFSU& lfsu_s,
const X& x_s,
const X& z_s,
const LFSV& lfsv_s,
757 const LFSU& lfsu_n,
const X& x_n,
const X& z_n,
const LFSV& lfsv_n,
758 Y& y_s, Y& y_n)
const 797 template<
typename IG,
typename LFSU,
typename X,
typename LFSV,
801 const LFSU& lfsu_s,
const X& x_s,
const X& z_s,
const LFSV& lfsv_s,
830 template<
typename EG,
typename LFSU,
typename X,
typename LFSV,
834 const LFSU& lfsu,
const X& x,
const LFSV& lfsv,
854 template<
typename EG,
typename LFSU,
typename X,
typename LFSV,
858 const LFSU& lfsu,
const X& x,
const LFSV& lfsv,
895 template<
typename IG,
typename LFSU,
typename X,
typename LFSV,
899 const LFSU& lfsu_s,
const X& x_s,
const LFSV& lfsv_s,
900 const LFSU& lfsu_n,
const X& x_n,
const LFSV& lfsv_n,
925 template<
typename IG,
typename LFSU,
typename X,
typename LFSV,
929 const LFSU& lfsu_s,
const X& x_s,
const LFSV& lfsv_s,
940 #endif // DUNE_PDELAB_LOCALOPERATOR_INTERFACE_HH static const bool doPatternSkeleton
Definition: localoperator/interface.hh:92
Default flags for all local operators.
Definition: flags.hh:18
static const bool doAlphaVolumePostSkeleton
Definition: localoperator/interface.hh:95
void lambda_boundary(const IG &ig, const LFSV &lfsv_s, R &r_s) const
get a boundary intersections's contribution to lambda
Definition: localoperator/interface.hh:426
void pattern_volume(const LFSU &lfsu, const LFSV &lfsv, LocalPattern &pattern) const
get an element's contribution to the sparsity pattern
Definition: localoperator/interface.hh:124
void lambda_volume_post_skeleton(const EG &eg, const LFSV &lfsv, R &r) const
get an element's contribution to lambda after the intersections have been handled ...
Definition: localoperator/interface.hh:381
void lambda_volume(const EG &eg, const LFSV &lfsv, R &r) const
get an element's contribution to lambda
Definition: localoperator/interface.hh:361
void jacobian_apply_volume(const EG &eg, const LFSU &lfsu, const X &z, const LFSV &lfsv, Y &y) const
Applies an element's jacobian to a vector for a linear problem.
Definition: localoperator/interface.hh:471
void alpha_skeleton(const IG &ig, const LFSU &lfsu_s, const X &x_s, const LFSV &lfsv_s, const LFSU &lfsu_n, const X &x_n, const LFSV &lfsv_n, R &r_s, R &r_n) const
get an internal intersections's contribution to alpha
Definition: localoperator/interface.hh:301
void pattern_volume_post_skeleton(const LFSU &lfsu, const LFSV &lfsv, LocalPattern &pattern) const
get an element's contribution to the sparsity pattern after the intersections have been handled ...
Definition: localoperator/interface.hh:144
void pattern_skeleton(const LFSU &lfsu_s, const LFSV &lfsv_s, const LFSU &lfsu_n, const LFSV &lfsv_n, LocalPattern &pattern_sn, LocalPattern &pattern_ns) const
get an internal intersection's contribution to the sparsity pattern
Definition: localoperator/interface.hh:171
static const bool doPatternBoundary
Definition: localoperator/interface.hh:93
static const bool doAlphaSkeleton
Definition: localoperator/interface.hh:96
void pattern_boundary(const LFSU &lfsu_s, const LFSV &lfsv_s, LocalPattern &pattern_ss) const
get a boundary intersection's contribution to the sparsity pattern
Definition: localoperator/interface.hh:195
static const bool doPatternVolume
Definition: localoperator/interface.hh:90
static const bool doAlphaVolume
Definition: localoperator/interface.hh:94
For backward compatibility – Do not use this!
Definition: adaptivity.hh:28
void jacobian_apply_boundary(const IG &ig, const LFSU &lfsu_s, const X &z_s, const LFSV &lfsv_s, Y &y_s) const
apply a boundary intersections's jacobian for a linear problem.
Definition: localoperator/interface.hh:608
void jacobian_skeleton(const IG &ig, const LFSU &lfsu_s, const X &x_s, const LFSV &lfsv_s, const LFSU &lfsu_n, const X &x_n, const LFSV &lfsv_n, LocalMatrix &mat_ss, LocalMatrix &mat_sn, LocalMatrix &mat_ns, LocalMatrix &mat_nn) const
apply an internal intersections's jacobians
Definition: localoperator/interface.hh:898
void jacobian_boundary(const IG &ig, const LFSU &lfsu_s, const X &x_s, const LFSV &lfsv_s, LocalMatrix &mat_ss) const
get a boundary intersections's jacobian
Definition: localoperator/interface.hh:928
const IG & ig
Definition: constraints.hh:148
static const bool doLambdaVolume
Definition: localoperator/interface.hh:98
void jacobian_apply_skeleton(const IG &ig, const LFSU &lfsu_s, const X &z_s, const LFSV &lfsv_s, const LFSU &lfsu_n, const X &z_n, const LFSV &lfsv_n, Y &y_s, Y &y_n) const
Definition: localoperator/interface.hh:564
static const bool doLambdaBoundary
Definition: localoperator/interface.hh:101
static const bool doLambdaVolumePostSkeleton
Definition: localoperator/interface.hh:99
void alpha_volume_post_skeleton(const EG &eg, const LFSU &lfsu, const X &x, const LFSV &lfsv, R &r) const
get an element's contribution to alpha after the intersections have been handled
Definition: localoperator/interface.hh:262
void jacobian_volume_post_skeleton(const EG &eg, const LFSU &lfsu, const X &x, const LFSV &lfsv, LocalMatrix &mat) const
get an element's jacobian after the intersections have been handled
Definition: localoperator/interface.hh:857
static const bool doLambdaSkeleton
Definition: localoperator/interface.hh:100
void jacobian_apply_volume_post_skeleton(const EG &eg, const LFSU &lfsu, const X &z, const LFSV &lfsv, Y &y) const
Definition: localoperator/interface.hh:511
void jacobian_volume(const EG &eg, const LFSU &lfsu, const X &x, const LFSV &lfsv, LocalMatrix &mat) const
get an element's jacobian
Definition: localoperator/interface.hh:833
static const bool doPatternVolumePostSkeleton
Definition: localoperator/interface.hh:91
void alpha_boundary(const IG &ig, const LFSU &lfsu_s, const X &x_s, const LFSV &lfsv_s, R &r_s) const
get a boundary intersections's contribution to alpha
Definition: localoperator/interface.hh:334
void lambda_skeleton(const IG &ig, const LFSV &lfsv_s, const LFSV &lfsv_n, R &r_s, R &r_n) const
get an internal intersections's contribution to lambda
Definition: localoperator/interface.hh:404
void alpha_volume(const EG &eg, const LFSU &lfsu, const X &x, const LFSV &lfsv, R &r) const
get an element's contribution to alpha
Definition: localoperator/interface.hh:232
A dense matrix for storing data associated with the degrees of freedom of a pair of LocalFunctionSpac...
Definition: localmatrix.hh:184
static const bool doAlphaBoundary
Definition: localoperator/interface.hh:97
Class to document the stationary local operator interface.
Definition: localoperator/interface.hh:85