flow 1.3.0
Kokkos cut-cell IBM incompressible Navier-Stokes solver + pnm pore extraction
Loading...
Searching...
No Matches
test_vof_cutcell_mpi.cpp File Reference
#include <mpi.h>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <Kokkos_Core.hpp>
#include <vector>
#include "flow_ibm.hpp"
#include "peclet/core/common/types.hpp"
#include "peclet/core/decomp/block_decomposer.hpp"

Go to the source code of this file.

Functions

static double sdfAt (double x, double y, double z)
 
static double colourAt (int, int, int z)
 
template<class Fn >
static std::vector< double > blockOf (Fn f, int ox, int oy, int oz, int lnx, int lny, int lnz)
 
static std::vector< double > sliceOf (const std::vector< double > &g, int ox, int oy, int oz, int lnx, int lny, int lnz)
 
static std::vector< double > gatherGlobal (const std::vector< double > &local, int ox, int oy, int oz, int lnx, int lny, int lnz, int rank, int size)
 
static double maxAbsDiff (const std::vector< double > &a, const std::vector< double > &b)
 
static double sumOf (const std::vector< double > &a)
 
int main (int argc, char **argv)
 

Variables

static constexpr int NX = 16
 
static constexpr int NY = 16
 
static constexpr int NZ = 32
 
static constexpr std::size_t GCELLS = (std::size_t)NX * NY * NZ
 

Function Documentation

◆ sdfAt()

static double sdfAt ( double  x,
double  y,
double  z 
)
static

Definition at line 50 of file test_vof_cutcell_mpi.cpp.

References NX, NY, and NZ.

Referenced by main().

◆ colourAt()

static double colourAt ( int  ,
int  ,
int  z 
)
static

Definition at line 65 of file test_vof_cutcell_mpi.cpp.

References NZ.

Referenced by main().

◆ blockOf()

template<class Fn >
static std::vector< double > blockOf ( Fn  f,
int  ox,
int  oy,
int  oz,
int  lnx,
int  lny,
int  lnz 
)
static

Definition at line 70 of file test_vof_cutcell_mpi.cpp.

Referenced by main(), and sliceOf().

◆ sliceOf()

static std::vector< double > sliceOf ( const std::vector< double > &  g,
int  ox,
int  oy,
int  oz,
int  lnx,
int  lny,
int  lnz 
)
static

Definition at line 79 of file test_vof_cutcell_mpi.cpp.

References blockOf(), NX, and NY.

Referenced by main().

◆ gatherGlobal()

static std::vector< double > gatherGlobal ( const std::vector< double > &  local,
int  ox,
int  oy,
int  oz,
int  lnx,
int  lny,
int  lnz,
int  rank,
int  size 
)
static

Definition at line 88 of file test_vof_cutcell_mpi.cpp.

References GCELLS, NX, and NY.

Referenced by main().

◆ maxAbsDiff()

static double maxAbsDiff ( const std::vector< double > &  a,
const std::vector< double > &  b 
)
static

Definition at line 124 of file test_vof_cutcell_mpi.cpp.

Referenced by main().

◆ sumOf()

static double sumOf ( const std::vector< double > &  a)
static

Definition at line 137 of file test_vof_cutcell_mpi.cpp.

◆ main()

Variable Documentation

◆ NX

constexpr int NX = 16
staticconstexpr

Definition at line 46 of file test_vof_cutcell_mpi.cpp.

Referenced by gatherGlobal(), main(), sdfAt(), and sliceOf().

◆ NY

constexpr int NY = 16
static

Definition at line 46 of file test_vof_cutcell_mpi.cpp.

Referenced by gatherGlobal(), main(), sdfAt(), and sliceOf().

◆ NZ

constexpr int NZ = 32
static

Definition at line 46 of file test_vof_cutcell_mpi.cpp.

Referenced by colourAt(), main(), and sdfAt().

◆ GCELLS

constexpr std::size_t GCELLS = (std::size_t)NX * NY * NZ
staticconstexpr

Definition at line 47 of file test_vof_cutcell_mpi.cpp.

Referenced by gatherGlobal().