3 #ifndef DUNE_PDELAB_LOCALOPERATOR_PATTERN_HH 4 #define DUNE_PDELAB_LOCALOPERATOR_PATTERN_HH 6 #include<dune/common/exceptions.hh> 7 #include <dune/common/fvector.hh> 18 template<
typename LFSU,
typename LFSV,
typename LocalPattern>
20 LocalPattern& pattern)
const 22 for (
size_t i=0; i<lfsv.size(); ++i)
23 for (
size_t j=0; j<lfsu.size(); ++j)
24 pattern.addLink(lfsv,i,lfsu,j);
34 template<
typename LFSU,
typename LFSV,
typename LocalPattern>
35 void pattern_skeleton (
const LFSU& lfsu_s,
const LFSV& lfsv_s,
const LFSU& lfsu_n,
const LFSV& lfsv_n,
36 LocalPattern& pattern_sn,
37 LocalPattern& pattern_ns)
const 39 for (
unsigned int i=0; i<lfsv_s.size(); ++i)
40 for (
unsigned int j=0; j<lfsu_n.size(); ++j)
41 pattern_sn.addLink(lfsv_s,i,lfsu_n,j);
43 for (
unsigned int i=0; i<lfsv_n.size(); ++i)
44 for (
unsigned int j=0; j<lfsu_s.size(); ++j)
45 pattern_ns.addLink(lfsv_n,i,lfsu_s,j);
55 template<
typename LFSU,
typename LFSV,
typename LocalPattern>
57 LocalPattern& pattern_ss)
const 59 for (
unsigned int i=0; i<lfsv_s.size(); ++i)
60 for (
unsigned int j=0; j<lfsu_s.size(); ++j)
61 pattern_ss.addLink(lfsv_s,i,lfsu_s,j);
69 #endif // DUNE_PDELAB_LOCALOPERATOR_PATTERN_HH sparsity pattern generator
Definition: pattern.hh:29
void pattern_volume(const LFSU &lfsu, const LFSV &lfsv, LocalPattern &pattern) const
Definition: pattern.hh:19
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
Definition: pattern.hh:35
void pattern_boundary(const LFSU &lfsu_s, const LFSV &lfsv_s, LocalPattern &pattern_ss) const
Definition: pattern.hh:56
For backward compatibility – Do not use this!
Definition: adaptivity.hh:27
sparsity pattern generator
Definition: pattern.hh:13
sparsity pattern generator
Definition: pattern.hh:50