www.mooseframework.org
ComputeElemDampingThread.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 // MOOSE includes
13 #include "ThreadedElementLoop.h"
14 
15 #include "libmesh/elem_range.h"
16 
17 // Forward declarations
19 class ElementDamper;
20 template <typename T>
22 
23 class ComputeElemDampingThread : public ThreadedElementLoop<ConstElemRange>
24 {
25 public:
27 
28  // Splitting Constructor
30 
31  virtual ~ComputeElemDampingThread();
32 
33  virtual void onElement(const Elem * elem) override;
34 
35  void join(const ComputeElemDampingThread & y);
36 
37  Real damping();
38 
39 protected:
40  Real _damping;
43 };
44 
void join(const ComputeElemDampingThread &y)
Base class for assembly-like calculations.
const MooseObjectWarehouse< ElementDamper > & _element_dampers
A storage container for MooseObjects that inherit from SetupInterface.
virtual void onElement(const Elem *elem) override
Assembly of the element (not including surface assembly)
ComputeElemDampingThread(FEProblemBase &feproblem)
static PetscErrorCode Vec x
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
Nonlinear system to be solved.
std::vector< std::string > split(const std::string &str, const std::string &delimiter)
Python like split function for strings.
Definition: MooseUtils.C:736
Base class for deriving element dampers.
Definition: ElementDamper.h:33