www.mooseframework.org
PointValueSampler.C
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 #include "PointValueSampler.h"
11 
12 #include <numeric>
13 
15 
18 {
20  params.addClassDescription("Sample a variable at specific points.");
21  params.addRequiredParam<std::vector<Point>>(
22  "points", "The points where you want to evaluate the variables");
23 
24  return params;
25 }
26 
28  : PointVariableSamplerBase(parameters)
29 {
30  _points = getParam<std::vector<Point>>("points");
31 }
32 
33 void
35 {
36  // Generate new Ids if the point vector has grown (non-negative counting numbers)
37  if (_points.size() > _ids.size())
38  {
39  auto old_size = _ids.size();
40  _ids.resize(_points.size());
41  std::iota(_ids.begin() + old_size, _ids.end(), old_size);
42  }
43  // Otherwise sync the ids array to be smaller if the point vector has been shrunk
44  else if (_points.size() < _ids.size())
45  _ids.resize(_points.size());
46 
48 }
virtual void initialize()
Initialize the datastructures.
PointValueSampler(const InputParameters &parameters)
std::vector< Real > _ids
The ID to use for each point (yes, this is Real on purpose)
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
std::vector< Point > _points
The points to evaluate at.
registerMooseObject("MooseApp", PointValueSampler)
static InputParameters validParams()
void addRequiredParam(const std::string &name, const std::string &doc_string)
This method adds a parameter and documentation string to the InputParameters object that will be extr...
Base class for sampling variable(s) at points.
virtual void initialize() override
Initialize the datastructures.
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...
static InputParameters validParams()