BG_Flood  0.1
Documentation (Work-in-progress)
Spherical.cu File Reference
#include "Spherical.h"
Include dependency graph for Spherical.cu:

Functions

template<class T >
__host__ __device__ T calcCM (T Radius, T delta, T yo, int iy)
 
template __host__ __device__ double calcCM (double Radius, double delta, double yo, int iy)
 
template __host__ __device__ float calcCM (float Radius, float delta, float yo, int iy)
 
template<class T >
__host__ __device__ T calcFM (T Radius, T delta, T yo, T iy)
 
template __host__ __device__ double calcFM (double Radius, double delta, double yo, double iy)
 
template __host__ __device__ float calcFM (float Radius, float delta, float yo, float iy)
 
template<class T >
__host__ __device__ T haversin (T Radius, T lon1, T lat1, T lon2, T lat2)
 
template<class T >
__host__ __device__ T spharea (T Radius, T lon, T lat, T dx)
 
template __host__ __device__ double spharea (double Radius, double lon, double lat, double dx)
 
template __host__ __device__ float spharea (float Radius, float lon, float lat, float dx)
 

Function Documentation

◆ calcCM() [1/3]

template __host__ __device__ double calcCM ( double  Radius,
double  delta,
double  yo,
int  iy 
)

◆ calcCM() [2/3]

template __host__ __device__ float calcCM ( float  Radius,
float  delta,
float  yo,
int  iy 
)

◆ calcCM() [3/3]

template<class T >
T calcCM ( Radius,
delta,
yo,
int  iy 
)

Scale factor for y face length (x face lengh scale is always 1 in spherical model assuming that lat long are entered)

◆ calcFM() [1/3]

template __host__ __device__ double calcFM ( double  Radius,
double  delta,
double  yo,
double  iy 
)

◆ calcFM() [2/3]

template __host__ __device__ float calcFM ( float  Radius,
float  delta,
float  yo,
float  iy 
)

◆ calcFM() [3/3]

template<class T >
__host__ __device__ T calcFM ( Radius,
delta,
yo,
iy 
)

◆ haversin()

template<class T >
T haversin ( Radius,
lon1,
lat1,
lon2,
lat2 
)

Classic haversin function The function is too slow to use directly in BG_flood engine but is more usable (i.e. naive) for model setup

◆ spharea() [1/3]

template __host__ __device__ double spharea ( double  Radius,
double  lon,
double  lat,
double  dx 
)

◆ spharea() [2/3]

template __host__ __device__ float spharea ( float  Radius,
float  lon,
float  lat,
float  dx 
)

◆ spharea() [3/3]

template<class T >
__host__ __device__ T spharea ( Radius,
lon,
lat,
dx 
)