IFEM  90A354
ReactionsOnly.h
Go to the documentation of this file.
1 // $Id$
2 //==============================================================================
12 //==============================================================================
13 
14 #ifndef _REACTIONS_ONLY_H
15 #define _REACTIONS_ONLY_H
16 
17 #include "GlobalIntegral.h"
18 #include "SystemMatrix.h"
19 
20 
36 {
37 public:
43  ReactionsOnly(const SAM* sam, const ProcessAdm& adm,
44  RealArray* rf = nullptr, Vector* sf = nullptr);
46  virtual ~ReactionsOnly() {}
47 
49  virtual void initialize(char);
51  virtual bool finalize(bool);
52 
56  virtual bool assemble(const LocalIntegral* elmObj, int elmId);
57 
61  virtual bool haveContributions(size_t pidx,
62  const std::vector<Property>& pvec) const;
63 
64 private:
65  const SAM* mySam;
66  const ProcessAdm& myAdm;
67 
70  Vector* S;
71 };
72 
73 #endif
Abstract interface for classes representing integrated quantities.
std::vector< Real > RealArray
A real-valued array without algebraic operations.
Definition: ImmersedBoundaries.h:29
General representation of system matrices and vectors.
Abstract base class representing a system level integrated quantity.
Definition: GlobalIntegral.h:29
Abstract base class representing an element level integrated quantity.
Definition: LocalIntegral.h:25
Class for administration of MPI processes in IFEM library.
Definition: ProcessAdm.h:33
Class for assembly of reaction- and interface forces.
Definition: ReactionsOnly.h:36
virtual void initialize(char)
Initializes the integrated quantity to zero.
Definition: ReactionsOnly.C:31
virtual ~ReactionsOnly()
Empty destructor.
Definition: ReactionsOnly.h:46
StdVector b
Internal right-hand-side vector used in the force assembly.
Definition: ReactionsOnly.h:68
virtual bool finalize(bool)
Finalizes the integrated quantity after element assembly.
Definition: ReactionsOnly.C:39
Vector * S
Nodal internal forces.
Definition: ReactionsOnly.h:70
const SAM * mySam
Data for FE assembly management.
Definition: ReactionsOnly.h:65
virtual bool haveContributions(size_t pidx, const std::vector< Property > &pvec) const
Returns true if the patch pidx have any force contributions.
Definition: ReactionsOnly.C:78
virtual bool assemble(const LocalIntegral *elmObj, int elmId)
Adds a LocalIntegral object into a corresponding global object.
Definition: ReactionsOnly.C:66
const ProcessAdm & myAdm
Parallel processing administrator.
Definition: ReactionsOnly.h:66
ReactionsOnly(const SAM *sam, const ProcessAdm &adm, RealArray *rf=nullptr, Vector *sf=nullptr)
The constructor initializes the data members.
Definition: ReactionsOnly.C:21
RealArray * R
Nodal reaction forces.
Definition: ReactionsOnly.h:69
This class contains data and functions for the assembly of FE matrices.
Definition: SAM.h:39
Standard system vector stored as a single continuous array.
Definition: SystemMatrix.h:124
A vector class with some added algebraic operations.
Definition: matrix.h:64