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:
41  void printGeneralExecutionInformation() const override;
42 
46 };
void printGeneralExecutionInformation() const override
Print list of objects executed and in which order.
void join(const ComputeElemDampingThread &y)
Base class for assembly-like calculations.
const MooseObjectWarehouse< ElementDamper > & _element_dampers
ComputeElemDampingThread(FEProblemBase &feproblem, NonlinearSystemBase &nl)
A storage container for MooseObjects that inherit from SetupInterface.
virtual void onElement(const Elem *elem) override
Assembly of the element (not including surface assembly)
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
Nonlinear system to be solved.
Base class for deriving element dampers.
Definition: ElementDamper.h:28
tbb::split split
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real