Actual source code: MyTest.H

petsc-3.13.4 2020-08-01
Report Typos and Errors
  1: #ifndef MY_TEST_H_
  2: #define MY_TEST_H_

  4: #include <AMReX_EBFabFactory.H>
  5: #include <AMReX_MLMG.H>
  6: #include <AMReX_Array.H>

  8: class MyTest
  9: {
 10: public:

 12:     MyTest ();

 14:     void solve ();
 15:     void writePlotfile ();
 16:     void initData ();

 18: private:

 20:     void initializeEB ();
 21:     void readParameters ();
 22:     void initGrids ();

 24:     int max_level = 0;
 25:     int ref_ratio = 2;
 26:     int n_cell = 128;
 27:     int max_grid_size = 64;
 28:     int is_periodic = 0;
 29:     int eb_is_dirichlet = 0;
 30:     
 31:     std::string plot_file_name{"plot"};

 33:     amrex::Vector<amrex::Real> scalars;

 35:     // For MLMG solver
 36:     int verbose = 2;
 37:     int bottom_verbose = 2;
 38:     int max_iter = 100;
 39:     int max_fmg_iter = 0;
 40:     int max_bottom_iter = 1000;
 41:     amrex::Real reltol        = 1.e-12;
 42:     amrex::Real bottom_reltol = 1.e-4;
 43:     int linop_maxorder = 3;
 44:     int max_coarsening_level = 30;
 45:     bool use_hypre = false;
 46:     bool use_petsc = false;
 47:     amrex::Vector<amrex::Geometry> geom;
 48:     amrex::Vector<amrex::BoxArray> grids;
 49:     amrex::Vector<amrex::DistributionMapping> dmap;
 50:     amrex::Vector<std::unique_ptr<amrex::EBFArrayBoxFactory> > factory;

 52:     amrex::Vector<amrex::MultiFab> phi;
 53:     amrex::Vector<amrex::MultiFab> rhs;
 54:     amrex::Vector<amrex::MultiFab> acoef;
 55:     amrex::Vector<amrex::Array<amrex::MultiFab,AMREX_SPACEDIM> > bcoef;
 56:     amrex::Vector<amrex::MultiFab> bcoef_eb;
 57: };

 59: #endif