PanPhaseField SDK
tensors.h File Reference

Core data structure of phase field mesh. More...

#include <vector>
#include <cmath>

Classes

class  VectorMesh< T >
 A vector-like data structure template which handles mesh grid of phase-field model, such as composition mesh, order parameter mesh and chemical potential mesh. There is a rich variety of built-in operations for vectorizing loop-based source code. More...
 
class  MatrixMesh< T >
 A matrix-like data structure template which handles mesh grid of phase-field model, such as composition mesh, order parameter mesh and chemical potential mesh. There is a rich variety of built-in operations for vectorizing loop-based source code. More...
 

Macros

#define USE_OMP_IN_TENSOR   true
 
#define VectorSize   (dimx_ * dimy_ * dimz_ * dimc_)
 
#define VectorIndex   (dimy_*dimx_*dimc_*z + dimx_*dimc_*y + dimc_*x + c)
 
#define MatrixSize   (dimx_ * dimy_ * dimz_ * dimc1_ * dimc2_)
 
#define MatrixIndex   (dimy_*dimx_*dimc1_*dimc2_*z + dimx_*dimc1_*dimc2_*y + dimc1_*dimc2_*x + dimc2_*c1 + c2)
 

Typedefs

typedef unsigned long long type_int
 int type used by mesh classes as index
 

Detailed Description

Core data structure of phase field mesh.

Author
CompuTherm, LLC https://www.computherm.com
Version
2023

Macro Definition Documentation

◆ USE_OMP_IN_TENSOR

#define USE_OMP_IN_TENSOR   true

Use OMP for mesh

◆ VectorSize

#define VectorSize   (dimx_ * dimy_ * dimz_ * dimc_)

Size of vector mesh

◆ VectorIndex

#define VectorIndex   (dimy_*dimx_*dimc_*z + dimx_*dimc_*y + dimc_*x + c)

Index of vector mesh

◆ MatrixSize

#define MatrixSize   (dimx_ * dimy_ * dimz_ * dimc1_ * dimc2_)

Size of matrix mesh

◆ MatrixIndex

#define MatrixIndex   (dimy_*dimx_*dimc1_*dimc2_*z + dimx_*dimc1_*dimc2_*y + dimc1_*dimc2_*x + dimc2_*c1 + c2)

Index of matrix mesh