GRINS-0.8.0
weighted_flux_qoi.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------bl-
2 //--------------------------------------------------------------------------
3 //
4 // GRINS - General Reacting Incompressible Navier-Stokes
5 //
6 // Copyright (C) 2014-2017 Paul T. Bauman, Roy H. Stogner
7 // Copyright (C) 2010-2013 The PECOS Development Team
8 //
9 // This library is free software; you can redistribute it and/or
10 // modify it under the terms of the Version 2.1 GNU Lesser General
11 // Public License as published by the Free Software Foundation.
12 //
13 // This library is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 // Lesser General Public License for more details.
17 //
18 // You should have received a copy of the GNU Lesser General Public
19 // License along with this library; if not, write to the Free Software
20 // Foundation, Inc. 51 Franklin Street, Fifth Floor,
21 // Boston, MA 02110-1301 USA
22 //
23 //-----------------------------------------------------------------------el-
24 
25 
26 #ifndef GRINS_WEIGHTED_FLUX_QOI_H
27 #define GRINS_WEIGHTED_FLUX_QOI_H
28 
29 // GRINS
30 #include "grins/qoi_base.h"
32 
33 // libMesh
34 #include "libmesh/auto_ptr.h"
35 #include "libmesh/function_base.h"
36 
37 // C++
38 #include <set>
39 #include <string>
40 #include <vector>
41 
42 namespace GRINS
43 {
44  class WeightedFluxQoI : public QoIBase
45  {
46  public:
47 
48  WeightedFluxQoI( const std::string& qoi_name );
49 
50  virtual ~WeightedFluxQoI();
51 
52  virtual QoIBase* clone() const;
53 
54  virtual bool assemble_on_interior() const;
55 
56  virtual bool assemble_on_sides() const;
57 
58  virtual void init( const GetPot& input,
59  const MultiphysicsSystem& system,
60  unsigned int qoi_num );
61 
62  private:
63 
65 
66  };
67 
68  inline
70  {
71  // Although we are technically evaluating a lift-function-weighted
72  // residual on the interior, our evaluation gets done by the
73  // FEMSystem
74  return false;
75  }
76 
77  inline
79  {
80  // Although our QoI is a boundary integral, it doesn't get
81  // evaluated directly as such; FEMSystem uses a superconvergent
82  // flux calculation based on the adjoint BC we added.
83  return false;
84  }
85 }
86 #endif //GRINS_WEIGHTED_FLUX_QOI_H
virtual void init(const GetPot &input, const MultiphysicsSystem &system, unsigned int qoi_num)
Method to allow QoI to cache any system information needed for QoI calculation, for example...
GRINS namespace.
Interface with libMesh for solving Multiphysics problems.
virtual bool assemble_on_sides() const
Does the QoI need a domain boundary assembly loop?
virtual QoIBase * clone() const
Clone this QoI.
virtual bool assemble_on_interior() const
Does the QoI need an element interior assembly loop?

Generated on Tue Dec 19 2017 12:47:28 for GRINS-0.8.0 by  doxygen 1.8.9.1