WarpX
Toggle main menu visibility
Loading...
Searching...
No Matches
Source
FieldSolver
ElectrostaticSolvers
LabFrameExplicitES.H
Go to the documentation of this file.
1
/* Copyright 2024 The WarpX Community
2
*
3
* This file is part of WarpX.
4
*
5
* Authors: Roelof Groenewald, Arianna Formenti, Revathi Jambunathan
6
*
7
* License: BSD-3-Clause-LBNL
8
*/
9
#ifndef WARPX_LABFRAMEEXPLICITES_H_
10
#define WARPX_LABFRAMEEXPLICITES_H_
11
12
#include "
ElectrostaticSolver.H
"
13
14
class
LabFrameExplicitES
final :
public
ElectrostaticSolver
15
{
16
public
:
17
18
explicit
LabFrameExplicitES
(
int
nlevs_max) :
ElectrostaticSolver
(nlevs_max) {
19
ReadParameters
();
20
}
21
22
void
InitData
()
override
;
23
24
void
ComputeSpaceChargeField
(
25
ablastr::fields::MultiFabRegister
& fields,
26
MultiParticleContainer
& mpc,
27
MultiFluidContainer
* mfl,
28
int
max_level)
override
;
29
30
void
computePhiTriDiagonal
(
31
const
ablastr::fields::MultiLevelScalarField
& rho,
32
const
ablastr::fields::MultiLevelScalarField
& phi
33
);
34
35
void
computePhiTriDiagonal_periodic
(
36
const
ablastr::fields::MultiLevelScalarField
& rho,
37
const
ablastr::fields::MultiLevelScalarField
& phi
38
);
39
40
};
41
42
#endif
// WARPX_LABFRAMEEXPLICITES_H_
ElectrostaticSolver.H
ElectrostaticSolver::ElectrostaticSolver
ElectrostaticSolver()=default
ElectrostaticSolver::ReadParameters
void ReadParameters()
Definition
ElectrostaticSolver.cpp:29
LabFrameExplicitES::computePhiTriDiagonal_periodic
void computePhiTriDiagonal_periodic(const ablastr::fields::MultiLevelScalarField &rho, const ablastr::fields::MultiLevelScalarField &phi)
Definition
LabFrameExplicitES.cpp:241
LabFrameExplicitES::LabFrameExplicitES
LabFrameExplicitES(int nlevs_max)
Definition
LabFrameExplicitES.H:18
LabFrameExplicitES::InitData
void InitData() override
Definition
LabFrameExplicitES.cpp:19
LabFrameExplicitES::ComputeSpaceChargeField
void ComputeSpaceChargeField(ablastr::fields::MultiFabRegister &fields, MultiParticleContainer &mpc, MultiFluidContainer *mfl, int max_level) override
Computes charge density, rho, and solves Poisson's equation to obtain the associated electrostatic po...
Definition
LabFrameExplicitES.cpp:24
LabFrameExplicitES::computePhiTriDiagonal
void computePhiTriDiagonal(const ablastr::fields::MultiLevelScalarField &rho, const ablastr::fields::MultiLevelScalarField &phi)
Definition
LabFrameExplicitES.cpp:99
MultiFluidContainer
Definition
MultiFluidContainer.H:36
MultiParticleContainer
Definition
MultiParticleContainer.H:69
ablastr::fields::MultiLevelScalarField
amrex::Vector< ScalarField > MultiLevelScalarField
Definition
MultiFabRegister.H:210
ablastr::fields::MultiFabRegister
Definition
MultiFabRegister.H:272
Generated by
1.17.0