Nalu
Nalu: a generalized unstructured massively parallel low Mach flow code designed to support a variety of energy applications of interest (most notably Wind ECP) built on the Sierra Toolkit and Trilinos solver Tpetra/Epetra stack. The open source BSD, clause 3 license model has been chosen for the code base. See LICENSE for more information. http://NaluCFD.org
Public Member Functions | Public Attributes | List of all members
sierra::nalu::LagrangeBasis Class Reference

#include <LagrangeBasis.h>

Public Member Functions

 LagrangeBasis (const std::vector< std::vector< int >> &indicesMap, const std::vector< double > &nodeLocs)
 
virtual ~LagrangeBasis ()
 
std::vector< double > eval_basis_weights (const std::vector< double > &intgLoc) const
 
std::vector< double > eval_deriv_weights (const std::vector< double > &intgLoc) const
 
void interpolation_weights (const double *isoParCoord, double *weights) const
 
void derivative_weights (const double *isoParCoord, double *weights) const
 
const std::vector< double > & point_interpolation_weights (const double *isoParCoords)
 
const std::vector< double > & point_derivative_weights (const double *isoParCoords)
 
double tensor_lagrange_derivative (unsigned dimension, const double *x, const int *node_ordinals, unsigned derivativeDirection) const
 
double tensor_lagrange_interpolant (unsigned dimension, const double *x, const int *node_ordinals) const
 
unsigned num_nodes ()
 

Public Attributes

std::vector< std::vector< int > > indicesMap_
 
std::vector< double > interpWeightsAtPoint_
 
std::vector< double > derivWeightsAtPoint_
 
const Lagrange1D basis1D_
 
unsigned numNodes1D_
 
unsigned numNodes_
 
unsigned polyOrder_
 
const unsigned dim_
 

Constructor & Destructor Documentation

sierra::nalu::LagrangeBasis::LagrangeBasis ( const std::vector< std::vector< int >> &  indicesMap,
const std::vector< double > &  nodeLocs 
)
sierra::nalu::LagrangeBasis::~LagrangeBasis ( )
virtualdefault

Referenced by LagrangeBasis().

Member Function Documentation

void sierra::nalu::LagrangeBasis::derivative_weights ( const double *  isoParCoord,
double *  weights 
) const
std::vector< double > sierra::nalu::LagrangeBasis::eval_basis_weights ( const std::vector< double > &  intgLoc) const
std::vector< double > sierra::nalu::LagrangeBasis::eval_deriv_weights ( const std::vector< double > &  intgLoc) const
void sierra::nalu::LagrangeBasis::interpolation_weights ( const double *  isoParCoord,
double *  weights 
) const
unsigned sierra::nalu::LagrangeBasis::num_nodes ( )
inline
const std::vector< double > & sierra::nalu::LagrangeBasis::point_derivative_weights ( const double *  isoParCoords)
const std::vector< double > & sierra::nalu::LagrangeBasis::point_interpolation_weights ( const double *  isoParCoords)
double sierra::nalu::LagrangeBasis::tensor_lagrange_derivative ( unsigned  dimension,
const double *  x,
const int *  node_ordinals,
unsigned  derivativeDirection 
) const
double sierra::nalu::LagrangeBasis::tensor_lagrange_interpolant ( unsigned  dimension,
const double *  x,
const int *  node_ordinals 
) const

Member Data Documentation

const Lagrange1D sierra::nalu::LagrangeBasis::basis1D_
std::vector<double> sierra::nalu::LagrangeBasis::derivWeightsAtPoint_
const unsigned sierra::nalu::LagrangeBasis::dim_
std::vector<std::vector<int> > sierra::nalu::LagrangeBasis::indicesMap_
std::vector<double> sierra::nalu::LagrangeBasis::interpWeightsAtPoint_
unsigned sierra::nalu::LagrangeBasis::numNodes1D_
unsigned sierra::nalu::LagrangeBasis::numNodes_
unsigned sierra::nalu::LagrangeBasis::polyOrder_

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