Canoe
Comprehensive Atmosphere N' Ocean Engine
cubed_sphere.hpp File Reference
#include "athena.hpp"
#include "coordinates/coordinates.hpp"

Go to the source code of this file.

Classes

class  CubedSphereLR
 

Functions

int FindBlockID (LogicalLocation const &loc)
 
void TransformOxForCubedSphere (int *ox2, int *ox3, int *tox2, int *tox3, LogicalLocation const &loc)
 
void PackDataCubedSphere (const AthenaArray< Real > &src, Real *buf, int sn, int en, int si, int ei, int sj, int ej, int sk, int ek, int &offset, int ox1, int ox2, int ox3, LogicalLocation const &loc)
 
void ProjectLocalCartesianAffine (const AthenaArray< Real > &src, AthenaArray< Real > &tgt, Real affine_angle, int sn, int en, int si, int ei, int sj, int ej, int sk, int ek, int Dir)
 
void DeProjectLocalCartesianAffine (AthenaArray< Real > &flux, Real affine_angle, int sn, int en, int si, int ei, int sj, int ej, int sk, int ek, int Dir)
 
Real CubedSphereMeshGeneratorX2 (Real x, LogicalLocation const &loc)
 
Real CubedSphereMeshGeneratorX3 (Real x, LogicalLocation const &loc)
 
void GetLatLon (Real *lat, Real *lon, Coordinates *pcoord, int k, int j, int i)
 
void GetLatLonFace2 (Real *lat, Real *lon, Coordinates *pcoord, int k, int j, int i)
 
void GetLatLonFace3 (Real *lat, Real *lon, Coordinates *pcoord, int k, int j, int i)
 
void GetUV (Real *U, Real *V, Coordinates *pcoord, Real V2, Real V3, int k, int j, int i)
 
void GetVyVz (Real *V2, Real *V3, Coordinates *pcoord, Real U, Real V, int k, int j, int i)
 
void VecTransABPFromRLL (Real X, Real Y, int blockID, Real U, Real V, Real *V2, Real *V3)
 
void VecTransRLLFromABP (Real X, Real Y, int blockID, Real V2, Real V3, Real *U, Real *V)
 
void RLLFromXYP (Real dX, Real dY, int nP, Real &lon, Real &lat)
 
void XYPFromRLL (Real lon, Real lat, Real &dX, Real &dY, int &nP)
 

Function Documentation

◆ FindBlockID()

int FindBlockID ( LogicalLocation const &  loc)

◆ TransformOxForCubedSphere()

void TransformOxForCubedSphere ( int *  ox2,
int *  ox3,
int *  tox2,
int *  tox3,
LogicalLocation const &  loc 
)

◆ PackDataCubedSphere()

void PackDataCubedSphere ( const AthenaArray< Real > &  src,
Real *  buf,
int  sn,
int  en,
int  si,
int  ei,
int  sj,
int  ej,
int  sk,
int  ek,
int &  offset,
int  ox1,
int  ox2,
int  ox3,
LogicalLocation const &  loc 
)

◆ ProjectLocalCartesianAffine()

void ProjectLocalCartesianAffine ( const AthenaArray< Real > &  src,
AthenaArray< Real > &  tgt,
Real  affine_angle,
int  sn,
int  en,
int  si,
int  ei,
int  sj,
int  ej,
int  sk,
int  ek,
int  Dir 
)

◆ DeProjectLocalCartesianAffine()

void DeProjectLocalCartesianAffine ( AthenaArray< Real > &  flux,
Real  affine_angle,
int  sn,
int  en,
int  si,
int  ei,
int  sj,
int  ej,
int  sk,
int  ek,
int  Dir 
)

◆ CubedSphereMeshGeneratorX2()

Real CubedSphereMeshGeneratorX2 ( Real  x,
LogicalLocation const &  loc 
)

◆ CubedSphereMeshGeneratorX3()

Real CubedSphereMeshGeneratorX3 ( Real  x,
LogicalLocation const &  loc 
)

◆ GetLatLon()

void GetLatLon ( Real *  lat,
Real *  lon,
Coordinates pcoord,
int  k,
int  j,
int  i 
)

◆ GetLatLonFace2()

void GetLatLonFace2 ( Real *  lat,
Real *  lon,
Coordinates pcoord,
int  k,
int  j,
int  i 
)

◆ GetLatLonFace3()

void GetLatLonFace3 ( Real *  lat,
Real *  lon,
Coordinates pcoord,
int  k,
int  j,
int  i 
)

◆ GetUV()

void GetUV ( Real *  U,
Real *  V,
Coordinates pcoord,
Real  V2,
Real  V3,
int  k,
int  j,
int  i 
)

◆ GetVyVz()

void GetVyVz ( Real *  V2,
Real *  V3,
Coordinates pcoord,
Real  U,
Real  V,
int  k,
int  j,
int  i 
)

◆ VecTransABPFromRLL()

void VecTransABPFromRLL ( Real  X,
Real  Y,
int  blockID,
Real  U,
Real  V,
Real *  V2,
Real *  V3 
)

◆ VecTransRLLFromABP()

void VecTransRLLFromABP ( Real  X,
Real  Y,
int  blockID,
Real  V2,
Real  V3,
Real *  U,
Real *  V 
)

◆ RLLFromXYP()

void RLLFromXYP ( Real  dX,
Real  dY,
int  nP,
Real &  lon,
Real &  lat 
)

◆ XYPFromRLL()

void XYPFromRLL ( Real  lon,
Real  lat,
Real &  dX,
Real &  dY,
int &  nP 
)