www.mooseframework.org
NeighborCoupleable.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* DO NOT MODIFY THIS HEADER */
3 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
4 /* */
5 /* (c) 2010 Battelle Energy Alliance, LLC */
6 /* ALL RIGHTS RESERVED */
7 /* */
8 /* Prepared by Battelle Energy Alliance, LLC */
9 /* Under Contract No. DE-AC07-05ID14517 */
10 /* With the U. S. Department of Energy */
11 /* */
12 /* See COPYRIGHT for full restrictions */
13 /****************************************************************/
14 
15 #ifndef NEIGHBORCOUPLEABLE_H
16 #define NEIGHBORCOUPLEABLE_H
17 
18 #include "MooseVariableBase.h"
19 #include "Coupleable.h"
20 
26 {
27 public:
33  NeighborCoupleable(const MooseObject * moose_object, bool nodal, bool neighbor_nodal);
34 
35  virtual ~NeighborCoupleable();
36 
37  // neighbor
38  virtual const VariableValue & coupledNeighborValue(const std::string & var_name,
39  unsigned int comp = 0);
40  virtual const VariableValue & coupledNeighborValueOld(const std::string & var_name,
41  unsigned int comp = 0);
42  virtual const VariableValue & coupledNeighborValueOlder(const std::string & var_name,
43  unsigned int comp = 0);
44 
45  virtual const VariableGradient & coupledNeighborGradient(const std::string & var_name,
46  unsigned int comp = 0);
47  virtual const VariableGradient & coupledNeighborGradientOld(const std::string & var_name,
48  unsigned int comp = 0);
49  virtual const VariableGradient & coupledNeighborGradientOlder(const std::string & var_name,
50  unsigned int comp = 0);
51 
52  virtual const VariableSecond & coupledNeighborSecond(const std::string & var_name,
53  unsigned int i = 0);
54 
55  virtual const DenseVector<Number> & coupledNeighborSolutionDoFs(const std::string & var_name,
56  unsigned int comp = 0);
57  virtual const DenseVector<Number> & coupledNeighborSolutionDoFsOld(const std::string & var_name,
58  unsigned int comp = 0);
59  virtual const DenseVector<Number> & coupledNeighborSolutionDoFsOlder(const std::string & var_name,
60  unsigned int comp = 0);
61 
62 protected:
64 };
65 
66 #endif /* NEIGHBORCOUPLEABLE_H */
virtual const DenseVector< Number > & coupledNeighborSolutionDoFsOlder(const std::string &var_name, unsigned int comp=0)
virtual const VariableSecond & coupledNeighborSecond(const std::string &var_name, unsigned int i=0)
NeighborCoupleable(const MooseObject *moose_object, bool nodal, bool neighbor_nodal)
Constructing the object.
Every object that can be built by the factory should be derived from this class.
Definition: MooseObject.h:36
virtual const DenseVector< Number > & coupledNeighborSolutionDoFsOld(const std::string &var_name, unsigned int comp=0)
virtual const VariableGradient & coupledNeighborGradientOlder(const std::string &var_name, unsigned int comp=0)
virtual const VariableValue & coupledNeighborValueOld(const std::string &var_name, unsigned int comp=0)
virtual const VariableValue & coupledNeighborValueOlder(const std::string &var_name, unsigned int comp=0)
virtual const VariableGradient & coupledNeighborGradientOld(const std::string &var_name, unsigned int comp=0)
virtual const VariableValue & coupledNeighborValue(const std::string &var_name, unsigned int comp=0)
virtual const DenseVector< Number > & coupledNeighborSolutionDoFs(const std::string &var_name, unsigned int comp=0)
Interface for objects that needs coupling capabilities.
Definition: Coupleable.h:35
virtual const VariableGradient & coupledNeighborGradient(const std::string &var_name, unsigned int comp=0)
Enhances Coupleable interface to also couple the values from neighbor elements.