WarpX
BackTransformFunctor.H
Go to the documentation of this file.
1 /* Copyright 2021 Revathi Jambunathan
2  *
3  * This file is part of WarpX.
4  *
5  * License: BSD-3-Clause-LBNL
6  */
7 #ifndef WARPX_BACKTRANSFORMFUNCTOR_H_
8 #define WARPX_BACKTRANSFORMFUNCTOR_H_
9 
10 #include "ComputeDiagFunctor.H"
11 
12 #include <AMReX_Box.H>
13 #include <AMReX_IntVect.H>
14 #include <AMReX_REAL.H>
15 #include <AMReX_Vector.H>
16 
17 #include <AMReX_BaseFwd.H>
18 
19 #include <string>
20 
32 class
34 {
35 public:
47  BackTransformFunctor ( const amrex::MultiFab * const mf_src, const int lev,
48  const int ncomp, const int num_buffers,
50  const amrex::IntVect crse_ratio= amrex::IntVect(1));
51 
65  void operator ()(amrex::MultiFab& mf_dst, int dcomp, const int i_buffer) const override;
66 
82  void PrepareFunctorData ( int i_buffer, bool z_slice_in_domain,
83  amrex::Real current_z_boost,
84  amrex::Box buffer_box, const int k_index_zlab,
85  const int max_box_size, const int snapshot_full ) override;
89  void InitData () override;
99  void LorentzTransformZ (amrex::MultiFab& data, amrex::Real gamma_boost,
100  amrex::Real beta_boost) const;
101 private:
103  amrex::MultiFab const * const m_mf_src = nullptr;
105  int const m_lev;
107  int const m_num_buffers;
121 
123  int m_max_box_size = 256;
129 };
130 
131 #endif
amrex::Vector< int > m_map_varnames
Definition: BackTransformFunctor.H:128
data
Definition: run_alltests_1node.py:325
int gamma_boost
Definition: compute_domain.py:41
amrex::Vector< int > m_perform_backtransform
Definition: BackTransformFunctor.H:116
amrex::Vector< std::string > m_varnames
Definition: BackTransformFunctor.H:120
int const m_num_buffers
Definition: BackTransformFunctor.H:107
amrex::Vector< amrex::Box > m_buffer_box
Definition: BackTransformFunctor.H:109
Functor to compute a diagnostic and store the result in existing MultiFab.
Definition: ComputeDiagFunctor.H:13
int const m_lev
Definition: BackTransformFunctor.H:105
amrex::Vector< amrex::Real > m_current_z_boost
Definition: BackTransformFunctor.H:111
Functor to back-transform cell-centered data and store result in mf_out.
Definition: BackTransformFunctor.H:32
amrex::Vector< int > m_k_index_zlab
Definition: BackTransformFunctor.H:118