https://mooseframework.inl.gov
TimedSubdomainModifier.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 
14 #include "DelimitedFileReader.h"
15 
20 {
21 public:
23 
25 
26 protected:
27  virtual std::vector<Real> getTimes() override { return _times; }
28 
29  virtual SubdomainID computeSubdomainID() override;
30 
31 private:
32  void buildFromParameters();
33  void buildFromFile();
34 
35  SubdomainID getSubdomainIDAndCheck(const std::string & subdomain_name);
36 
40  std::vector<Real> _times;
41 
43  std::vector<SubdomainID> _blocks_from;
45  std::vector<SubdomainID> _blocks_to;
46 };
std::vector< Real > _times
Times to change the subdomains on.
std::vector< SubdomainID > _blocks_to
Target subdomains to change the source subdomains to.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
std::vector< SubdomainID > _blocks_from
Source subdomains to change from.
virtual std::vector< Real > getTimes() override
Requests a vector of all times from the inheriting class (these do not have to be sorted and may have...
static InputParameters validParams()
virtual SubdomainID computeSubdomainID() override
Compute the subdomain ID of the current element.
SubdomainID getSubdomainIDAndCheck(const std::string &subdomain_name)
const InputParameters & parameters() const
Get the parameters of the object.
Modifies element subdomains only at a given list of times.
TimedSubdomainModifier(const InputParameters &parameters)
Modifies elements from entire subdomains based on user input or file input.