OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
AmrPoissonSolver.h
Go to the documentation of this file.
1 #ifndef AMR_POISSON_SOLVER_H_
2 #define AMR_POISSON_SOLVER_H_
3 
4 #include "PoissonSolver.h"
5 
6 #include <memory>
7 
8 template<class AmrObject>
10 
11 public:
15  AmrPoissonSolver(AmrObject* itsAmrObject_p)
16  : itsAmrObject_mp(itsAmrObject_p), regrid_m(true) {}
17 
18  virtual ~AmrPoissonSolver() {}
19 
20 
22  throw OpalException("AmrPoissonSolver::computePotential(Field_t, Vector_t)",
23  "Not implemented.");
24  }
25 
26  void computePotential(Field_t &rho, Vector_t hr, double zshift) {
27  throw OpalException("AmrPoissonSolver::computePotential(Field_t, Vector_t, double)",
28  "Not implemented.");
29  }
30 
32  throw OpalException("AmrPoissonSolver::test(PartBunchBase<double, 3>)", "Not implemented.");
33  }
34 
35  void hasToRegrid() {
36  regrid_m = true;
37  }
38 
39 protected:
41 
43  bool regrid_m;
44 };
45 
46 
47 #endif
AmrPoissonSolver(AmrObject *itsAmrObject_p)
virtual ~AmrPoissonSolver()
The base class for all OPAL exceptions.
Definition: OpalException.h:28
void test(PartBunchBase< double, 3 > *bunch)
void computePotential(Field_t &rho, Vector_t hr)
bool regrid_m
is set to true by itsAmrObject_mp and reset to false by solver
AmrObject * itsAmrObject_mp
void computePotential(Field_t &rho, Vector_t hr, double zshift)