https://mooseframework.inl.gov
HardwareIDAux.C
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 #include "HardwareIDAux.h"
11 
13 
16 {
18  params.addClassDescription(
19  "Creates a field showing the assignment of partitions to physical nodes in the cluster.");
20  return params;
21 }
22 
24  : AuxKernel(parameters), _rank_map(_app.rankMap())
25 {
26 }
27 
28 Real
30 {
31  if (isNodal())
32  return _rank_map.hardwareID(_current_node->processor_id());
33  else
34  return _rank_map.hardwareID(_current_elem->processor_id());
35 }
const Node *const & _current_node
Current node (valid only for nodal kernels)
Definition: AuxKernel.h:214
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
registerMooseObject("MooseApp", HardwareIDAux)
static InputParameters validParams()
Definition: HardwareIDAux.C:15
HardwareIDAux(const InputParameters &parameters)
Definition: HardwareIDAux.C:23
const RankMap & _rank_map
Definition: HardwareIDAux.h:28
"Paints" the ID of of the physical "node" in the cluster the element is located on.
Definition: HardwareIDAux.h:18
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
unsigned int hardwareID(processor_id_type pid) const
Returns the "hardware ID" (a unique ID given to each physical compute node in the job) for a given pr...
Definition: RankMap.h:35
const Elem *const & _current_elem
Current element (valid only for elemental kernels)
Definition: AuxKernel.h:204
void addClassDescription(const std::string &doc_string)
This method adds a description of the class that will be displayed in the input file syntax dump...
virtual Real computeValue() override
Compute and return the value of the aux variable.
Definition: HardwareIDAux.C:29
static InputParameters validParams()
Definition: AuxKernel.C:27
bool isNodal() const
Nodal or elemental kernel?
Definition: AuxKernel.h:86