8 #ifndef WARPX_WRAPPERS_H_
9 #define WARPX_WRAPPERS_H_
13 #include <AMReX_Config.H>
59 amrex::ParticleReal
const * x,
60 amrex::ParticleReal
const * y,
61 amrex::ParticleReal
const * z,
62 amrex::ParticleReal
const * vx,
63 amrex::ParticleReal
const * vy,
64 amrex::ParticleReal
const * vz,
66 amrex::ParticleReal
const * attr_real,
90 const char* char_species_name,
int lev,
int* num_tiles,
91 int** particles_per_tile);
94 const char* char_species_name,
const char* char_comp_name,
int lev,
95 int* num_tiles,
int** particles_per_tile);
98 const char* char_species_name,
const char* char_comp_name);
101 const char* char_species_name,
const char* char_comp_name,
bool comm);
108 const char* species_name,
int boundary,
int lev,
109 int* num_tiles,
int** particles_per_tile);
112 const char* species_name,
int boundary,
int lev,
113 int* num_tiles,
int** particles_per_tile,
const char* comp_name);
116 const char* species_name,
int boundary,
int lev,
117 int* num_tiles,
int** particles_per_tile);
140 const amrex::Vector<std::array<std::unique_ptr<amrex::MultiFab>,3>>& J_fp,
141 const amrex::Vector<std::array<std::unique_ptr<amrex::MultiFab>,3>>& J_cp,
142 const amrex::Vector<std::array<std::unique_ptr<amrex::MultiFab>,3>>& J_buffer);
228 amrex::Real**
warpx_getPhiFP (
int lev,
int *return_size,
int *ncomps,
int **ngrowvect,
int **shapes);
232 amrex::Real**
warpx_getFfieldCP (
int lev,
int *return_size,
int *ncomps,
int **ngrowvect,
int **shapes);
233 amrex::Real**
warpx_getFfieldFP (
int lev,
int *return_size,
int *ncomps,
int **ngrowvect,
int **shapes);
236 amrex::Real**
warpx_getGfieldCP (
int lev,
int *return_size,
int *ncomps,
int **ngrowvect,
int **shapes);
237 amrex::Real**
warpx_getGfieldFP (
int lev,
int *return_size,
int *ncomps,
int **ngrowvect,
int **shapes);
DtType
Definition: WarpXDtType.H:11
int warpx_ParticleReal_size()
Definition: WarpXWrappers.cpp:112
int * warpx_getF_nodal_flag()
Definition: WarpXWrappers.cpp:327
amrex::Real warpx_sumParticleCharge(const char *char_species_name, const bool local)
Definition: WarpXWrappers.cpp:563
amrex::Real ** warpx_getEfieldCP_PML(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
amrex::ParticleReal ** warpx_getParticleBoundaryBufferStructs(const char *species_name, int boundary, int lev, int *num_tiles, int **particles_per_tile)
Definition: WarpXWrappers.cpp:626
void warpx_CheckGriddingForRZSpectral()
Definition: WarpXWrappers.cpp:224
void warpx_ReadBCParams()
Definition: WarpXWrappers.cpp:219
amrex::Real warpx_getdt(int lev)
Definition: WarpXWrappers.cpp:743
void warpx_set_callback_py(const char *char_callback_name, WARPX_CALLBACK_PY_FUNC_0 callback)
Definition: WarpXWrappers.cpp:179
int * warpx_getGfieldFPLoVects_PML(int lev, int *return_size, int **ngrowvect)
int * warpx_getBx_nodal_flag()
Definition: WarpXWrappers.cpp:316
amrex::Real ** warpx_getChargeDensityCP(int lev, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_getJy_nodal_flag()
Definition: WarpXWrappers.cpp:320
amrex::Real ** warpx_getBfield(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
void warpx_PushParticlesandDepose(amrex::Real cur_time)
Definition: WarpXWrappers.cpp:722
int * warpx_getBfieldLoVects(int lev, int direction, int *return_size, int **ngrowvect)
int * warpx_getJx_nodal_flag()
Definition: WarpXWrappers.cpp:319
int * warpx_get_face_areas_z_nodal_flag()
Definition: WarpXWrappers.cpp:334
void warpx_ConvertLabParamsToBoost()
Definition: WarpXWrappers.cpp:214
int * warpx_getRho_nodal_flag()
Definition: WarpXWrappers.cpp:325
int * warpx_get_edge_lengths_x_nodal_flag()
Definition: WarpXWrappers.cpp:329
void amrex_finalize(int finalize_mpi)
Definition: WarpXWrappers.cpp:161
int warpx_getistep(int lev)
Definition: WarpXWrappers.cpp:727
int * warpx_getAz_nodal_flag()
Definition: WarpXWrappers.cpp:324
amrex::Real ** warpx_getFfieldFP_PML(int lev, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
amrex::Real ** warpx_getVectorPotentialFP(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int warpx_Real_size()
Definition: WarpXWrappers.cpp:107
void warpx_ComputeDt()
Definition: WarpXWrappers.cpp:682
amrex::Real ** warpx_getBfieldFP(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_get_edge_lengths_z_nodal_flag()
Definition: WarpXWrappers.cpp:331
int * warpx_getBfieldFPLoVects(int lev, int direction, int *return_size, int **ngrowvect)
int * warpx_getFfieldCPLoVects(int lev, int *return_size, int **ngrowvect)
void warpx_FillBoundaryE()
Definition: WarpXWrappers.cpp:699
int * warpx_getFaceAreasLoVects(int lev, int direction, int *return_size, int **ngrowvect)
void warpx_MoveWindow(int step, bool move_j)
Definition: WarpXWrappers.cpp:686
int * warpx_getEx_nodal_flag()
int * warpx_getCurrentDensityLoVects(int lev, int direction, int *return_size, int **ngrowvect)
int * warpx_getFfieldFPLoVects_PML(int lev, int *return_size, int **ngrowvect)
int warpx_getParticleCompIndex(const char *char_species_name, const char *char_comp_name)
Definition: WarpXWrappers.cpp:536
int * warpx_getCurrentDensityFPLoVects(int lev, int direction, int *return_size, int **ngrowvect)
amrex::Real ** warpx_getCurrentDensityCP(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_getBy_nodal_flag()
Definition: WarpXWrappers.cpp:317
void warpx_SyncRho()
Definition: WarpXWrappers.cpp:707
amrex::Real ** warpx_getFaceAreas(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
amrex::Real ** warpx_getCurrentDensityCP_PML(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
void warpx_evolve(int numsteps)
Definition: WarpXWrappers.cpp:192
void warpx_clearParticleBoundaryBuffer()
Definition: WarpXWrappers.cpp:647
amrex::Real ** warpx_getFfieldCP_PML(int lev, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
amrex::Real ** warpx_getEfieldCP(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_getEfieldFPLoVects_PML(int lev, int direction, int *return_size, int **ngrowvect)
int * warpx_getChargeDensityCPLoVects(int lev, int *return_size, int **ngrowvect)
amrex::ParticleReal ** warpx_getParticleStructs(const char *char_species_name, int lev, int *num_tiles, int **particles_per_tile)
Definition: WarpXWrappers.cpp:455
amrex::Real ** warpx_getCurrentDensityFP_PML(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_getPhiFPLoVects(int lev, int *return_size, int **ngrowvect)
void warpx_convert_id_to_long(amrex::Long *ids, const WarpXParticleContainer::ParticleType *pstructs, int size)
Definition: WarpXWrappers.cpp:500
void warpx_setPotentialEB(const char *char_potential)
Definition: WarpXWrappers.cpp:770
int * warpx_getChargeDensityFPLoVects(int lev, int *return_size, int **ngrowvect)
int warpx_nSpecies()
Definition: WarpXWrappers.cpp:117
int * warpx_getGfieldCPLoVects_PML(int lev, int *return_size, int **ngrowvect)
int * warpx_getF_pml_nodal_flag()
Definition: WarpXWrappers.cpp:441
amrex::Real warpx_stopTime()
Definition: WarpXWrappers.cpp:752
int * warpx_getAy_nodal_flag()
Definition: WarpXWrappers.cpp:323
int * warpx_getCurrentDensityFPLoVects_PML(int lev, int direction, int *return_size, int **ngrowvect)
void(* WARPX_CALLBACK_PY_FUNC_0)()
Definition: WarpXWrappers.H:49
void warpx_sett_new(int lev, amrex::Real time)
Definition: WarpXWrappers.cpp:739
amrex::ParticleReal ** warpx_getParticleArrays(const char *char_species_name, const char *char_comp_name, int lev, int *num_tiles, int **particles_per_tile)
Definition: WarpXWrappers.cpp:476
int * warpx_getBfieldCPLoVects(int lev, int direction, int *return_size, int **ngrowvect)
int * warpx_get_face_areas_x_nodal_flag()
Definition: WarpXWrappers.cpp:332
int * warpx_get_face_areas_y_nodal_flag()
Definition: WarpXWrappers.cpp:333
amrex::Real ** warpx_getGfieldFP_PML(int lev, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
amrex::Real ** warpx_getBfieldCP_PML(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_getFfieldCPLoVects_PML(int lev, int *return_size, int **ngrowvect)
int warpx_finestLevel()
Definition: WarpXWrappers.cpp:757
int warpx_SpaceDim()
Definition: WarpXWrappers.cpp:146
int * warpx_getEfieldLoVects(int lev, int direction, int *return_size, int **ngrowvect)
int * warpx_getJz_nodal_flag()
Definition: WarpXWrappers.cpp:321
int warpx_galerkin_interpolation()
Definition: WarpXWrappers.cpp:128
void amrex_init(int argc, char *argv[])
Definition: WarpXWrappers.cpp:151
amrex::Real ** warpx_getGfieldFP(int lev, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_getGfieldCPLoVects(int lev, int *return_size, int **ngrowvect)
void warpx_EvolveE(amrex::Real dt)
Definition: WarpXWrappers.cpp:691
amrex::Real ** warpx_getBfieldCP(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
void warpx_depositChargeDensity(const char *species_name, int lev)
This function is used to deposit a given species' charge density in the rho_fp multifab which can the...
Definition: WarpXWrappers.cpp:652
amrex::Real ** warpx_getFfieldFP(int lev, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
void warpx_clear_callback_py(const char *char_callback_name)
Definition: WarpXWrappers.cpp:186
amrex::Real ** warpx_getCurrentDensityFP_Ampere(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_getBz_nodal_flag()
Definition: WarpXWrappers.cpp:318
amrex::Real ** warpx_getCurrentDensityFP(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
long warpx_getNumParticles(const char *char_species_name, const bool local)
Definition: WarpXWrappers.cpp:248
int * warpx_getBfieldFPLoVects_PML(int lev, int direction, int *return_size, int **ngrowvect)
int warpx_nCompsSpecies(const char *char_species_name)
Definition: WarpXWrappers.cpp:138
void warpx_convert_cpu_to_int(int *cpus, const WarpXParticleContainer::ParticleType *pstructs, int size)
Definition: WarpXWrappers.cpp:518
bool warpx_use_fdtd_nci_corr()
Definition: WarpXWrappers.cpp:123
int * warpx_getEfieldFPLoVects(int lev, int direction, int *return_size, int **ngrowvect)
void warpx_addRealComp(const char *char_species_name, const char *char_comp_name, bool comm)
Definition: WarpXWrappers.cpp:550
amrex::Real ** warpx_getEdgeLengths(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_getVectorPotentialFPLoVects(int lev, int direction, int *return_size, int **ngrowvect)
void warpx_finalize()
Definition: WarpXWrappers.cpp:174
void mypc_Redistribute()
Definition: WarpXWrappers.cpp:776
int * warpx_getEz_nodal_flag()
Definition: WarpXWrappers.cpp:315
amrex::Real ** warpx_getEfieldFP_PML(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_getEfieldCPLoVects_PML(int lev, int direction, int *return_size, int **ngrowvect)
amrex::Real ** warpx_getCurrentDensity(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_getG_nodal_flag()
Definition: WarpXWrappers.cpp:328
int * warpx_getCurrentDensityCPLoVects_PML(int lev, int direction, int *return_size, int **ngrowvect)
int warpx_getMyProc()
Definition: WarpXWrappers.cpp:762
int warpx_maxStep()
Definition: WarpXWrappers.cpp:748
amrex::Real ** warpx_getEfieldFP(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
void warpx_addNParticles(const char *char_species_name, int lenx, amrex::ParticleReal const *x, amrex::ParticleReal const *y, amrex::ParticleReal const *z, amrex::ParticleReal const *vx, amrex::ParticleReal const *vy, amrex::ParticleReal const *vz, const int nattr_real, amrex::ParticleReal const *attr_real, const int nattr_int, int const *attr_int, int uniqueparticles)
Definition: WarpXWrappers.cpp:198
amrex::Real ** warpx_getChargeDensityFP(int lev, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
void warpx_UpdateAuxilaryData()
Definition: WarpXWrappers.cpp:718
int * warpx_getEy_nodal_flag()
Definition: WarpXWrappers.cpp:314
void warpx_EvolveB(amrex::Real dt, DtType a_dt_type)
Definition: WarpXWrappers.cpp:695
int * warpx_getGfieldFPLoVects(int lev, int *return_size, int **ngrowvect)
int * warpx_getG_pml_nodal_flag()
Definition: WarpXWrappers.cpp:448
int warpx_nComps()
Definition: WarpXWrappers.cpp:133
int warpx_getNProcs()
Definition: WarpXWrappers.cpp:766
int ** warpx_getParticleBoundaryBufferScrapedSteps(const char *species_name, int boundary, int lev, int *num_tiles, int **particles_per_tile)
Definition: WarpXWrappers.cpp:578
amrex::Real warpx_getProbLo(int dir)
Definition: WarpXWrappers.cpp:229
int * warpx_getEdgeLengthsLoVects(int lev, int direction, int *return_size, int **ngrowvect)
void warpx_FillBoundaryB()
Definition: WarpXWrappers.cpp:703
amrex::Real warpx_getProbHi(int dir)
Definition: WarpXWrappers.cpp:236
amrex::Real ** warpx_getEfield(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
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:711
amrex::Real ** warpx_getGfieldCP_PML(int lev, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
amrex::Real warpx_gett_new(int lev)
Definition: WarpXWrappers.cpp:735
int * warpx_getBfieldCPLoVects_PML(int lev, int direction, int *return_size, int **ngrowvect)
void amrex_init_with_inited_mpi(int argc, char *argv[], MPI_Comm mpicomm)
Definition: WarpXWrappers.cpp:156
void warpx_setistep(int lev, int ii)
Definition: WarpXWrappers.cpp:731
amrex::Real ** warpx_getPhiFP(int lev, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
amrex::Real warpx_getCellSize(int dir, int lev)
Definition: WarpXWrappers.cpp:243
amrex::Real ** warpx_getBfieldFP_PML(int lev, int direction, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_getAx_nodal_flag()
Definition: WarpXWrappers.cpp:322
amrex::Real ** warpx_getGfieldCP(int lev, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_get_edge_lengths_y_nodal_flag()
Definition: WarpXWrappers.cpp:330
int * warpx_getFfieldFPLoVects(int lev, int *return_size, int **ngrowvect)
int * warpx_getCurrentDensityCPLoVects(int lev, int direction, int *return_size, int **ngrowvect)
int warpx_getParticleBoundaryBufferSize(const char *species_name, int boundary, bool local)
Definition: WarpXWrappers.cpp:571
void warpx_init()
Definition: WarpXWrappers.cpp:166
amrex::Real ** warpx_getFfieldCP(int lev, int *return_size, int *ncomps, int **ngrowvect, int **shapes)
int * warpx_getPhi_nodal_flag()
Definition: WarpXWrappers.cpp:326
amrex::ParticleReal ** warpx_getParticleBoundaryBuffer(const char *species_name, int boundary, int lev, int *num_tiles, int **particles_per_tile, const char *comp_name)
Definition: WarpXWrappers.cpp:602
int * warpx_getEfieldCPLoVects(int lev, int direction, int *return_size, int **ngrowvect)
T_ParticleType ParticleType
direction
Definition: AnyFFT.H:75
ii
Definition: check_interp_points_and_weights.py:148
int size
Definition: plot_parallel.py:246
float dt
Definition: stencil.py:440