https://mooseframework.inl.gov
SetupQuadratureAction.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 
12 #include "Action.h"
13 #include "MooseEnum.h"
14 
15 // libMesh
16 #include "libmesh/enum_order.h"
17 #include "libmesh/enum_quadrature_type.h"
18 
23 {
24 public:
26 
28 
29  virtual void act() override;
30 
33  {
34  return MooseEnum("CLOUGH CONICAL GAUSS GRID MONOMIAL SIMPSON TRAP GAUSS_LOBATTO", "GAUSS");
35  }
38  {
39  return MooseEnum(
40  "AUTO CONSTANT FIRST SECOND THIRD FOURTH FIFTH SIXTH SEVENTH EIGHTH NINTH TENTH "
41  "ELEVENTH TWELFTH THIRTEENTH FOURTEENTH FIFTEENTH SIXTEENTH SEVENTEENTH "
42  "EIGHTTEENTH NINTEENTH TWENTIETH",
43  "AUTO");
44  }
47  {
48  return MultiMooseEnum(
49  "CONSTANT FIRST SECOND THIRD FOURTH FIFTH SIXTH SEVENTH EIGHTH NINTH TENTH "
50  "ELEVENTH TWELFTH THIRTEENTH FOURTEENTH FIFTEENTH SIXTEENTH SEVENTEENTH "
51  "EIGHTTEENTH NINTEENTH TWENTIETH");
52  }
55  {
56  return MultiMooseEnum("CLOUGH CONICAL GAUSS GRID MONOMIAL SIMPSON TRAP GAUSS_LOBATTO");
57  }
58 
59 protected:
64  const std::vector<std::pair<SubdomainID, MooseEnumItem>> _custom_block_orders;
66  std::vector<libMesh::QuadratureType> _custom_block_types;
68 };
Sets the quadrature.
static MooseEnum getQuadratureOrderEnum()
Return the potential selections for the order of the quadrature, with an &#39;auto&#39; default.
Order
static MultiMooseEnum getQuadratureOrdersMultiEnum()
A MultiMooseEnum for selecting multiple quadrature orders.
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseBase.h:131
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
const std::vector< std::pair< SubdomainID, MooseEnumItem > > _custom_block_orders
Base class for actions.
Definition: Action.h:34
static MooseEnum getQuadratureTypesEnum()
Return the possible selections for the type of the quadrature.
libMesh::QuadratureType _type
virtual void act() override
Method to add objects to the simulation or perform other setup tasks.
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
Definition: MooseEnum.h:54
static InputParameters validParams()
static MultiMooseEnum getQuadratureTypesMultiEnum()
A MultiMooseEnum for selecting multiple quadrature types (one per custom block)
SetupQuadratureAction(const InputParameters &parameters)
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type...
std::vector< libMesh::QuadratureType > _custom_block_types
Per-block quadrature types, parallel to _custom_block_orders. Falls back to _type if empty...