WarpX
WarpXWrappers.H
Go to the documentation of this file.
1 /* Copyright 2019 Andrew Myers, David Grote, Maxence Thevenet
2  * Remi Lehe, Weiqun Zhang
3  *
4  * This file is part of WarpX.
5  *
6  * This file is a legacy file and will be removed soon.
7  * Please do NOT add new bindings here! Please see the other files
8  * in this directory for the new pybind11-based bindings!
9  *
10  * License: BSD-3-Clause-LBNL
11  */
12 #ifndef WARPX_WRAPPERS_H_
13 #define WARPX_WRAPPERS_H_
14 
16 #include "Evolve/WarpXDtType.H"
17 #include <AMReX_Config.H>
18 #include <AMReX_REAL.H>
19 
20 #ifdef AMREX_USE_MPI
21 # include <mpi.h>
22 #endif
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28  int warpx_Real_size();
30 
31  int warpx_nSpecies();
32 
34 
36 
37  void amrex_init_with_inited_mpi (int argc, char* argv[], MPI_Comm mpicomm);
38 
39  typedef void(*WARPX_CALLBACK_PY_FUNC_0)();
40 
42 
43  void warpx_ReadBCParams();
44 
46 
47  amrex::Real warpx_getCellSize(int dir, int lev);
48 
49  amrex::Real warpx_sumParticleCharge(const char* char_species_name, bool local);
50 
51  void warpx_ComputeDt ();
52  void warpx_MoveWindow (int step, bool move_j);
53 
54  void warpx_EvolveE (amrex::Real dt);
55  void warpx_EvolveB (amrex::Real dt, DtType a_dt_type);
56  void warpx_FillBoundaryE ();
57  void warpx_FillBoundaryB ();
58  void warpx_SyncCurrent (
59  const amrex::Vector<std::array<std::unique_ptr<amrex::MultiFab>,3>>& J_fp,
60  const amrex::Vector<std::array<std::unique_ptr<amrex::MultiFab>,3>>& J_cp,
61  const amrex::Vector<std::array<std::unique_ptr<amrex::MultiFab>,3>>& J_buffer);
63  void warpx_PushParticlesandDepose (amrex::Real cur_time);
64 
65  void warpx_setistep (int lev, int ii);
66  void warpx_sett_new (int lev, amrex::Real time);
67  amrex::Real warpx_getdt (int lev);
68 
69  int warpx_maxStep ();
70  amrex::Real warpx_stopTime ();
71 
72  int warpx_finestLevel ();
73 
74  void mypc_Redistribute ();
75 
76 #ifdef __cplusplus
77 }
78 #endif
79 
80 #endif
int MPI_Comm
DtType
Definition: WarpXDtType.H:11
int warpx_ParticleReal_size()
Definition: WarpXWrappers.cpp:47
void warpx_CheckGriddingForRZSpectral()
Definition: WarpXWrappers.cpp:83
void warpx_ReadBCParams()
Definition: WarpXWrappers.cpp:78
amrex::Real warpx_getdt(int lev)
Definition: WarpXWrappers.cpp:150
void warpx_PushParticlesandDepose(amrex::Real cur_time)
Definition: WarpXWrappers.cpp:137
void warpx_ConvertLabParamsToBoost()
Definition: WarpXWrappers.cpp:73
int warpx_Real_size()
Definition: WarpXWrappers.cpp:42
void warpx_ComputeDt()
Definition: WarpXWrappers.cpp:101
void warpx_FillBoundaryE()
Definition: WarpXWrappers.cpp:118
void warpx_MoveWindow(int step, bool move_j)
Definition: WarpXWrappers.cpp:105
amrex::Real warpx_sumParticleCharge(const char *char_species_name, bool local)
Definition: WarpXWrappers.cpp:93
int warpx_nSpecies()
Definition: WarpXWrappers.cpp:52
amrex::Real warpx_stopTime()
Definition: WarpXWrappers.cpp:159
void(* WARPX_CALLBACK_PY_FUNC_0)()
Definition: WarpXWrappers.H:39
void warpx_sett_new(int lev, amrex::Real time)
Definition: WarpXWrappers.cpp:146
int warpx_finestLevel()
Definition: WarpXWrappers.cpp:164
int warpx_galerkin_interpolation()
Definition: WarpXWrappers.cpp:63
void warpx_EvolveE(amrex::Real dt)
Definition: WarpXWrappers.cpp:110
bool warpx_use_fdtd_nci_corr()
Definition: WarpXWrappers.cpp:58
void mypc_Redistribute()
Definition: WarpXWrappers.cpp:169
int warpx_maxStep()
Definition: WarpXWrappers.cpp:155
void warpx_UpdateAuxilaryData()
Definition: WarpXWrappers.cpp:133
void warpx_EvolveB(amrex::Real dt, DtType a_dt_type)
Definition: WarpXWrappers.cpp:114
void warpx_FillBoundaryB()
Definition: WarpXWrappers.cpp:122
void warpx_SyncCurrent(const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_fp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_cp, const amrex::Vector< std::array< std::unique_ptr< amrex::MultiFab >, 3 >> &J_buffer)
Definition: WarpXWrappers.cpp:126
void amrex_init_with_inited_mpi(int argc, char *argv[], MPI_Comm mpicomm)
Definition: WarpXWrappers.cpp:68
void warpx_setistep(int lev, int ii)
Definition: WarpXWrappers.cpp:142
amrex::Real warpx_getCellSize(int dir, int lev)
Definition: WarpXWrappers.cpp:88
ii
Definition: check_interp_points_and_weights.py:148
float dt
Definition: stencil.py:440