STORMM Source Documentation
Loading...
Searching...
No Matches
stormm::structure::MeshRulers Class Reference

A collection of coordinate vectors describing each axis of a mesh. If the mesh axes track Cartesian axes, then all member variables but a_line_x, b_line_y, and c_line_z plus their overflow arrays will be zero. More...

#include <mesh_rulers.h>

Public Member Functions

 MeshRulers (const MeshParameters &mps=MeshParameters())
 The constructor takes a full collection of mesh parameters.
 
double3 getMeshOrigin () const
 Get the origin from the rulers themselves.
 
double3 getRealLocation (const double3 mesh_loc) const
 Get the location of a point in Cartesian space based on its coordinates on the mesh. This function is not intended for high-volume computations, merely to provide unit tests of the object's validity in a given context.
 
double3 getMeshLocation (const double3 real_loc) const
 Get the location of a point on the mesh based on its coordinates in Cartesian space. This function is not intended for high-volume computations, merely to provide unit tests of the object's validity in a given context.
 
const MeshRulerKit data (HybridTargetLevel tier=HybridTargetLevel::HOST) const
 Get a collection of all relevant pointers for memory on either the CPU host or the GPU device. The data will be read-only.
 
 MeshRulers (const MeshRulers &original)
 The copy and move constructors must be explicitly written to repair POINTER-kind Hybrid objects.
 
 MeshRulers (MeshRulers &&original)
 
MeshRulersoperator= (const MeshRulers &original)
 
MeshRulersoperator= (MeshRulers &&original)
 

Detailed Description

A collection of coordinate vectors describing each axis of a mesh. If the mesh axes track Cartesian axes, then all member variables but a_line_x, b_line_y, and c_line_z plus their overflow arrays will be zero.

Constructor & Destructor Documentation

◆ MeshRulers()

stormm::structure::MeshRulers::MeshRulers ( const MeshRulers & original)

The copy and move constructors must be explicitly written to repair POINTER-kind Hybrid objects.

Parameters
originalAn existing object to copy or move
otherAn existing object placed on the right hand side of an assignment statement

Member Function Documentation

◆ data()

const MeshRulerKit stormm::structure::MeshRulers::data ( HybridTargetLevel tier = HybridTargetLevel::HOST) const

Get a collection of all relevant pointers for memory on either the CPU host or the GPU device. The data will be read-only.

Parameters
tierSpecify wheter to obtain pointers on the CPU host or GPU device

◆ getMeshLocation()

double3 stormm::structure::MeshRulers::getMeshLocation ( const double3 real_loc) const

Get the location of a point on the mesh based on its coordinates in Cartesian space. This function is not intended for high-volume computations, merely to provide unit tests of the object's validity in a given context.

Parameters
real_locThe location cast in units of mesh elements

◆ getRealLocation()

double3 stormm::structure::MeshRulers::getRealLocation ( const double3 mesh_loc) const

Get the location of a point in Cartesian space based on its coordinates on the mesh. This function is not intended for high-volume computations, merely to provide unit tests of the object's validity in a given context.

Parameters
mesh_locThe location cast in units of mesh elements

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