chombo-discharge
CD_IrregAddOp.H
Go to the documentation of this file.
1 /* chombo-discharge
2  * Copyright © 2023 SINTEF Energy Research.
3  * Please refer to Copyright.txt and LICENSE in the chombo-discharge root directory.
4  */
5 
12 #ifndef CD_IrregAddOp_H
13 #define CD_IrregAddOp_H
14 
15 // Chombo includes
16 #include <BoxLayoutData.H>
17 #include <BaseIVFAB.H>
18 
19 // Our includes
20 #include <CD_NamespaceHeader.H>
21 
25 class IrregAddOp : public LDOperator<BaseIVFAB<Real>>
26 {
27 public:
31  IrregAddOp() noexcept;
32 
36  virtual ~IrregAddOp() noexcept;
37 
45  virtual void
46  linearIn(BaseIVFAB<Real>& a_data, void* a_buffer, const Box& a_region, const Interval& a_comps) const override;
47 
57  virtual void
58  op(BaseIVFAB<Real>& a_dst,
59  const Box& a_regionFrom,
60  const Interval& a_dstVars,
61  const Box& a_regionTo,
62  const BaseIVFAB<Real>& a_src,
63  const Interval& a_srcVars) const override;
64 };
65 
66 #include <CD_NamespaceFooter.H>
67 
68 #endif
A Copier class for making copying between LevelData<BaseIVFAB<Real>> easier. This is an incrementatio...
Definition: CD_IrregAddOp.H:26
IrregAddOp() noexcept
Constructor (does nothing)
Definition: CD_IrregAddOp.cpp:20
virtual void op(BaseIVFAB< Real > &a_dst, const Box &a_regionFrom, const Interval &a_dstVars, const Box &a_regionTo, const BaseIVFAB< Real > &a_src, const Interval &a_srcVars) const override
Operator function. Increments data with source.
Definition: CD_IrregAddOp.cpp:56
virtual ~IrregAddOp() noexcept
Destructor (does nothing)
Definition: CD_IrregAddOp.cpp:25
virtual void linearIn(BaseIVFAB< Real > &a_data, void *a_buffer, const Box &a_region, const Interval &a_comps) const override
Linearization function. We linearize the buffer onto arg, but since this is an addition operator we n...
Definition: CD_IrregAddOp.cpp:31