Public Member Functions | Private Attributes | List of all members
VorticitySmoother< ELEMENT > Class Template Reference

Smoother for vorticity in 2D. More...

#include <vorticity_smoother.h>

Public Member Functions

 VorticitySmoother (const unsigned &recovery_order)
 Constructor: Set order of recovery shape functions. More...
 
 VorticitySmoother (const VorticitySmoother &)
 Broken copy constructor. More...
 
void operator= (const VorticitySmoother &)
 Broken assignment operator. More...
 
virtual ~VorticitySmoother ()
 Empty virtual destructor. More...
 
unsigned & recovery_order ()
 Access function for order of recovery polynomials. More...
 
void shape_rec (const Vector< double > &x, Vector< double > &psi_r)
 Recovery shape functions as functions of the global, Eulerian coordinate x of dimension dim. The recovery shape functions are complete polynomials of the order specified by Recovery_order. More...
 
Integral * integral_rec (const bool &is_q_mesh)
 
void setup_patches (Mesh *&mesh_pt, std::map< Node *, Vector< ELEMENT *> *> &adjacent_elements_pt, Vector< Node *> &vertex_node_pt)
 Setup patches: For each vertex node pointed to by nod_pt, adjacent_elements_pt[nod_pt] contains the pointer to the vector that contains the pointers to the elements that the node is part of. Also returns a Vector of vertex nodes for use in get_element_errors. More...
 
void get_recovered_vorticity_in_patch (const Vector< ELEMENT *> &patch_el_pt, const unsigned &num_recovery_terms, Vector< double > *&recovered_vorticity_coefficient_pt, unsigned &n_deriv)
 Given the vector of elements that make up a patch, compute the vector of recovered vorticity coefficients and return a pointer to it. n_deriv indicates which derivative of the vorticity is supposed to be smoothed: 0: zeroth (i.e. the vorticity itself) 1: d/dx; 2: d/dy; 3: d^2/dx^2; 4: d^2/dxdy 5: d^2/dy^2 6: d^3/dx^3, 7: d^3/dx^2dy, 8: d^3/dxdy^2, 9: d^3/dy^3, 10: du/dx, 11: du/dy, 12: dv/dx, 13: dv/dy. More...
 
unsigned nrecovery_order () const
 Get the recovery order. More...
 
void recover_vorticity (Mesh *mesh_pt)
 Recover vorticity from patches. More...
 
void recover_vorticity (Mesh *mesh_pt, DocInfo &doc_info)
 Recover vorticity from patches – output intermediate steps to directory specified by DocInfo object. More...
 

Private Attributes

unsigned Recovery_order
 Order of recovery polynomials. More...
 

Detailed Description

template<class ELEMENT>
class VorticitySmoother< ELEMENT >

Smoother for vorticity in 2D.

Definition at line 1816 of file vorticity_smoother.h.

Constructor & Destructor Documentation

◆ VorticitySmoother() [1/2]

template<class ELEMENT >
VorticitySmoother< ELEMENT >::VorticitySmoother ( const unsigned &  recovery_order)
inline

Constructor: Set order of recovery shape functions.

Definition at line 1821 of file vorticity_smoother.h.

◆ VorticitySmoother() [2/2]

template<class ELEMENT >
VorticitySmoother< ELEMENT >::VorticitySmoother ( const VorticitySmoother< ELEMENT > &  )
inline

Broken copy constructor.

Definition at line 1826 of file vorticity_smoother.h.

References oomph::BrokenCopy::broken_copy().

◆ ~VorticitySmoother()

template<class ELEMENT >
virtual VorticitySmoother< ELEMENT >::~VorticitySmoother ( )
inlinevirtual

Empty virtual destructor.

Definition at line 1838 of file vorticity_smoother.h.

Member Function Documentation

◆ get_recovered_vorticity_in_patch()

template<class ELEMENT >
void VorticitySmoother< ELEMENT >::get_recovered_vorticity_in_patch ( const Vector< ELEMENT *> &  patch_el_pt,
const unsigned &  num_recovery_terms,
Vector< double > *&  recovered_vorticity_coefficient_pt,
unsigned &  n_deriv 
)
inline

Given the vector of elements that make up a patch, compute the vector of recovered vorticity coefficients and return a pointer to it. n_deriv indicates which derivative of the vorticity is supposed to be smoothed: 0: zeroth (i.e. the vorticity itself) 1: d/dx; 2: d/dy; 3: d^2/dx^2; 4: d^2/dxdy 5: d^2/dy^2 6: d^3/dx^3, 7: d^3/dx^2dy, 8: d^3/dxdy^2, 9: d^3/dy^3, 10: du/dx, 11: du/dy, 12: dv/dx, 13: dv/dy.

Definition at line 2096 of file vorticity_smoother.h.

References e, i, oomph::oomph_info, s, and oomph::QuadTreeNames::W.

◆ integral_rec()

template<class ELEMENT >
Integral* VorticitySmoother< ELEMENT >::integral_rec ( const bool &  is_q_mesh)
inline

Integation scheme associated with the recovery shape functions must be of sufficiently high order to integrate the mass matrix associated with the recovery shape functions. The argument is the dimension of the elements. The integration is performed locally over the elements, so the integration scheme does depend on the geometry of the element. The type of element is specified by the boolean which is true if elements in the patch are QElements and false if they are TElements (will need change if we ever have other element types)

Find order of recovery shape functions

Definition at line 1913 of file vorticity_smoother.h.

◆ nrecovery_order()

template<class ELEMENT >
unsigned VorticitySmoother< ELEMENT >::nrecovery_order ( ) const
inline

Get the recovery order.

Definition at line 2370 of file vorticity_smoother.h.

◆ operator=()

template<class ELEMENT >
void VorticitySmoother< ELEMENT >::operator= ( const VorticitySmoother< ELEMENT > &  )
inline

Broken assignment operator.

Definition at line 1832 of file vorticity_smoother.h.

References oomph::BrokenCopy::broken_assign().

◆ recover_vorticity() [1/2]

template<class ELEMENT >
void VorticitySmoother< ELEMENT >::recover_vorticity ( Mesh *  mesh_pt)
inline

Recover vorticity from patches.

Definition at line 2410 of file vorticity_smoother.h.

◆ recover_vorticity() [2/2]

template<class ELEMENT >
void VorticitySmoother< ELEMENT >::recover_vorticity ( Mesh *  mesh_pt,
DocInfo &  doc_info 
)
inline

Recover vorticity from patches – output intermediate steps to directory specified by DocInfo object.

Definition at line 2424 of file vorticity_smoother.h.

References e, i, oomph::oomph_info, s, and oomph::TimingHelpers::timer().

◆ recovery_order()

template<class ELEMENT >
unsigned& VorticitySmoother< ELEMENT >::recovery_order ( )
inline

Access function for order of recovery polynomials.

Definition at line 1841 of file vorticity_smoother.h.

◆ setup_patches()

template<class ELEMENT >
void VorticitySmoother< ELEMENT >::setup_patches ( Mesh *&  mesh_pt,
std::map< Node *, Vector< ELEMENT *> *> &  adjacent_elements_pt,
Vector< Node *> &  vertex_node_pt 
)
inline

Setup patches: For each vertex node pointed to by nod_pt, adjacent_elements_pt[nod_pt] contains the pointer to the vector that contains the pointers to the elements that the node is part of. Also returns a Vector of vertex nodes for use in get_element_errors.

Definition at line 1986 of file vorticity_smoother.h.

References e, and oomph::oomph_info.

◆ shape_rec()

template<class ELEMENT >
void VorticitySmoother< ELEMENT >::shape_rec ( const Vector< double > &  x,
Vector< double > &  psi_r 
)
inline

Recovery shape functions as functions of the global, Eulerian coordinate x of dimension dim. The recovery shape functions are complete polynomials of the order specified by Recovery_order.

Definition at line 1850 of file vorticity_smoother.h.

Member Data Documentation

◆ Recovery_order

template<class ELEMENT >
unsigned VorticitySmoother< ELEMENT >::Recovery_order
private

Order of recovery polynomials.

Definition at line 2632 of file vorticity_smoother.h.


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