https://mooseframework.inl.gov
Loading...
Searching...
No Matches
AverageGrainVolume.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
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
13#include "Coupleable.h"
15
16// Forward Declarations
18class MooseMesh;
19
24 public Coupleable,
26{
27public:
29
31 virtual void initialize() override;
32 virtual void execute() override;
33 virtual void finalize() override;
34 virtual Real getValue() const override;
35
36protected:
37 void accumulateVolumes(const std::vector<unsigned int> & var_to_features,
38 std::size_t libmesh_dbg_var(num_features));
39 Real computeIntegral(std::size_t var_index) const;
40
41private:
45 std::vector<unsigned int> _static_var_to_feature;
46 std::vector<const VariableValue *> _vals;
47 std::vector<Real> _feature_volumes;
49 const QBase * const & _qrule;
53};
Compute the average grain area in a polycrystal.
MooseMesh & _mesh
A reference to the mesh.
virtual Real getValue() const override
std::vector< const VariableValue * > _vals
std::vector< Real > _feature_volumes
virtual void initialize() override
virtual void finalize() override
static InputParameters validParams()
const FeatureFloodCount *const _feature_counter
std::vector< unsigned int > _static_var_to_feature
Real computeIntegral(std::size_t var_index) const
void accumulateVolumes(const std::vector< unsigned int > &var_to_features, std::size_t libmesh_dbg_var(num_features))
const MooseArray< Real > & _coord
virtual void execute() override
const QBase *const & _qrule
const MooseArray< Real > & _JxW
const MooseArray< Point > & _q_point
This object will mark nodes or elements of continuous regions all with a unique number for the purpos...
const InputParameters & parameters() const