20 #ifndef GEOS_PHYSICSSOLVERS_WAVEPROPAGATION_ACOUSTICWAVEEQUATIONDG_HPP_ 
   21 #define GEOS_PHYSICSSOLVERS_WAVEPROPAGATION_ACOUSTICWAVEEQUATIONDG_HPP_ 
   36   using EXEC_POLICY = parallelDevicePolicy< 32 >;
 
   37   using ATOMIC_POLICY = AtomicPolicy< EXEC_POLICY >;
 
   40                           Group * 
const parent );
 
   52   static string catalogName() { 
return "AcousticDG"; }
 
   71                                       integer const computeGradient ) 
override;
 
   77                                        integer const computeGradient ) 
override;
 
   96   virtual real64 computeTimeStep( 
real64 & dtOut ) 
override;
 
  105     static constexpr 
char const * pressureNp1AtReceiversString() { 
return "pressureNp1AtReceivers"; }
 
  107     static constexpr 
char const * sourceElemString() { 
return "sourceElem"; }
 
  108     static constexpr 
char const * sourceRegionString() { 
return "sourceRegion"; }
 
  109     static constexpr 
char const * receiverElemString() { 
return "receiverElem"; }
 
  111   } waveEquationViewKeys;
 
  127   void computeUnknowns( 
real64 const & time_n,
 
  133   void synchronizeUnknowns( 
real64 const & time_n,
 
  139   void prepareNextTimestep( 
MeshLevel & mesh );
 
string getCatalogName() const override
 
virtual void initializePreSubGroups() override
Called by Initialize() prior to initializing sub-Groups.
 
virtual void registerDataOnMesh(Group &meshBodies) override final
Register wrappers that contain data on the mesh objects.
 
virtual void postInputInitialization() override final
 
virtual void initializePML() override
Initialize Perfectly Matched Layer (PML) information.
 
virtual real32 getGlobalMinWavespeed(MeshLevel &mesh, string_array const ®ionNames) override
Get the minimum wavespeed on a mesh.
 
virtual void initializePostInitialConditionsPreSubGroups() override final
Called by InitializePostInitialConditions() prior to initializing sub-Groups.
 
virtual void cleanup(real64 const time_n, integer const cycleNumber, integer const eventCounter, real64 const eventProgress, DomainPartition &domain) override
Overridden from ExecutableGroup. Used to write last seismogram if needed.
 
real64 explicitStepInternal(real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain)
 
Partition of the decomposed physical domain. It also manages the connexion information to its neighbo...
 
Class facilitating the representation of a multi-level discretization of a MeshBody.
 
localIndex size() const
Get the "size" of the group, which determines the number of elements in resizable wrappers.
 
virtual real64 explicitStepBackward(real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, integer const computeGradient) override
Perform backward explicit step.
 
virtual real64 explicitStepForward(real64 const &time_n, real64 const &dt, integer const cycleNumber, DomainPartition &domain, integer const computeGradient) override
Perform forward explicit step.
 
stdVector< string > string_array
A 1-dimensional array of geos::string types.
 
float real32
32-bit floating point type.
 
Array< T, 2, PERMUTATION > array2d
Alias for 2D array.
 
Array< T, 3, PERMUTATION > array3d
Alias for 3D array.
 
std::string string
String type.
 
double real64
64-bit floating point type.
 
GEOS_LOCALINDEX_TYPE localIndex
Local index type (for indexing objects within an MPI partition).
 
ArrayView< T, 2, USD > arrayView2d
Alias for 2D array view.
 
int integer
Signed integer type.
 
Array< T, 1 > array1d
Alias for 1D array.
 
LvArray::ArrayOfArrays< T, INDEX_TYPE, LvArray::ChaiBuffer > ArrayOfArrays
Array of variable-sized arrays. See LvArray::ArrayOfArrays for details.