www.mooseframework.org
CartesianMeshGenerator.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 "MeshGenerator.h"
13 #include "MooseEnum.h"
14 
16 
17 template <>
19 
21 {
22 public:
24 
26 
27  std::unique_ptr<MeshBase> generate() override;
28 
29 protected:
33  std::vector<Real> _dx;
35  std::vector<unsigned int> _ix;
37  std::vector<Real> _dy;
39  std::vector<unsigned int> _iy;
41  std::vector<Real> _dz;
43  std::vector<unsigned int> _iz;
45  std::vector<unsigned int> _subdomain_id;
47  int _nx, _ny, _nz;
48 };
49 
CartesianMeshGenerator::generate
std::unique_ptr< MeshBase > generate() override
Generate / modify the mesh.
Definition: CartesianMeshGenerator.C:228
CartesianMeshGenerator
Definition: CartesianMeshGenerator.h:20
MeshGenerator.h
CartesianMeshGenerator::CartesianMeshGenerator
CartesianMeshGenerator(const InputParameters &parameters)
Definition: CartesianMeshGenerator.C:49
CartesianMeshGenerator::_iz
std::vector< unsigned int > _iz
Number of grids in all intervals in z direction.
Definition: CartesianMeshGenerator.h:43
MeshGenerator
MeshGenerators are objects that can modify or add to an existing mesh.
Definition: MeshGenerator.h:32
MooseEnum
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
Definition: MooseEnum.h:31
CartesianMeshGenerator::_ix
std::vector< unsigned int > _ix
Number of grids in all intervals in x direction.
Definition: CartesianMeshGenerator.h:35
MooseObject::parameters
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseObject.h:76
CartesianMeshGenerator::_dy
std::vector< Real > _dy
Intervals in y direction.
Definition: CartesianMeshGenerator.h:37
CartesianMeshGenerator::_nx
int _nx
Number of elements in x, y, z direction.
Definition: CartesianMeshGenerator.h:47
CartesianMeshGenerator::_dim
MooseEnum _dim
The dimension of the mesh.
Definition: CartesianMeshGenerator.h:31
CartesianMeshGenerator::_subdomain_id
std::vector< unsigned int > _subdomain_id
Block IDs.
Definition: CartesianMeshGenerator.h:45
InputParameters
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
Definition: InputParameters.h:53
CartesianMeshGenerator::_ny
int _ny
Definition: CartesianMeshGenerator.h:47
CartesianMeshGenerator::_nz
int _nz
Definition: CartesianMeshGenerator.h:47
CartesianMeshGenerator::_iy
std::vector< unsigned int > _iy
Number of grids in all intervals in y direction.
Definition: CartesianMeshGenerator.h:39
MooseEnum.h
CartesianMeshGenerator::validParams
static InputParameters validParams()
Definition: CartesianMeshGenerator.C:26
CartesianMeshGenerator::_dx
std::vector< Real > _dx
Intervals in x direction.
Definition: CartesianMeshGenerator.h:33
CartesianMeshGenerator::_dz
std::vector< Real > _dz
Intervals in z direction.
Definition: CartesianMeshGenerator.h:41
validParams< CartesianMeshGenerator >
InputParameters validParams< CartesianMeshGenerator >()