https://mooseframework.inl.gov
Loading...
Searching...
No Matches
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{
24public:
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
59protected:
61 Order _order;
64 const std::vector<std::pair<SubdomainID, MooseEnumItem>> _custom_block_orders;
66 std::vector<libMesh::QuadratureType> _custom_block_types;
68};
Base class for actions.
Definition Action.h:38
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
Definition MooseEnum.h:55
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type.
static MultiMooseEnum getQuadratureOrdersMultiEnum()
A MultiMooseEnum for selecting multiple quadrature orders.
static InputParameters validParams()
libMesh::QuadratureType _type
const std::vector< std::pair< SubdomainID, MooseEnumItem > > _custom_block_orders
static MooseEnum getQuadratureOrderEnum()
Return the potential selections for the order of the quadrature, with an 'auto' default.
static MultiMooseEnum getQuadratureTypesMultiEnum()
A MultiMooseEnum for selecting multiple quadrature types (one per custom block)
std::vector< libMesh::QuadratureType > _custom_block_types
Per-block quadrature types, parallel to _custom_block_orders. Falls back to _type if empty.
virtual void act() override
Method to add objects to the simulation or perform other setup tasks.
static MooseEnum getQuadratureTypesEnum()
Return the possible selections for the type of the quadrature.