XGCa
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Public Types | Public Member Functions | Public Attributes | List of all members
GridFiles Struct Reference

#include <grid_files.hpp>

Public Types

enum  GridCreateOpt { Hexagonal =0, Circular =1 }
 

Public Member Functions

 GridFiles (const std::string &node_file, const std::string &element_file, const std::string &flx_aif_file)
 
void construct_hex_grid (int nshells, double raxis, double zaxis, double rscale, double zscale)
 
double node_to_node_dist (RZPair a, RZPair b)
 
void construct_circular_grid (int nshells, double raxis, double zaxis, double rscale, double zscale)
 
 GridFiles (int nshells, double raxis, double zaxis, double rscale, double zscale, GridCreateOpt grid_opt=Hexagonal)
 
 GridFiles (MagneticField< HostType > &magnetic_field, int nshells, GridCreateOpt grid_opt=Hexagonal)
 
 GridFiles (const std::string node_file, const std::string ele_file)
 

Public Attributes

int nnodes
 
std::vector< RZPairx
 
std::vector< int > rgn
 
int ntriangles
 
std::vector< Vertexnodes
 
int nsurfaces
 
std::vector< int > nnodes_on_surface
 
int sum_nnodes_on_surfaces
 
std::vector< int > nodes_of_surfaces
 

Member Enumeration Documentation

Enumerator
Hexagonal 
Circular 

Constructor & Destructor Documentation

GridFiles::GridFiles ( const std::string &  node_file,
const std::string &  element_file,
const std::string &  flx_aif_file 
)
inline

Read node file

Read node file

Read flx aif file

Here is the call graph for this function:

GridFiles::GridFiles ( int  nshells,
double  raxis,
double  zaxis,
double  rscale,
double  zscale,
GridCreateOpt  grid_opt = Hexagonal 
)
inline

Constructor to create analytic grid (hexagonal shells) given center and triangle scale

Parameters
[in]nshellsis the number of concentric hexagons to be constructed
[in]raxisis where the grid is to be centered (r coord)
[in]zaxisis where the grid is to be centered (z coord)
[in]rscaleis the length of the triangles
[in]zscaleis the height of the triangles

Here is the call graph for this function:

GridFiles::GridFiles ( MagneticField< HostType > &  magnetic_field,
int  nshells,
GridCreateOpt  grid_opt = Hexagonal 
)
inline

Constructor to create analytic grid (hexagonal shells) to fit the magnetic field provided

Parameters
[in]magnetic_fieldis the magnetic field that the grid should fit
[in]nshellsis the number of concentric hexagons to be constructed

Here is the call graph for this function:

GridFiles::GridFiles ( const std::string  node_file,
const std::string  ele_file 
)
inline

Member Function Documentation

void GridFiles::construct_circular_grid ( int  nshells,
double  raxis,
double  zaxis,
double  rscale,
double  zscale 
)
inline

Construct the circular grid

Parameters
[in]nshellsis the number of concentric circles to be constructed
[in]raxisis where the grid is to be centered (r coord)
[in]zaxisis where the grid is to be centered (z coord)
[in]rscaleis the length of the triangles
[in]zscaleis the height of the triangles

Here is the call graph for this function:

Here is the caller graph for this function:

void GridFiles::construct_hex_grid ( int  nshells,
double  raxis,
double  zaxis,
double  rscale,
double  zscale 
)
inline

Construct the analytic hexagonal grid

Parameters
[in]nshellsis the number of concentric hexagons to be constructed
[in]raxisis where the grid is to be centered (r coord)
[in]zaxisis where the grid is to be centered (z coord)
[in]rscaleis the length of the triangles
[in]zscaleis the height of the triangles

Here is the caller graph for this function:

double GridFiles::node_to_node_dist ( RZPair  a,
RZPair  b 
)
inline

Determine distance between two node points

Parameters
[in]ais the first point
[in]bis the second point

Here is the caller graph for this function:

Member Data Documentation

int GridFiles::nnodes
std::vector<int> GridFiles::nnodes_on_surface
std::vector<Vertex> GridFiles::nodes
std::vector<int> GridFiles::nodes_of_surfaces
int GridFiles::nsurfaces
int GridFiles::ntriangles
std::vector<int> GridFiles::rgn
int GridFiles::sum_nnodes_on_surfaces
std::vector<RZPair> GridFiles::x

The documentation for this struct was generated from the following file: