Classes | |
class | Basis |
Defining a finite element basis and topology. More... | |
class | ErrorMessage |
Handles simple error messages. More... | |
class | WarningMessage |
Handles simple warning messages. More... | |
class | DiffusionFormulation |
Class for diffusion problems. More... | |
class | DirichletBC |
Virtual base class for various Dirichlet type boundary condiditons. More... | |
class | DofMap |
Dof map. More... | |
class | ElasticityFormulation |
Formulation for small strain continuum elasticity elements. More... | |
class | ElasticTruss2D |
Formulation for elastic truss elements. More... | |
class | ElasticTruss3D |
Formulation for elastic 3D small deformation truss elements. More... | |
class | Element |
Class that defines a basic finite element. More... | |
class | FEInput |
Virtual base class for reading finite element data from input files. More... | |
class | Formulation |
Virtual base class for various element formulations. More... | |
class | FiniteLine |
class | GmshInput |
Reads a Gmsh mesh file. More... | |
class | GmshVer1Input |
Reads a version 1.0 ASCII Gmsh mesh file. More... | |
class | GridRectTria3 |
A class to generate a triangular rectangular grid. More... | |
class | Hexa8Basis |
Eight node hexahedral basis. More... | |
class | InputCard |
Holds a input card. More... | |
class | Input |
Virtual base class for reading input. More... | |
class | Line2Basis |
Two node 1D basis. More... | |
class | Line3Basis |
Three node 1D basis. More... | |
class | MatElastic |
A small deformation elastic material model. More... | |
class | MaterialState |
Structure to hold information the material state space vector. More... | |
class | Material |
Virtual base class for various constitutive models. More... | |
class | NastranCard |
class | NastranInput |
Reads a Nastran bulk data file. More... | |
class | NeumannBC |
Virtual base class for various Neumann type boundary condiditons. More... | |
class | Node |
Node definition. More... | |
class | Point |
Geometric point. More... | |
class | PointLoadBC |
class for defining point load type boundary condiditons More... | |
class | Quad4Basis |
Four node quadrilateral basis. More... | |
class | Quad8Basis |
Eight node quadrilateral basis. More... | |
class | QuadraturePoint |
Describes a single quadrature point and weight. More... | |
class | Solver |
Base class for linear solvers. More... | |
class | Stopwatch |
A class to perform cpu time tracking. More... | |
class | VoigtStress |
class | VoigtStrain |
class | StressState |
class | PlaneStrainState |
class | PlaneStressState |
class | AxisymmetricState |
class | StressState3D |
class | StressState1D |
class | StructuralFormulation |
Virtual base class for various structural formulationss. More... | |
class | SuperLUSolverCSR |
Class for solving using SuperLU with DynamicCSRMatrix. More... | |
class | Tetra10Basis |
Ten node tetrahedral basis. More... | |
class | Tetra4Basis |
Four node tetrahedral basis. More... | |
class | TextInput |
Processes a generic text input file. More... | |
class | TractionBC |
Class for handeling uniform traction boundary conditions. More... | |
class | Tria3Basis |
3 node triangular basis More... | |
class | Tria6Basis |
6 node triangular basis More... | |
class | WriteEnsight |
Writes data to Ensight Gold ASCII format. More... | |
Enumerations | |
enum | BasisShape { kLINE, kTRIANGLE, kQUADRILATERAL, kTETRAHEDRA, kHEXAHEDRA, kPRISM, kPYRAMID } |
Enumerated typoe to define basis shape/geometry. More... | |
enum | BasisType { kNONE = 0, kPOINT1, kLINE2, kTRIA3, kQUAD4, kTETRA4, kHEXA8, kPRISM6, kPYRAMID5, kLINE3, kTRIA6, kQUAD9, kQUAD8, kTETRA10, kHEXA20, kHEXA27, kPYRAMID13, kPYRAMID14, kPRISM15, kPRISM18 } |
Enumerated typoe to basis types. More... | |
enum | StressStateType { kSTRESS_1D, kPLANE_STRAIN, kPLANE_STRESS, kAXISYMMETRIC, kSTRESS_3D } |
Functions | |
template<class NODEARRAY> | |
void | form_nodemap (NODEARRAY &nodes, map< int, Node * > &nodemap) |
void | form_vect_shapefunct (const nArray &N, int sdim, nMatrix &Nv) |
void | form_bmatrix (const nMatrix &DNa_x, nMatrix &B) |
template<class NODEARRAY, class CONNVECT, class COORDMAT> | |
void | get_element_coordinates (const NODEARRAY &node, int sdim, const CONNVECT &econn, COORDMAT &cmat) |
template<class OBJ1, class OBJ2, class INDX> | |
void | scatter_vector (const OBJ1 &fe, OBJ2 &F, const INDX &indx) |
template<class OBJ1, class OBJ2, class INDX> | |
void | scatter_matrix (const OBJ1 &ke, OBJ2 &K, const INDX &ri, const INDX &ci) |
template<class INDX, class NVECT> | |
void | superlu_solve_constrained (DynamicCSRMatrix &K, nArray &x, const INDX &ifix, NVECT &ival) |
template<class INDX> | |
void | superlu_solve_constrained (DynamicCSRMatrix &K, nArray &x, const INDX &ifix) |
Numeric | det2by2 (const nMatrix &A) |
Numeric | det3by3 (const nMatrix &A) |
Numeric | inv2by2 (nMatrix &A) |
Numeric | inv3by3 (nMatrix &A) |
void | jacobian_mat (const nMatrix &coord, const nMatrix &dNxi, nMatrix &jac) |
Numeric | jacobian (const nMatrix &coord, const nMatrix &dNxi) |
Numeric | jacobian12 (const nMatrix &coord, const nMatrix &dNxi) |
Numeric | jacobian13 (const nMatrix &coord, const nMatrix &dNxi) |
Numeric | jacobian23 (const nMatrix &coord, const nMatrix &dNxi) |
Numeric | grad_shape (const nMatrix &coord, const nMatrix &dNxi, nMatrix &dNx) |
Numeric | grad_shape (const Array< Node > &nodes, const iArray &conn, const nMatrix &dNxi, nMatrix &invj, nMatrix &dNx) |
Numeric | grad_shape12 (const nMatrix &coord, const nMatrix &dNxi, nMatrix &dNx) |
Numeric | grad_shape13 (const nMatrix &coord, const nMatrix &dNxi, nMatrix &dNx) |
Numeric | grad_shape23 (const nMatrix &coord, const nMatrix &dNxi, nMatrix &dNx) |
void | cmat_elastic_pstress (Numeric E, Numeric nu, nMatrix &C) |
void | cmat_elastic_pstrain (Numeric E, Numeric nu, nMatrix &C) |
void | cmat_elastic_3d (Numeric E, Numeric nu, nMatrix &C) |
template<class MATA, class MATB, class MATC, class MATK> | |
void | femmult (const MATA &A, const MATB &B, const MATC &C, Numeric alpha, MATK &K) |
template<class MATA, class MATB, class MATC, class MATK> | |
void | femmult_add (const MATA &A, const MATB &B, const MATC &C, Numeric alpha, MATK &K) |
template<class MATA, class MATB, class MATK> | |
void | femmult_add (const MATA &A, const MATB &B, Numeric alpha, MATK &K) |
Numeric | norm (const nArray &a, int type=2) |
Numeric | normalize (nArray &a, int type=2) |
void | cross_prod (const nArray &a, const nArray &b, nArray &c) |
void | outer_prod (const nArray &a, const nArray &b, nMatrix &c, Numeric alpha=1.0) |
int | basis_type_numnodes (const BasisType &bt) |
std::ostream & | operator<< (std::ostream &out, const BasisType &bt) |
std::ostream & | operator<< (std::ostream &out, const DofMap &dmap) |
std::ostream & | operator<< (std::ostream &out, const Element &elem) |
Numeric | area_triangle (const Point &a, const Point &b, const Point &c) |
Numeric | dist (const Point &p1, const Point &p2) |
template<class ElEmEnTlIsT> | |
void | add_nodeids (const ElEmEnTlIsT &conn, set< int > &nid_set) |
template<class CONNMAT> | |
void | print_grid_connectivity (const CONNMAT &conn, std::ostream &out=StdOutput) |
template<class COORDMAT> | |
void | print_grid_coordinates (const COORDMAT &coord, std::ostream &out=StdOutput) |
ostream & | operator<< (std::ostream &out, const InputCard &card) |
void | distributed_load_2d (Array< ElementDef > &bndry, void(*loadf)(const Point &), Numeric sf, const DofMap &dof_map, nArray &fext) |
std::ostream & | operator<< (std::ostream &out, const Node &p) |
std::ostream & | operator<< (std::ostream &out, const Point &p) |
void | quadrature_gauss1d (QuadratureRule &qr) |
void | quadrature_gauss2d (QuadratureRule &qr) |
void | tensorial_quadrature_rule (const QuadratureRule &q1, const QuadratureRule &q2, QuadratureRule &qr) |
void | quadrature_gauss3d (QuadratureRule &qr) |
void | quadrature_tria (QuadratureRule &qr) |
void | quadrature_tetra (QuadratureRule &qr) |
std::ostream & | operator<< (std::ostream &out, const QuadraturePoint &pt) |
void | shape_line2 (nArray &Na, const Numeric &xi=0.0) |
void | dshape_line2 (nMatrix &dNa, const Numeric &xi=0.0) |
void | shape_line3 (nArray &Na, const Numeric &xi=0.0) |
void | dshape_line3 (nMatrix &dNa, const Numeric &xi=0.0) |
void | shape_tria3 (nArray &Na, const Numeric &xi=0.33333333333333, const Numeric &eta=0.33333333333333) |
void | dshape_tria3 (nMatrix &dNa, const Numeric &xi=0.33333333333333, const Numeric &eta=0.33333333333333) |
void | shape_tria4 (nArray &Na, const Numeric &xi=0.33333333333333, const Numeric &eta=0.33333333333333) |
void | dshape_tria4 (nMatrix &dNa, const Numeric &xi=0.33333333333333, const Numeric &eta=0.33333333333333) |
void | shape_tria6 (nArray &Na, const Numeric &xi=0.33333333333333, const Numeric &eta=0.33333333333333) |
void | dshape_tria6 (nMatrix &dNa, const Numeric &xi=0.33333333333333, const Numeric &eta=0.33333333333333) |
void | shape_quad4 (nArray &Na, const Numeric &xi=0.0, const Numeric &eta=0.0) |
void | dshape_quad4 (nMatrix &dNa, const Numeric &xi=0.0, const Numeric &eta=0.0) |
void | shape_quad8 (nArray &Na, const Numeric &xi=0.0, const Numeric &eta=0.0) |
void | dshape_quad8 (nMatrix &dNa, const Numeric &xi=0.0, const Numeric &eta=0.0) |
void | shape_quad9 (nArray &Na, const Numeric &xi=0.0, const Numeric &eta=0.0) |
void | dshape_quad9 (nMatrix &dNa, const Numeric &xi=0.0, const Numeric &eta=0.0) |
void | shape_quad12 (nArray &Na, const Numeric &xi=0.0, const Numeric &eta=0.0) |
void | dshape_quad12 (nMatrix &dNa, const Numeric &xi=0.0, const Numeric &eta=0.0) |
void | shape_tetra4 (nArray &Na, const Numeric &xi=0.166666666666667, const Numeric &eta=0.166666666666667, const Numeric &zeta=0.166666666666667) |
void | dshape_tetra4 (nMatrix &dNa, const Numeric &xi=0.166666666666667, const Numeric &eta=0.166666666666667, const Numeric &zeta=0.166666666666667) |
void | shape_tetra10 (nArray &Na, const Numeric &xi=0.166666666666667, const Numeric &eta=0.166666666666667, const Numeric &zeta=0.166666666666667) |
void | dshape_tetra10 (nMatrix &dNa, const Numeric &xi=0.166666666666667, const Numeric &eta=0.166666666666667, const Numeric &zeta=0.166666666666667) |
void | shape_hexa8 (nArray &Na, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.0) |
void | dshape_hexa8 (nMatrix &dNa, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.0) |
void | shape_hexa20 (nArray &Na, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.0) |
void | dshape_hexa20 (nMatrix &dNa, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.0) |
void | shape_hexa27 (nArray &Na, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.0) |
void | dshape_hexa27 (nMatrix &dNa, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.0) |
void | shape_prism6 (nArray &Na, const Numeric &xi=0.333333333333, const Numeric &eta=0.333333333333333, const Numeric &zeta=0.0) |
void | dshape_prism6 (nMatrix &dNa, const Numeric &xi=0.333333333333, const Numeric &eta=0.3333333333333, const Numeric &zeta=0.0) |
void | shape_prism14 (nArray &Na, const Numeric &xi=0.333333333333, const Numeric &eta=0.333333333333333, const Numeric &zeta=0.0) |
void | dshape_prism14 (nMatrix &dNa, const Numeric &xi=0.333333333333, const Numeric &eta=0.3333333333333, const Numeric &zeta=0.0) |
void | shape_prism15 (nArray &Na, const Numeric &xi=0.333333333333, const Numeric &eta=0.333333333333333, const Numeric &zeta=0.0) |
void | dshape_prism15 (nMatrix &dNa, const Numeric &xi=0.333333333333, const Numeric &eta=0.3333333333333, const Numeric &zeta=0.0) |
void | shape_prism18 (nArray &Na, const Numeric &xi=0.333333333333, const Numeric &eta=0.333333333333333, const Numeric &zeta=0.0) |
void | dshape_prism18 (nMatrix &dNa, const Numeric &xi=0.333333333333, const Numeric &eta=0.3333333333333, const Numeric &zeta=0.0) |
void | shape_pyramid5 (nArray &Na, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.125) |
void | dshape_pyramid5 (nMatrix &dNa, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.125) |
void | shape_pyramid13 (nArray &Na, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.125) |
void | dshape_pyramid13 (nMatrix &dNa, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.125) |
void | shape_pyramid14 (nArray &Na, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.125) |
void | dshape_pyramid14 (nMatrix &dNa, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.125) |
void | shape_point1 (nArray &Na, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.0) |
void | dshape_point1 (nMatrix &dNa, const Numeric &xi=0.0, const Numeric &eta=0.0, const Numeric &zeta=0.125) |
std::ostream & | operator<< (std::ostream &out, const Stopwatch &timer) |
void | pause (Numeric dt) |
void | voigt2tensor (const nArray &vstress, nMatrix &tstress) |
void | tensor2voigt (const nMatrix &tstress, nArray &vstress) |
enum basso::BasisShape |
enum basso::BasisType |
Definition at line 25 of file StructuralFormulation.h.
void basso::add_nodeids | ( | const ElEmEnTlIsT & | conn, | |
set< int > & | nid_set | |||
) | [inline] |
Adds the node ids from a node connectivity matrix to a node id set
conn | Element connectivity of whose node ids are to be extracted | |
nid_set | Set of node ids that are to be added to |
Definition at line 34 of file grids.h.
Referenced by basso::GridRectTria3::BottomEdge(), basso::GridRectTria3::LeftEdge(), basso::GridRectTria3::RightEdge(), and basso::GridRectTria3::TopEdge().
Numeric basso::area_triangle | ( | const Point & | a, | |
const Point & | b, | |||
const Point & | c | |||
) |
returns the area of a triangle defined by its vertices
a | vertex | |
b | vertex | |
c | vertex |
Definition at line 31 of file geometry.h.
References Numeric, basso::Point::x(), basso::Point::y(), and basso::Point::z().
Referenced by basso::TractionBC::GetElementForceTria3().
int basso::basis_type_numnodes | ( | const BasisType & | bt | ) |
void basso::cmat_elastic_3d | ( | Numeric | E, | |
Numeric | nu, | |||
nMatrix & | C | |||
) |
Computes the material stiffness matrix for an elastic material under a 3D state
E | Young's modulus of the material | |
nu | Poisson's ratio of the material | |
C | The material stiffness matrix on return |
Definition at line 683 of file basic_fem_operations.h.
References Numeric.
void basso::cmat_elastic_pstrain | ( | Numeric | E, | |
Numeric | nu, | |||
nMatrix & | C | |||
) |
Computes the material stiffness matrix for an elastic material under a plane strain state
E | Young's modulus of the material | |
nu | Poisson's ratio of the material | |
C | The material stiffness matrix on return |
Definition at line 661 of file basic_fem_operations.h.
References Numeric.
void basso::cmat_elastic_pstress | ( | Numeric | E, | |
Numeric | nu, | |||
nMatrix & | C | |||
) |
Computes the material stiffness matrix for an elastic material under a plane stress state
E | Young's modulus of the material | |
nu | Poisson's ratio of the material | |
C | The material stiffness matrix on return |
Definition at line 643 of file basic_fem_operations.h.
void basso::cross_prod | ( | const nArray & | a, | |
const nArray & | b, | |||
nArray & | c | |||
) |
returns the cross product of axb into c
Definition at line 63 of file basic_functions.h.
Referenced by grad_shape13(), grad_shape23(), and jacobian23().
Numeric basso::det2by2 | ( | const nMatrix & | A | ) |
Computes the determinant of a 2 by 2 matrix
A | the matrix and the determinant is given in the return value |
Definition at line 274 of file basic_fem_operations.h.
Referenced by inv2by2(), jacobian(), and jacobian12().
Numeric basso::det3by3 | ( | const nMatrix & | A | ) |
Computes the determinant of a 3 by 3 matrix
A | the matrix and the determinant is given in the return value |
Definition at line 281 of file basic_fem_operations.h.
Referenced by inv3by3(), and jacobian().
Numeric basso::dist | ( | const Point & | p1, | |
const Point & | p2 | |||
) |
Computes the distance between two points or nodes
Definition at line 42 of file geometry.h.
References basso::Point::x(), basso::Point::y(), and basso::Point::z().
Referenced by basso::TractionBC::GetElementForceLine2().
void basso::distributed_load_2d | ( | Array< ElementDef > & | bndry, | |
void(*)(const Point &) | loadf, | |||
Numeric | sf, | |||
const DofMap & | dof_map, | |||
nArray & | fext | |||
) |
Computes a distributed load vector
bndry | ||
loadf | ||
sf | ||
dof_map | ||
fext |
Definition at line 34 of file load_func.h.
void basso::dshape_hexa20 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the gradient of the shape function for a twenty node hexahedral element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at | |
eta | the point in the parent coordinate space where the shape functions are evalueated at | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at |
Definition at line 737 of file shapefunc.h.
void basso::dshape_hexa27 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the gradient of the shape function for a twenty seven node hexahedral element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at | |
eta | the point in the parent coordinate space where the shape functions are evalueated at | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at |
Definition at line 840 of file shapefunc.h.
void basso::dshape_hexa8 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the gradient of the shape function for a eight node hexahedral element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at | |
eta | the point in the parent coordinate space where the shape functions are evalueated at | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at |
Definition at line 668 of file shapefunc.h.
Referenced by basso::Hexa8Basis::DNa().
void basso::dshape_line2 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 | |||
) |
Computes the gradient of the shape function for a two node line element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[-1,1] |
Definition at line 55 of file shapefunc.h.
Referenced by basso::Line2Basis::DNa().
void basso::dshape_line3 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 | |||
) |
Computes the gradient of the shape function for a three node line element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[-1,1] |
Definition at line 94 of file shapefunc.h.
Referenced by basso::Line3Basis::DNa().
void basso::dshape_point1 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.125 | |||
) |
Computes the gradient of the shape function for a one node point element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at | |
eta | the point in the parent coordinate space where the shape functions are evalueated at | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at |
Definition at line 1266 of file shapefunc.h.
void basso::dshape_prism14 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.333333333333 , |
|||
const Numeric & | eta = 0.3333333333333 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the gradient of the shape function for a twelve node prism element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[0,1-xi] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[-1,1] |
Definition at line 938 of file shapefunc.h.
void basso::dshape_prism15 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.333333333333 , |
|||
const Numeric & | eta = 0.3333333333333 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the gradient of the shape function for a eighteen node prism element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[0,1-xi] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[-1,1] |
Definition at line 978 of file shapefunc.h.
void basso::dshape_prism18 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.333333333333 , |
|||
const Numeric & | eta = 0.3333333333333 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the gradient of the shape function for a eighteen node prism element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[0,1-xi] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[-1,1] |
Definition at line 1038 of file shapefunc.h.
void basso::dshape_prism6 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.333333333333 , |
|||
const Numeric & | eta = 0.3333333333333 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the gradient of the shape function for a six node prism element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[0,1-xi] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[-1,1] |
Definition at line 888 of file shapefunc.h.
void basso::dshape_pyramid13 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.125 | |||
) |
Computes the gradient of the shape function for a thirteen node pyramid element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[-1,1] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[0,1] |
Definition at line 1183 of file shapefunc.h.
void basso::dshape_pyramid14 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.125 | |||
) |
Computes the gradient of the shape function for a fourteen node pyramid element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[-1,1] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[0,1] |
Definition at line 1226 of file shapefunc.h.
void basso::dshape_pyramid5 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.125 | |||
) |
Computes the gradient of the shape function for a five node pyramid element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[-1,1] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[0,1] |
Definition at line 1141 of file shapefunc.h.
void basso::dshape_quad12 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 | |||
) |
Computes the gradient of the shape function for a twelve node quadrilateral element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[-1,1] |
Definition at line 458 of file shapefunc.h.
References Numeric.
void basso::dshape_quad4 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 | |||
) |
Computes the gradient of the shape function for a four node quadrilateral element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[-1,1] |
Definition at line 273 of file shapefunc.h.
Referenced by basso::Quad4Basis::DNa().
void basso::dshape_quad8 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 | |||
) |
Computes the gradient of the shape function for a eight node quadrilateral element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[-1,1] |
Definition at line 323 of file shapefunc.h.
References Numeric.
Referenced by basso::Quad8Basis::DNa().
void basso::dshape_quad9 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 | |||
) |
Computes the gradient of the shape function for a nine node quadrilateral element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[-1,1] |
Definition at line 390 of file shapefunc.h.
void basso::dshape_tetra10 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.166666666666667 , |
|||
const Numeric & | eta = 0.166666666666667 , |
|||
const Numeric & | zeta = 0.166666666666667 | |||
) |
Computes the gradient of the shape function for a ten node tetrahedal element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at | |
eta | the point in the parent coordinate space where the shape functions are evalueated at | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at |
Definition at line 606 of file shapefunc.h.
References Numeric.
Referenced by basso::Tetra10Basis::DNa().
void basso::dshape_tetra4 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.166666666666667 , |
|||
const Numeric & | eta = 0.166666666666667 , |
|||
const Numeric & | zeta = 0.166666666666667 | |||
) |
Computes the gradient of the shape function for a four node tetrahedal element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at | |
eta | the point in the parent coordinate space where the shape functions are evalueated at | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at |
Definition at line 545 of file shapefunc.h.
Referenced by basso::Tetra4Basis::DNa().
void basso::dshape_tria3 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.33333333333333 , |
|||
const Numeric & | eta = 0.33333333333333 | |||
) |
Computes the gradient of the shape function for a three node triangle element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[0,1-xi] |
Definition at line 136 of file shapefunc.h.
Referenced by basso::Tria3Basis::DNa().
void basso::dshape_tria4 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.33333333333333 , |
|||
const Numeric & | eta = 0.33333333333333 | |||
) |
Computes the gradient of the shape function for a four node triangle element (cubic bubble) w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[0,1-xi] |
Definition at line 180 of file shapefunc.h.
void basso::dshape_tria6 | ( | nMatrix & | dNa, | |
const Numeric & | xi = 0.33333333333333 , |
|||
const Numeric & | eta = 0.33333333333333 | |||
) |
Computes the gradient of the shape function for a six node triangle element w.r.t to the parent coordinate system
dNa | the matrix where the shape function gradient values are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[0,1-xi] |
Definition at line 226 of file shapefunc.h.
Referenced by basso::Tria6Basis::DNa().
void basso::femmult | ( | const MATA & | A, | |
const MATB & | B, | |||
const MATC & | C, | |||
Numeric | alpha, | |||
MATK & | K | |||
) | [inline] |
Computes the product of three matrices K=A*B*C*alpha, where alpha is a scalar. The primary intended use is to compute element stiffness matricies of the form ke=B^T*C*B*wt
A | the first matrix | |
B | the second matrix | |
C | the third matrix | |
alpha | a scalar constant | |
K | <- A*B*C*alpha on return |
Definition at line 713 of file basic_fem_operations.h.
References nMatrix.
void basso::femmult_add | ( | const MATA & | A, | |
const MATB & | B, | |||
Numeric | alpha, | |||
MATK & | K | |||
) | [inline] |
Computes the product of three matrices K=A*B*alpha+K, where alpha is a scalar. The primary intended use is to compute element stiffness matricies of the form ke=B^T*B*wt
A | the first matrix | |
B | the second matrix | |
alpha | a scalar constant | |
K | <- A*B*C*alpha + K on return This differs from femmult_add in that A*B*C*alpha is added to the existing value of K which is useful in quadrature loops |
Definition at line 773 of file basic_fem_operations.h.
References nMatrix.
void basso::femmult_add | ( | const MATA & | A, | |
const MATB & | B, | |||
const MATC & | C, | |||
Numeric | alpha, | |||
MATK & | K | |||
) | [inline] |
Computes the product of three matrices K=A*B*C*alpha+K, where alpha is a scalar. The primary intended use is to compute element stiffness matricies of the form ke=B^T*C*B*wt
A | the first matrix | |
B | the second matrix | |
C | the third matrix | |
alpha | a scalar constant | |
K | <- A*B*C*alpha + K on return This differs from femmult in that A*B*C*alpha is added to the existing value of K which is useful in quadrature loops |
Definition at line 742 of file basic_fem_operations.h.
References nMatrix.
Referenced by basso::StructuralFormulation::GetElementStiffnessMatrix(), and basso::Formulation::GetElementStiffnessMatrix().
void basso::form_bmatrix | ( | const nMatrix & | DNa_x, | |
nMatrix & | B | |||
) |
Forms the B matrix from a shape function gradient matrix
DNa_x | gradient of the shape function w.r.t. the spacial coordinates | |
B | on return contains the B matrix |
Definition at line 73 of file basic_fem_operations.h.
Referenced by basso::StructuralFormulation::SetBMatrix().
void basso::form_nodemap | ( | NODEARRAY & | nodes, | |
map< int, Node * > & | nodemap | |||
) | [inline] |
Computes a node id map from a list, set or Array of Nodes
nodes | the list, vector, or Array of Nodes | |
nodemap | the node map to be computed The node map is such that | |
nodemap[i] | will return a pointer to a Node with id i. |
Definition at line 41 of file basic_fem_operations.h.
void basso::form_vect_shapefunct | ( | const nArray & | N, | |
int | sdim, | |||
nMatrix & | Nv | |||
) |
Forms a shape function for interpolating vector fields
N | scalar field shape function | |
sdim | Spacial dimension of the field | |
Nv | on return contains the vector shape function |
Definition at line 53 of file basic_fem_operations.h.
void basso::get_element_coordinates | ( | const NODEARRAY & | node, | |
int | sdim, | |||
const CONNVECT & | econn, | |||
COORDMAT & | cmat | |||
) | [inline] |
Computes the element nodal coordinate matrix from a global node coordinate array of points and a element connectivity vector. This functio is templated so it should work with most STL and Gmm++ objects
node | Global node coordinate array | |
sdim | Spacial dimension | |
econn | Element connectivity array | |
cmat | Element coordinate matrix on return. |
Definition at line 123 of file basic_fem_operations.h.
Referenced by basso::TractionBC::SetElementParameters(), and basso::Formulation::SetElementParameters().
Numeric basso::grad_shape | ( | const Array< Node > & | nodes, | |
const iArray & | conn, | |||
const nMatrix & | dNxi, | |||
nMatrix & | invj, | |||
nMatrix & | dNx | |||
) |
Computes the spacial gradient of an element shape function. This is a trial method to see if we can improve performance. As of now it seems to have little effect.
nodes | Array of Nodes for teh mesh | |
conn | elmeent connectivity vector | |
dNxi | The matrix of the gradient of the shape functions w.r.t the parent coordinates | |
dNx | he matrix of the gradient of the shape functions w.r.t the parent coordinates on return This function uses the column dimension of dNxi to determine the sapcial dimension of the problem. This function is for elements whose parent space dimension is equal to the coordinate space (i.e. isoparametric elements). For elements where this is not the case, like structural elements, use grad_shape12, grad_shape13 or grad_shape23. The number of columns in | |
coord | does not need to match the column dimension of dNxi. |
Definition at line 481 of file basic_fem_operations.h.
Numeric basso::grad_shape | ( | const nMatrix & | coord, | |
const nMatrix & | dNxi, | |||
nMatrix & | dNx | |||
) |
Computes the spacial gradient of an element shape function
coord | A matrix of the element coordinates | |
dNxi | The matrix of the gradient of the shape functions w.r.t the parent coordinates | |
dNx | he matrix of the gradient of the shape functions w.r.t the parent coordinates on return This function uses the column dimension of dNxi to determine the sapcial dimension of the problem. This function is for elements whose parent space dimension is equal to the coordinate space (i.e. isoparametric elements). For elements where this is not the case, like structural elements, use grad_shape12, grad_shape13 or grad_shape23. The number of columns in | |
coord | does not need to match the column dimension of dNxi. |
Definition at line 439 of file basic_fem_operations.h.
References inv2by2(), inv3by3(), nMatrix, and Numeric.
Referenced by basso::Formulation::SetDNx().
Numeric basso::grad_shape12 | ( | const nMatrix & | coord, | |
const nMatrix & | dNxi, | |||
nMatrix & | dNx | |||
) |
Computes the spacial gradient of a 1D element shape function in 2D space
coord | A nx2 or nx3 matrix of the element coordinates | |
dNxi | The nx1 matrix of the gradient of the shape functions w.r.t the parent coordinates | |
dNx | The nx2 matrix of the gradient of the shape functions w.r.t the parent coordinates on return |
Definition at line 514 of file basic_fem_operations.h.
Numeric basso::grad_shape13 | ( | const nMatrix & | coord, | |
const nMatrix & | dNxi, | |||
nMatrix & | dNx | |||
) |
Computes the spacial gradient of a 1D element shape function in 3D space
coord | A nx3 matrix of the element coordinates | |
dNxi | The nx1 matrix of the gradient of the shape functions w.r.t the parent coordinates | |
dNx | The nx3 matrix of the gradient of the shape functions w.r.t the parent coordinates on return |
Definition at line 549 of file basic_fem_operations.h.
References cross_prod(), inv3by3(), nArray, nMatrix, and Numeric.
Numeric basso::grad_shape23 | ( | const nMatrix & | coord, | |
const nMatrix & | dNxi, | |||
nMatrix & | dNx | |||
) |
Computes the spacial gradient of a 2D element shape function in 3D space
coord | A nx3 matrix of the element coordinates | |
dNxi | The nx2 matrix of the gradient of the shape functions w.r.t the parent coordinates | |
dNx | The nx3 matrix of the gradient of the shape functions w.r.t the parent coordinates on return |
Definition at line 598 of file basic_fem_operations.h.
References cross_prod(), inv3by3(), nArray, nMatrix, and Numeric.
Numeric basso::inv2by2 | ( | nMatrix & | A | ) |
Computes the inverse of a 2 by 2 matrix
A | the matrix which contains A inv on the return the determinant is given in the return value |
Definition at line 290 of file basic_fem_operations.h.
References det2by2(), and Numeric.
Referenced by grad_shape(), and grad_shape12().
Numeric basso::inv3by3 | ( | nMatrix & | A | ) |
Computes the inverse of a 3 by 3 matrix
A | the matrix which contains A inv on the return the determinant is given in the return value |
Definition at line 301 of file basic_fem_operations.h.
References det3by3(), nMatrix, and Numeric.
Referenced by grad_shape(), grad_shape13(), and grad_shape23().
Numeric basso::jacobian | ( | const nMatrix & | coord, | |
const nMatrix & | dNxi | |||
) |
Computes the element Jacobian (the determinant of the Jacobian matrix)
coord | A matrix of the element coordinates | |
dNxi | The matrix of the gradient of the shape functions w.r.t the parent coordinates This uses the function jacobian_mat |
Definition at line 347 of file basic_fem_operations.h.
References det2by2(), det3by3(), jacobian_mat(), and nMatrix.
Referenced by basso::Formulation::GetElementMassMatrix().
Numeric basso::jacobian12 | ( | const nMatrix & | coord, | |
const nMatrix & | dNxi | |||
) |
Computes the element Jacobian (the determinant of the Jacobian matrix) of a one dimensional element in two dimensional space
coord | A matrix of the element coordinates | |
dNxi | The matrix of the gradient of the shape functions w.r.t the parent coordinates This uses the function jacobian_mat |
Definition at line 369 of file basic_fem_operations.h.
Numeric basso::jacobian13 | ( | const nMatrix & | coord, | |
const nMatrix & | dNxi | |||
) |
Computes the element Jacobian (the determinant of the Jacobian matrix) of a one dimensional element in three dimensional space
coord | A matrix of the element coordinates | |
dNxi | The matrix of the gradient of the shape functions w.r.t the parent coordinates This uses the function jacobian_mat |
Definition at line 390 of file basic_fem_operations.h.
References nArray.
Referenced by basso::TractionBC::Jacobian().
Numeric basso::jacobian23 | ( | const nMatrix & | coord, | |
const nMatrix & | dNxi | |||
) |
Computes the element Jacobian (the determinant of the Jacobian matrix) of a two dimensional element in three dimensional space
coord | A matrix of the element coordinates | |
dNxi | The matrix of the gradient of the shape functions w.r.t the parent coordinates This uses the function jacobian_mat |
Definition at line 411 of file basic_fem_operations.h.
References cross_prod(), and nArray.
Referenced by basso::TractionBC::Jacobian().
void basso::jacobian_mat | ( | const nMatrix & | coord, | |
const nMatrix & | dNxi, | |||
nMatrix & | jac | |||
) |
Computes the element Jacobian matrix
coord | A matrix of the element coordinates | |
dNxi | The matrix of the gradient of the shape functions w.r.t the parent coordinates | |
jac | Contains the Jacobian matrix on return This function uses the column dimension of dNxi to determine the sapcial dimension of the problem. This function is for elements whose parent space dimension is equal to the coordinate space (i.e. isoparametric elements). For elements where this is not the case, like structural elements, use jacobian12_mat, jacobian13_mat or jacobian23_mat. The number of columns in | |
coord | does not need to match the column dimension of dNxi. |
Definition at line 336 of file basic_fem_operations.h.
Referenced by jacobian().
Numeric basso::norm | ( | const nArray & | a, | |
int | type = 2 | |||
) |
computes the norm of the vector
a | the vector | |
type | the type of norm to be computed ( default is 2=>L2 norm ) type = 0 => infinite norm type = 1 => sum of the modulus of the components of vector type = 2 => Euclidean L2 norm of vector |
Definition at line 27 of file basic_functions.h.
Referenced by normalize().
Numeric basso::normalize | ( | nArray & | a, | |
int | type = 2 | |||
) |
normalizes the vector
a | the vector to be normalized | |
type | the type of norm to be computed ( default is 2=>L2 norm ) type = 0 => infinite norm type = 1 => sum of the modulus of the components of vector type = 2 => Euclidean L2 norm of vector returns the norm of the vector before normalization |
Definition at line 54 of file basic_functions.h.
std::ostream& basso::operator<< | ( | std::ostream & | out, | |
const Stopwatch & | timer | |||
) |
cout operator overload for CPUStopwatchB class
Definition at line 117 of file Stopwatch.h.
References basso::Stopwatch::Read().
std::ostream& basso::operator<< | ( | std::ostream & | out, | |
const Point & | p | |||
) |
Point from I/O stream
Definition at line 113 of file Point.h.
References basso::Point::x(), basso::Point::y(), and basso::Point::z().
std::ostream& basso::operator<< | ( | std::ostream & | out, | |
const Node & | p | |||
) |
Point from I/O stream
Definition at line 72 of file Node.h.
References basso::Node::Id(), basso::Point::x(), basso::Point::y(), and basso::Point::z().
void basso::outer_prod | ( | const nArray & | a, | |
const nArray & | b, | |||
nMatrix & | c, | |||
Numeric | alpha = 1.0 | |||
) |
returns the outer product of a o b into c
a | a vector of length n | |
b | a vector of length m | |
c | a matrix of size nxm | |
alpha | a scaling parameter
|
Definition at line 84 of file basic_functions.h.
void basso::print_grid_connectivity | ( | const CONNMAT & | conn, | |
std::ostream & | out = StdOutput | |||
) | [inline] |
void basso::print_grid_coordinates | ( | const COORDMAT & | coord, | |
std::ostream & | out = StdOutput | |||
) | [inline] |
void basso::quadrature_gauss1d | ( | QuadratureRule & | qr | ) |
Computes quadrature rules for 1D Gaussian quadrature
Definition at line 26 of file quadrature_rules.h.
Referenced by basso::Line3Basis::Quadrature(), and basso::Line2Basis::Quadrature().
void basso::quadrature_gauss2d | ( | QuadratureRule & | qr | ) |
Computes quadrature rules for 2D Gaussian quadrature
npts | the number of points in each direction |
Definition at line 97 of file quadrature_rules.h.
Referenced by basso::Quad8Basis::Quadrature(), and basso::Quad4Basis::Quadrature().
void basso::quadrature_gauss3d | ( | QuadratureRule & | qr | ) |
Computes quadrature rules for 3D Gaussian quadrature
Definition at line 185 of file quadrature_rules.h.
Referenced by basso::Hexa8Basis::Quadrature().
void basso::quadrature_tetra | ( | QuadratureRule & | qr | ) |
Computes quadrature rules tor tetrahedra
Definition at line 349 of file quadrature_rules.h.
Referenced by basso::Tetra4Basis::Quadrature(), and basso::Tetra10Basis::Quadrature().
void basso::quadrature_tria | ( | QuadratureRule & | qr | ) |
Computes quadrature rules for triangular domains
Definition at line 245 of file quadrature_rules.h.
Referenced by basso::Tria6Basis::Quadrature(), and basso::Tria3Basis::Quadrature().
void basso::scatter_matrix | ( | const OBJ1 & | ke, | |
OBJ2 & | K, | |||
const INDX & | ri, | |||
const INDX & | ci | |||
) | [inline] |
Scatters a local matrix into a global matrix. This is a templated function that should work for all Gmm++ objects.
K | global matrix | |
ke | local matrix | |
ri | global indices where to scatter rows of ke->K | |
ci | global indices where to scatter columns of ke->K |
Definition at line 168 of file basic_fem_operations.h.
void basso::scatter_vector | ( | const OBJ1 & | fe, | |
OBJ2 & | F, | |||
const INDX & | indx | |||
) | [inline] |
Scatters a local vector into a global vector. This is a templated function that should work for all Gmm++ objects.
F | global vector | |
fe | local vector | |
indx | global indices where to scatter fe->F |
Definition at line 149 of file basic_fem_operations.h.
void basso::shape_hexa20 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the shape function for a twenty node hexahedral element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[-1,1] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[-1,1] |
Definition at line 697 of file shapefunc.h.
void basso::shape_hexa27 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the shape function for a twenty seven node hexahedral element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[-1,1] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[-1,1] |
Definition at line 818 of file shapefunc.h.
void basso::shape_hexa8 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the shape function for a eight node hexahedral element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[-1,1] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[-1,1] |
Definition at line 640 of file shapefunc.h.
Referenced by basso::Hexa8Basis::Na().
void basso::shape_line2 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 | |||
) |
Computes the shape function for a two node line element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[-1,1] |
Definition at line 37 of file shapefunc.h.
Referenced by basso::Line2Basis::Na().
void basso::shape_line3 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 | |||
) |
Computes the shape function for a three node line element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[-1,1] |
Definition at line 73 of file shapefunc.h.
Referenced by basso::Line3Basis::Na().
void basso::shape_point1 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the shape function for a one node point element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at | |
eta | the point in the parent coordinate space where the shape functions are evalueated at | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at |
Definition at line 1247 of file shapefunc.h.
void basso::shape_prism14 | ( | nArray & | Na, | |
const Numeric & | xi = 0.333333333333 , |
|||
const Numeric & | eta = 0.333333333333333 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the shape function for a twelve node prism element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[0,1-xi] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[-1,1] |
Definition at line 915 of file shapefunc.h.
void basso::shape_prism15 | ( | nArray & | Na, | |
const Numeric & | xi = 0.333333333333 , |
|||
const Numeric & | eta = 0.333333333333333 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the shape function for a fiveteen node prism element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[0,1-xi] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[-1,1] |
Definition at line 959 of file shapefunc.h.
void basso::shape_prism18 | ( | nArray & | Na, | |
const Numeric & | xi = 0.333333333333 , |
|||
const Numeric & | eta = 0.333333333333333 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the shape function for a eghteen node prism element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[0,1-xi] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[-1,1] |
Definition at line 999 of file shapefunc.h.
void basso::shape_prism6 | ( | nArray & | Na, | |
const Numeric & | xi = 0.333333333333 , |
|||
const Numeric & | eta = 0.333333333333333 , |
|||
const Numeric & | zeta = 0.0 | |||
) |
Computes the shape function for a six node prism element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[0,1-xi] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[-1,1] |
Definition at line 861 of file shapefunc.h.
void basso::shape_pyramid13 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.125 | |||
) |
Computes the shape function for a thirteen node pyramid element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[-1,1] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[0,1] |
Definition at line 1162 of file shapefunc.h.
void basso::shape_pyramid14 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.125 | |||
) |
Computes the shape function for a fourteen node pyramid element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[-1,1] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[0,1] |
Definition at line 1204 of file shapefunc.h.
void basso::shape_pyramid5 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 , |
|||
const Numeric & | zeta = 0.125 | |||
) |
Computes the shape function for a five node pyramid element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at, xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at, eta=[-1,1] | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at, zeta=[0,1] |
Definition at line 1119 of file shapefunc.h.
void basso::shape_quad12 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 | |||
) |
Computes the shape function for a twelve node quadrilateral element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[-1,1] |
Definition at line 419 of file shapefunc.h.
References Numeric.
void basso::shape_quad4 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 | |||
) |
Computes the shape function for a four node quadrilateral element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[-1,1] |
Definition at line 250 of file shapefunc.h.
Referenced by basso::Quad4Basis::Na().
void basso::shape_quad8 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 | |||
) |
Computes the shape function for a eight node quadrilateral element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[-1,1] |
Definition at line 294 of file shapefunc.h.
References Numeric.
Referenced by basso::Quad8Basis::Na().
void basso::shape_quad9 | ( | nArray & | Na, | |
const Numeric & | xi = 0.0 , |
|||
const Numeric & | eta = 0.0 | |||
) |
Computes the shape function for a nine node quadrilateral element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[-1,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[-1,1] |
Definition at line 361 of file shapefunc.h.
void basso::shape_tetra10 | ( | nArray & | Na, | |
const Numeric & | xi = 0.166666666666667 , |
|||
const Numeric & | eta = 0.166666666666667 , |
|||
const Numeric & | zeta = 0.166666666666667 | |||
) |
Computes the shape function for a ten node tetrahedal element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at | |
eta | the point in the parent coordinate space where the shape functions are evalueated at | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at |
Definition at line 572 of file shapefunc.h.
References Numeric.
Referenced by basso::Tetra10Basis::Na().
void basso::shape_tetra4 | ( | nArray & | Na, | |
const Numeric & | xi = 0.166666666666667 , |
|||
const Numeric & | eta = 0.166666666666667 , |
|||
const Numeric & | zeta = 0.166666666666667 | |||
) |
Computes the shape function for a four node tetrahedal element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta | |
zeta | the point in the parent coordinate space where the shape functions are evalueated at |
Definition at line 520 of file shapefunc.h.
Referenced by basso::Tetra4Basis::Na().
void basso::shape_tria3 | ( | nArray & | Na, | |
const Numeric & | xi = 0.33333333333333 , |
|||
const Numeric & | eta = 0.33333333333333 | |||
) |
Computes the shape function for a three node triangle element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[0,1-xi] |
Definition at line 115 of file shapefunc.h.
Referenced by basso::Tria3Basis::Na().
void basso::shape_tria4 | ( | nArray & | Na, | |
const Numeric & | xi = 0.33333333333333 , |
|||
const Numeric & | eta = 0.33333333333333 | |||
) |
Computes the shape function for a four node triangle element (cubic bubble)
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[0,1-xi] |
Definition at line 157 of file shapefunc.h.
void basso::shape_tria6 | ( | nArray & | Na, | |
const Numeric & | xi = 0.33333333333333 , |
|||
const Numeric & | eta = 0.33333333333333 | |||
) |
Computes the shape function for a six node triangle element
Na | the vector where the shape functionvalues are returned | |
xi | the point in the parent coordinate space where the shape functions are evalueated at xi=[0,1] | |
eta | the point in the parent coordinate space where the shape functions are evalueated at eta=[0,1-xi] |
Definition at line 202 of file shapefunc.h.
Referenced by basso::Tria6Basis::Na().
void basso::superlu_solve_constrained | ( | DynamicCSRMatrix & | K, | |
nArray & | x, | |||
const INDX & | ifix | |||
) | [inline] |
Solves a system Kx=f with the additional nodal constraints x(ifix)=0.0. This is good for solution of systems arrising from finite elmeent and other variational methods. This is a templated function that should work for all Gmm++ objects.
K | global matrix. | |
x | inputs RHS vector and on return contains the nodal solution. | |
ifix | indicies which are fixed. |
Definition at line 236 of file basic_fem_operations.h.
void basso::superlu_solve_constrained | ( | DynamicCSRMatrix & | K, | |
nArray & | x, | |||
const INDX & | ifix, | |||
NVECT & | ival | |||
) | [inline] |
Solves a system Kx=f with the additional nodal constraints x(ifix)=ival. This is good for solution of systems arrising from finite element and other variational methods. This is a templated function that should work for all Gmm++ objects.
K | global matrix. | |
x | inputs RHS vector and on return contains the nodal solution. | |
ifix | indicies which are fixed. | |
ival | inputs values for the fixed indices, and on return contains the reaction forces. |
Definition at line 189 of file basic_fem_operations.h.
References CSRMatrix, DynamicCSRMatrix, and Numeric.
void basso::tensor2voigt | ( | const nMatrix & | tstress, | |
nArray & | vstress | |||
) |
converts a stress tensor in full matrix tensor form to Voigt form
Definition at line 32 of file StressState.h.
void basso::tensorial_quadrature_rule | ( | const QuadratureRule & | q1, | |
const QuadratureRule & | q2, | |||
QuadratureRule & | qr | |||
) |
computes 2D tensorial product quadrature rules from 1D rules.
q1 | input rule | |
q2 | second input rule | |
q3 | output tensorial rule |
Definition at line 159 of file quadrature_rules.h.
References Numeric.
void basso::voigt2tensor | ( | const nArray & | vstress, | |
nMatrix & | tstress | |||
) |
converts a stress tensor in Voigt from to a full matrix tensor form
Definition at line 24 of file StressState.h.