Canoe
Comprehensive Atmosphere N' Ocean Engine
Decomposition Class Reference

#include <decomposition.hpp>

Public Member Functions

 Decomposition (MeshBlock *pmb)
 
 ~Decomposition ()
 
void FindNeighbors ()
 
int CreateMPITag (int lid, int bufid, int phy)
 
void RecvFromTop (AthenaArray< Real > &psf, int kl, int ku, int jl, int ju)
 
void SendToBottom (AthenaArray< Real > const &psf, int kl, int ku, int jl, int ju)
 
void SyncNewVariables (AthenaArray< Real > const &w, int kl, int ku, int jl, int ju)
 
void WaitToFinishSync (AthenaArray< Real > &w, int kl, int ku, int jl, int ju)
 
void ApplyHydroBoundary (AthenaArray< Real > &w, AthenaArray< Real > &psf, int kl, int ku, int jl, int ju)
 
void RecvBuffer (AthenaArray< Real > &psf, int kl, int ku, int jl, int ju, int il, int iu, NeighborBlock nb)
 
void SendBuffer (AthenaArray< Real > const &psf, int kl, int ku, int jl, int ju)
 
void PopulateBotEntropy (AthenaArray< Real > const &w, int kl, int ku, int jl, int ju)
 
void WaitToFinishSend ()
 
void ChangeToPerturbation (AthenaArray< Real > &w, int kl, int ku, int jl, int ju)
 
void RestoreFromPerturbation (AthenaArray< Real > &w, AthenaArray< Real > &wl, AthenaArray< Real > &wr, int k, int j, int il, int iu)
 
void ChangeToBuoyancy (AthenaArray< Real > &w, int kl, int ku, int jl, int ju)
 
void RestoreFromBuoyancy (AthenaArray< Real > &w, AthenaArray< Real > &wl, AthenaArray< Real > &wr, int k, int j, int il, int iu)
 
void ChangeToEntropy (AthenaArray< Real > &w, int kl, int ku, int jl, int ju)
 
void RestoreFromEntropy (AthenaArray< Real > &w, AthenaArray< Real > &wl, AthenaArray< Real > &wr, int k, int j, int il, int iu)
 

Public Attributes

bool has_top_neighbor
 
bool has_bot_neighbor
 
NeighborBlock tblock
 
NeighborBlock bblock
 

Private Attributes

MeshBlock * pmy_block_
 
AthenaArray< Real > psf_
 
AthenaArray< Real > psv_
 
AthenaArray< Real > pres_
 
AthenaArray< Real > dens_
 
Real * buffer_
 
Real * send_buffer_
 
Real * wsend_top_
 
Real * wrecv_top_
 
Real * wsend_bot_
 
Real * wrecv_bot_
 
int * brank_
 
int * color_
 
AthenaArray< Real > entropy_
 
AthenaArray< Real > gamma_
 

Detailed Description

Definition at line 20 of file decomposition.hpp.

Constructor & Destructor Documentation

◆ Decomposition()

Decomposition::Decomposition ( MeshBlock *  pmb)
explicit

Definition at line 25 of file decomposition.cpp.

◆ ~Decomposition()

Decomposition::~Decomposition ( )

Definition at line 50 of file decomposition.cpp.

Member Function Documentation

◆ FindNeighbors()

void Decomposition::FindNeighbors ( )

Definition at line 74 of file decomposition.cpp.

◆ CreateMPITag()

int Decomposition::CreateMPITag ( int  lid,
int  bufid,
int  phy 
)

Definition at line 64 of file decomposition.cpp.

◆ RecvFromTop()

void Decomposition::RecvFromTop ( AthenaArray< Real > &  psf,
int  kl,
int  ku,
int  jl,
int  ju 
)

Definition at line 110 of file decomposition.cpp.

◆ SendToBottom()

void Decomposition::SendToBottom ( AthenaArray< Real > const &  psf,
int  kl,
int  ku,
int  jl,
int  ju 
)

Definition at line 139 of file decomposition.cpp.

◆ SyncNewVariables()

void Decomposition::SyncNewVariables ( AthenaArray< Real > const &  w,
int  kl,
int  ku,
int  jl,
int  ju 
)

Definition at line 160 of file decomposition.cpp.

◆ WaitToFinishSync()

void Decomposition::WaitToFinishSync ( AthenaArray< Real > &  w,
int  kl,
int  ku,
int  jl,
int  ju 
)

Definition at line 228 of file decomposition.cpp.

◆ ApplyHydroBoundary()

void Decomposition::ApplyHydroBoundary ( AthenaArray< Real > &  w,
AthenaArray< Real > &  psf,
int  kl,
int  ku,
int  jl,
int  ju 
)

Definition at line 8 of file apply_boundary_condition.cpp.

◆ RecvBuffer()

void Decomposition::RecvBuffer ( AthenaArray< Real > &  psf,
int  kl,
int  ku,
int  jl,
int  ju,
int  il,
int  iu,
NeighborBlock  nb 
)

Definition at line 270 of file decomposition.cpp.

◆ SendBuffer()

void Decomposition::SendBuffer ( AthenaArray< Real > const &  psf,
int  kl,
int  ku,
int  jl,
int  ju 
)

Definition at line 298 of file decomposition.cpp.

◆ PopulateBotEntropy()

void Decomposition::PopulateBotEntropy ( AthenaArray< Real > const &  w,
int  kl,
int  ku,
int  jl,
int  ju 
)

Definition at line 341 of file decomposition.cpp.

◆ WaitToFinishSend()

void Decomposition::WaitToFinishSend ( )

Definition at line 217 of file decomposition.cpp.

◆ ChangeToPerturbation()

void Decomposition::ChangeToPerturbation ( AthenaArray< Real > &  w,
int  kl,
int  ku,
int  jl,
int  ju 
)

Definition at line 39 of file change_to_perturbation.cpp.

◆ RestoreFromPerturbation()

void Decomposition::RestoreFromPerturbation ( AthenaArray< Real > &  w,
AthenaArray< Real > &  wl,
AthenaArray< Real > &  wr,
int  k,
int  j,
int  il,
int  iu 
)

Definition at line 159 of file change_to_perturbation.cpp.

◆ ChangeToBuoyancy()

void Decomposition::ChangeToBuoyancy ( AthenaArray< Real > &  w,
int  kl,
int  ku,
int  jl,
int  ju 
)

Definition at line 31 of file change_to_buoyancy.cpp.

◆ RestoreFromBuoyancy()

void Decomposition::RestoreFromBuoyancy ( AthenaArray< Real > &  w,
AthenaArray< Real > &  wl,
AthenaArray< Real > &  wr,
int  k,
int  j,
int  il,
int  iu 
)

Definition at line 146 of file change_to_buoyancy.cpp.

◆ ChangeToEntropy()

void Decomposition::ChangeToEntropy ( AthenaArray< Real > &  w,
int  kl,
int  ku,
int  jl,
int  ju 
)

Definition at line 39 of file change_to_entropy.cpp.

◆ RestoreFromEntropy()

void Decomposition::RestoreFromEntropy ( AthenaArray< Real > &  w,
AthenaArray< Real > &  wl,
AthenaArray< Real > &  wr,
int  k,
int  j,
int  il,
int  iu 
)

Definition at line 138 of file change_to_entropy.cpp.

Member Data Documentation

◆ has_top_neighbor

bool Decomposition::has_top_neighbor

Definition at line 23 of file decomposition.hpp.

◆ has_bot_neighbor

bool Decomposition::has_bot_neighbor

Definition at line 23 of file decomposition.hpp.

◆ tblock

NeighborBlock Decomposition::tblock

Definition at line 24 of file decomposition.hpp.

◆ bblock

NeighborBlock Decomposition::bblock

Definition at line 24 of file decomposition.hpp.

◆ pmy_block_

MeshBlock* Decomposition::pmy_block_
private

Definition at line 64 of file decomposition.hpp.

◆ psf_

AthenaArray<Real> Decomposition::psf_
private

Definition at line 67 of file decomposition.hpp.

◆ psv_

AthenaArray<Real> Decomposition::psv_
private

Definition at line 67 of file decomposition.hpp.

◆ pres_

AthenaArray<Real> Decomposition::pres_
private

Definition at line 68 of file decomposition.hpp.

◆ dens_

AthenaArray<Real> Decomposition::dens_
private

Definition at line 68 of file decomposition.hpp.

◆ buffer_

Real* Decomposition::buffer_
private

Definition at line 70 of file decomposition.hpp.

◆ send_buffer_

Real * Decomposition::send_buffer_
private

Definition at line 70 of file decomposition.hpp.

◆ wsend_top_

Real* Decomposition::wsend_top_
private

Definition at line 71 of file decomposition.hpp.

◆ wrecv_top_

Real * Decomposition::wrecv_top_
private

Definition at line 71 of file decomposition.hpp.

◆ wsend_bot_

Real* Decomposition::wsend_bot_
private

Definition at line 72 of file decomposition.hpp.

◆ wrecv_bot_

Real * Decomposition::wrecv_bot_
private

Definition at line 72 of file decomposition.hpp.

◆ brank_

int* Decomposition::brank_
private

Definition at line 73 of file decomposition.hpp.

◆ color_

int * Decomposition::color_
private

Definition at line 73 of file decomposition.hpp.

◆ entropy_

AthenaArray<Real> Decomposition::entropy_
private

Definition at line 75 of file decomposition.hpp.

◆ gamma_

AthenaArray<Real> Decomposition::gamma_
private

Definition at line 76 of file decomposition.hpp.


The documentation for this class was generated from the following files: