www.mooseframework.org
PorousFlowSumQuantity.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 #include "GeneralUserObject.h"
13 
15 
16 template <>
17 InputParameters validParams<PorousFlowSumQuantity>();
18 
26 class PorousFlowSumQuantity : public GeneralUserObject
27 {
28 public:
29  PorousFlowSumQuantity(const InputParameters & parameters);
30  virtual ~PorousFlowSumQuantity();
31 
33  void zero();
34 
39  void add(Real contrib);
40 
42  virtual void initialize() override;
43 
45  virtual void execute() override;
46 
48  virtual void finalize() override;
49 
51  virtual Real getValue() const;
52 
53 protected:
55  Real _total;
56 };
57 
PorousFlowSumQuantity::_total
Real _total
This holds the sum.
Definition: PorousFlowSumQuantity.h:55
PorousFlowSumQuantity::~PorousFlowSumQuantity
virtual ~PorousFlowSumQuantity()
Definition: PorousFlowSumQuantity.C:28
PorousFlowSumQuantity::execute
virtual void execute() override
Does nothing.
Definition: PorousFlowSumQuantity.C:48
validParams< PorousFlowSumQuantity >
InputParameters validParams< PorousFlowSumQuantity >()
Definition: PorousFlowSumQuantity.C:16
PorousFlowSumQuantity::zero
void zero()
Sets _total = 0.
Definition: PorousFlowSumQuantity.C:31
PorousFlowSumQuantity::getValue
virtual Real getValue() const
Returns _total.
Definition: PorousFlowSumQuantity.C:59
PorousFlowSumQuantity::finalize
virtual void finalize() override
Does MPI gather on _total.
Definition: PorousFlowSumQuantity.C:53
PorousFlowSumQuantity::initialize
virtual void initialize() override
Does nothing.
Definition: PorousFlowSumQuantity.C:43
PorousFlowSumQuantity::add
void add(Real contrib)
Adds contrib to _total.
Definition: PorousFlowSumQuantity.C:37
PorousFlowSumQuantity
Sums into _total This is used, for instance, to record the total mass flowing into a borehole.
Definition: PorousFlowSumQuantity.h:26
PorousFlowSumQuantity::PorousFlowSumQuantity
PorousFlowSumQuantity(const InputParameters &parameters)
Definition: PorousFlowSumQuantity.C:23