www.mooseframework.org
VectorPostprocessorInterface.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 // MOOSE includes
13 #include "MooseTypes.h"
14 
15 // Forward Declarations
16 class FEProblemBase;
17 class InputParameters;
18 class MooseObject;
19 
21 {
22 public:
29  VectorPostprocessorInterface(const MooseObject * moose_object, bool broadcast_by_default = false);
30 
34  virtual ~VectorPostprocessorInterface() = default;
35 
53  virtual const VectorPostprocessorValue &
54  getVectorPostprocessorValue(const std::string & name, const std::string & vector_name);
55 
73  virtual const VectorPostprocessorValue &
74  getVectorPostprocessorValueByName(const VectorPostprocessorName & name,
75  const std::string & vector_name);
76 
88  const VectorPostprocessorValue & getVectorPostprocessorValueOld(const std::string & name,
89  const std::string & vector_name);
90 
108  getVectorPostprocessorValueOldByName(const VectorPostprocessorName & name,
109  const std::string & vector_name);
110 
128  const std::string & name, const std::string & vector_name, bool needs_broadcast);
129 
147  const VectorPostprocessorName & name, const std::string & vector_name, bool needs_broadcast);
148 
160  const std::string & name, const std::string & vector_name, bool needs_broadcast);
161 
178  const VectorPostprocessorName & name, const std::string & vector_name, bool needs_broadcast);
179 
191  virtual const ScatterVectorPostprocessorValue &
192  getScatterVectorPostprocessorValue(const std::string & name, const std::string & vector_name);
193 
205  virtual const ScatterVectorPostprocessorValue &
206  getScatterVectorPostprocessorValueByName(const std::string & name,
207  const std::string & vector_name);
208 
220  virtual const ScatterVectorPostprocessorValue &
221  getScatterVectorPostprocessorValueOld(const std::string & name, const std::string & vector_name);
222 
234  virtual const ScatterVectorPostprocessorValue &
235  getScatterVectorPostprocessorValueOldByName(const std::string & name,
236  const std::string & vector_name);
237 
245  bool hasVectorPostprocessor(const std::string & name) const;
246 
254  bool hasVectorPostprocessorByName(const VectorPostprocessorName & name) const;
255 
256 private:
259 
262 
265 
268 };
269 
virtual ~VectorPostprocessorInterface()=default
This class has virtual methods, so it needs a virtual dtor.
virtual const ScatterVectorPostprocessorValue & getScatterVectorPostprocessorValue(const std::string &name, const std::string &vector_name)
Return the scatter value for the post processor.
virtual const VectorPostprocessorValue & getVectorPostprocessorValueByName(const VectorPostprocessorName &name, const std::string &vector_name)
DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast...
FEProblemBase & _vpi_feproblem
Reference the the FEProblemBase class.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
VectorPostprocessorInterface(const MooseObject *moose_object, bool broadcast_by_default=false)
Constructor.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
virtual const ScatterVectorPostprocessorValue & getScatterVectorPostprocessorValueOldByName(const std::string &name, const std::string &vector_name)
Return the old scatter value for the post processor.
Every object that can be built by the factory should be derived from this class.
Definition: MooseObject.h:42
bool _broadcast_by_default
Whether or not to force broadcasting by default.
bool hasVectorPostprocessorByName(const VectorPostprocessorName &name) const
Determine if the VectorPostprocessor exists.
const VectorPostprocessorValue & getVectorPostprocessorValueOld(const std::string &name, const std::string &vector_name)
DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast...
const InputParameters & _vpi_params
VectorPostprocessorInterface Parameters.
virtual const ScatterVectorPostprocessorValue & getScatterVectorPostprocessorValueByName(const std::string &name, const std::string &vector_name)
Return the scatter value for the post processor.
std::vector< Real > VectorPostprocessorValue
Definition: MooseTypes.h:155
Real ScatterVectorPostprocessorValue
Definition: MooseTypes.h:156
bool hasVectorPostprocessor(const std::string &name) const
Determine if the VectorPostprocessor exists.
virtual const VectorPostprocessorValue & getVectorPostprocessorValue(const std::string &name, const std::string &vector_name)
DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast...
virtual const ScatterVectorPostprocessorValue & getScatterVectorPostprocessorValueOld(const std::string &name, const std::string &vector_name)
Return the old scatter value for the post processor.
unsigned int THREAD_ID
Definition: MooseTypes.h:161
const VectorPostprocessorValue & getVectorPostprocessorValueOldByName(const VectorPostprocessorName &name, const std::string &vector_name)
DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast...