ARTEMIS
London.H
Go to the documentation of this file.
1 /* Copyright 2020 Revathi Jambunathan
2  *
3  * This file is part of WarpX.
4  *
5  * License: BSD-3-Clause-LBNL
6  */
7 
8 
9 #ifndef LONDON_H
10 #define LONDON_H
11 
12 #include <AMReX_RealVect.H>
13 #include <AMReX_REAL.H>
14 #include <AMReX_GpuQualifiers.H>
15 #include <AMReX_Geometry.H>
16 #include <AMReX_Array4.H>
17 #include <AMReX_Array.H>
18 #include <AMReX_MultiFab.H>
19 #include <AMReX_Parser.H>
20 
21 
22 class London {
23 
24 public:
25  //Constructor
26  London ();
27 
28  void ReadParameters ();
29  void InitData ();
30  void EvolveLondonJ (amrex::Real dt);
31 
33  amrex::ParserExecutor<3> const& sc_parser, const int lev);
34 
35  amrex::Real m_penetration_depth;
37  std::unique_ptr<amrex::Parser> m_superconductor_parser;
38  std::unique_ptr<amrex::MultiFab> m_superconductor_mf;
39 
46 
47 };
48 
49 
50 #endif
Definition: London.H:22
amrex::GpuArray< int, 3 > jx_IndexType
Definition: London.H:41
amrex::GpuArray< int, 3 > jz_IndexType
Definition: London.H:45
London()
Definition: London.cpp:22
std::string m_str_superconductor_function
Definition: London.H:36
amrex::GpuArray< int, 3 > jy_IndexType
Definition: London.H:43
amrex::Real m_penetration_depth
Definition: London.H:35
std::unique_ptr< amrex::MultiFab > m_superconductor_mf
Definition: London.H:38
void InitData()
Definition: London.cpp:40
void InitializeSuperconductorMultiFabUsingParser(amrex::MultiFab *sc_mf, amrex::ParserExecutor< 3 > const &sc_parser, const int lev)
Definition: London.cpp:152
std::unique_ptr< amrex::Parser > m_superconductor_parser
Definition: London.H:37
void ReadParameters()
Definition: London.cpp:29
void EvolveLondonJ(amrex::Real dt)
Definition: London.cpp:83
int dt
Definition: stencil.py:440