A Class for the derivatives of shape functions The class design is essentially the same as Shape, but there is on additional index that is used to indicate the coordinate direction in which the derivative is taken. More...
#include <shape.h>
Public Member Functions  
DShape (const unsigned &N, const unsigned &P)  
Constructor with two parameters: a singleindex shape function. More...  
DShape (const unsigned &N, const unsigned &M, const unsigned &P)  
Constructor with three paramters: a twoindex shape function. More...  
DShape ()  
Default constructor  just assigns a null pointers and zero index sizes. More...  
DShape (const DShape &dshape)=delete  
Broken copy constructor. More...  
void  operator= (const DShape &dshape) 
The assignment operator does a shallow copy (resets the pointer to the data) More...  
void  operator= (DShape *const &dshape_pt) 
The assignment operator does a shallow copy (resets the pointer to the data) More...  
~DShape ()  
Destructor, clean up the memory allocated by this object. More...  
void  resize (const unsigned &N, const unsigned &P, const unsigned &M=1) 
Change the size of the storage. Note that (for some strange reason) index2 is the "optional" index, to conform with the existing constructor. More...  
double &  operator() (const unsigned &i, const unsigned &k) 
Overload the round bracket operator for access to the data. More...  
const double &  operator() (const unsigned &i, const unsigned &k) const 
Overload the round bracket operator (const version) More...  
double &  operator() (const unsigned &i, const unsigned &j, const unsigned &k) 
Overload the round bracket operator, with 3 indices. More...  
const double &  operator() (const unsigned &i, const unsigned &j, const unsigned &k) const 
Overload the round bracket operator (const version) More...  
double &  raw_direct_access (const unsigned long &i) 
Direct access to internal storage of data in flatpacked Cstyle columnmajor format. WARNING: Only for experienced users. Only use this if raw speed is of the essence, as in the solid mechanics problems. More...  
const double &  raw_direct_access (const unsigned long &i) const 
Direct access to internal storage of data in flatpacked Cstyle columnmajor format. WARNING: Only for experienced users. Only use this if raw speed is of the essence, as in the solid mechanics problems. More...  
unsigned  offset (const unsigned long &i, const unsigned long &j) const 
Caculate the offset in flatpacked Cstyle, columnmajor format, required for a given i,j. WARNING: Only for experienced users. Only use this if raw speed is of the essence, as in the solid mechanics problems. More...  
unsigned long  nindex1 () const 
Return the range of index 1 of the derivatives of the shape functions. More...  
unsigned long  nindex2 () const 
Return the range of index 2 of the derivatives of the shape functions. More...  
unsigned long  nindex3 () const 
Return the range of index 3 of the derivatives of the shape functions. More...  
Private Member Functions  
void  range_check (const unsigned &i, const unsigned &j, const unsigned &k) const 
Private function that checks whether the indices are in range. More...  
Private Attributes  
double *  DPsi 
Pointer that addresses the storage that will be used to read and set the shapefunction derivatives. The values are packed into a flat array of doubles. More...  
double *  Allocated_storage 
Pointer that addresses the storage allocated by the object on construction. This will be the same as DPsi if the object is not copied. More...  
unsigned  Index1 
Size of the first index of the shape function. More...  
unsigned  Index2 
Size of the second index of the shape function. More...  
unsigned  Index3 
Size of the third index of the shape function. More...  
A Class for the derivatives of shape functions The class design is essentially the same as Shape, but there is on additional index that is used to indicate the coordinate direction in which the derivative is taken.

inline 
Constructor with two parameters: a singleindex shape function.
Definition at line 332 of file shape.h.
References Allocated_storage, DPsi, and oomph::QuadTreeNames::N.

inline 
Constructor with three paramters: a twoindex shape function.
Definition at line 340 of file shape.h.
References Allocated_storage, DPsi, and oomph::QuadTreeNames::N.

inline 

delete 
Broken copy constructor.

inline 
Destructor, clean up the memory allocated by this object.
Definition at line 401 of file shape.h.
References Allocated_storage.

inline 
Return the range of index 1 of the derivatives of the shape functions.
Definition at line 494 of file shape.h.
References Index1.
Referenced by oomph::ClampedHermiteShellBoundaryConditionElement::dshape_local(), oomph::FiniteElement::transform_derivatives(), oomph::FiniteElement::transform_derivatives_diagonal(), oomph::FiniteElement::transform_second_derivatives_diagonal(), and oomph::FiniteElement::transform_second_derivatives_template().

inline 
Return the range of index 2 of the derivatives of the shape functions.
Definition at line 500 of file shape.h.
References Index2.
Referenced by oomph::ClampedHermiteShellBoundaryConditionElement::dshape_local(), oomph::FiniteElement::transform_derivatives(), oomph::FiniteElement::transform_derivatives_diagonal(), oomph::FiniteElement::transform_second_derivatives_diagonal(), and oomph::FiniteElement::transform_second_derivatives_template().

inline 
Return the range of index 3 of the derivatives of the shape functions.
Definition at line 506 of file shape.h.
References Index3.
Referenced by oomph::ClampedHermiteShellBoundaryConditionElement::dshape_local().

inline 
Caculate the offset in flatpacked Cstyle, columnmajor format, required for a given i,j. WARNING: Only for experienced users. Only use this if raw speed is of the essence, as in the solid mechanics problems.
Definition at line 487 of file shape.h.
References i, Index2, and Index3.
Referenced by oomph::RefineablePVDEquations< DIM >::fill_in_generic_contribution_to_residuals_pvd(), oomph::PVDEquations< DIM >::fill_in_generic_contribution_to_residuals_pvd(), oomph::RefineablePVDEquationsWithPressure< DIM >::fill_in_generic_residual_contribution_pvd_with_pressure(), and oomph::PVDEquationsWithPressure< DIM >::fill_in_generic_residual_contribution_pvd_with_pressure().

inline 

inline 

inline 

inline 

inline 

inline 

inlineprivate 

inline 
Direct access to internal storage of data in flatpacked Cstyle columnmajor format. WARNING: Only for experienced users. Only use this if raw speed is of the essence, as in the solid mechanics problems.
Definition at line 469 of file shape.h.
Referenced by oomph::RefineablePVDEquations< DIM >::fill_in_generic_contribution_to_residuals_pvd(), oomph::PVDEquations< DIM >::fill_in_generic_contribution_to_residuals_pvd(), oomph::RefineablePVDEquationsWithPressure< DIM >::fill_in_generic_residual_contribution_pvd_with_pressure(), and oomph::PVDEquationsWithPressure< DIM >::fill_in_generic_residual_contribution_pvd_with_pressure().

inline 

inline 
Change the size of the storage. Note that (for some strange reason) index2 is the "optional" index, to conform with the existing constructor.
Definition at line 410 of file shape.h.
References Allocated_storage, DPsi, Index1, Index2, Index3, and oomph::QuadTreeNames::N.

private 

private 
Pointer that addresses the storage that will be used to read and set the shapefunction derivatives. The values are packed into a flat array of doubles.
Definition at line 283 of file shape.h.
Referenced by DShape(), operator()(), operator=(), raw_direct_access(), and resize().

private 
Size of the first index of the shape function.
Definition at line 291 of file shape.h.
Referenced by nindex1(), operator=(), range_check(), and resize().

private 
Size of the second index of the shape function.
Definition at line 294 of file shape.h.
Referenced by nindex2(), offset(), operator()(), operator=(), range_check(), and resize().

private 
Size of the third index of the shape function.
Definition at line 297 of file shape.h.
Referenced by nindex3(), offset(), operator()(), operator=(), range_check(), and resize().