DUNE-ACFEM (unstable)

emptyblockconstraints.hh
Go to the documentation of this file.
1 
5 #ifndef _DUNE_ACFEM_EMPTY_BLOCKCONSTRAINTS_HH_
6 #define _DUNE_ACFEM_EMPTY_BLOCKCONSTRAINTS_HH_
7 
8 #include <dune/fem/operator/common/differentiableoperator.hh>
9 
10 namespace Dune {
11 
12  namespace ACFem {
13 
24  template<class DiscreteFunctionSpace>
26  {
28  public:
29  typedef DiscreteFunctionSpace DiscreteFunctionSpaceType;
30  typedef typename DiscreteFunctionSpaceType::GridPartType GridPartType;
31  typedef typename DiscreteFunctionSpaceType::EntityType EntityType;
32 
33  template <typename ...Args>
34  EmptyBlockConstraints(const Args & ...){}
35 
36  void update() const {}
37  void updateValues() const {}
38 
39  template<class DomainDiscreteFunction, class RangeDiscreteFunction>
40  void operator()(const DomainDiscreteFunction& u, RangeDiscreteFunction& w) const {}
41 
42  template<class DomainDiscreteFunction, class JacobianOperator>
43  void jacobian(const DomainDiscreteFunction& u, JacobianOperator& jOp) const {}
44 
45  template<class DomainDiscreteFunction, class JacobianOperator>
46  void applyToOperator(const DomainDiscreteFunction& u, JacobianOperator& jOp) const
47  {
48  jacobian(u, jOp);
49  }
50 
51  template<class DomainDiscreteFunction>
52  void constrain(DomainDiscreteFunction& w) const {}
53 
54  template<class DomainDiscreteFunction>
55  void zeroConstrain(DomainDiscreteFunction& w) const {}
56 
57  size_t size() const { return 0; }
58  };
59 
61 
63 
64  } // ACFem::
65 
66 } // Dune::
67 
68 
69 #endif // _DUNE_ACFEM_EMPTY_BLOCKCONSTRAINTS_HH_
A class modelling do-nothing constraints.
Definition: emptyblockconstraints.hh:26
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.80.0 (May 16, 22:29, 2024)