Poster of Linux kernelThe best gift for a Linux geek
InfFE::Radial

InfFE::Radial

Section: C Library Functions (3) Updated: Thu Apr 7 2011
Local index Up
 

NAME

InfFE::Radial -  

SYNOPSIS


#include <inf_fe.h>  

Static Public Member Functions


static Real decay (const Real v)

static Real decay_deriv (const Real)

static Real D (const Real v)

static Real D_deriv (const Real v)

static Order mapping_order ()

static unsigned int n_dofs (const Order o_radial)

static unsigned int n_dofs_at_node (const Order o_radial, const unsigned int n_onion)

static unsigned int n_dofs_per_elem (const Order o_radial)
 

Private Member Functions


Radial ()
 

Detailed Description

 

template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> class InfFE< Dim, T_radial, T_map >::Radial

Infinite elements are in some sense directional, compared to conventional finite elements. All methods related to the radial part, which extends perpendicular from the base, are collected in this nested class. This class offers static methods, which are only available to InfFE members.

Author:

Daniel Dreyer

Date:

2003

Version:

Revision:

3391

Definition at line 96 of file inf_fe.h.  

Constructor & Destructor Documentation

 

template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> InfFE< Dim, T_radial, T_map >::Radial::Radial () [inline, private]Never use an object of this type.

Definition at line 103 of file inf_fe.h.

{}
 

Member Function Documentation

 

template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> static Real InfFE< Dim, T_radial, T_map >::Radial::D (const Realv) [inline, static]Returns:

the radial weight D, used as an additional weight for the test function, evaluated at local radial coordinate v.

Definition at line 123 of file inf_fe.h.

{ return (1.-v)*(1.-v)/4.; }
 

template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> static Real InfFE< Dim, T_radial, T_map >::Radial::D_deriv (const Realv) [inline, static]Returns:

the first (local) radial derivative of the radial weight D.

Definition at line 128 of file inf_fe.h.

{ return (v-1.)/2.; }
 

template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> Real InfFE< Dim, T_radial, T_map >::Radial::decay (const Realv) [inline, static]Returns:

the decay in radial direction of the Dim dimensional infinite element.

Definition at line 827 of file inf_fe.h.

Referenced by InfFE< Dim, T_radial, T_map >::compute_data(), and InfFE< Dim, T_radial, T_map >::shape().

{
  switch (Dim)
  //TODO:[DD] What decay do i have in 2D and 1D?
  {
    case 3:
      return (1.-v)/2.;

    case 2:
      return 0.;

    case 1:
      return 0.;

    default:
      libmesh_error();
      return 0.;
  }
}
 

template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> static Real InfFE< Dim, T_radial, T_map >::Radial::decay_deriv (const Real) [inline, static]Returns:

the first (local) derivative of the decay in radial direction of the infinite element.

Definition at line 117 of file inf_fe.h.

{ return -.5; }
 

template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> static Order InfFE< Dim, T_radial, T_map >::Radial::mapping_order () [inline, static]Returns:

the Order of the mapping functions in radial direction. Currently, this is always FIRST.

Definition at line 134 of file inf_fe.h.

References libMeshEnums::FIRST.

Referenced by InfFE< Dim, T_radial, T_map >::compute_data(), InfFE< Dim, T_radial, T_map >::inverse_map(), and InfFE< Dim, T_radial, T_map >::map().

{ return FIRST; }
 

template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> static unsigned int InfFE< Dim, T_radial, T_map >::Radial::n_dofs (const Ordero_radial) [inline, static]Returns:

the number of shape functions in radial direction associated with this infinite element. Either way, if the modes are stored as nodal dofs (n_dofs_at_node) or as element dofs (n_dofs_per_elem), in each case we have the same number of modes in radial direction. Note that for the case of 1D infinite elements, in the base the dof-per-node scheme is used.

From the formulation of the infinite elements, we have 1 mode, when o_radial=CONST. Therefore, we have a total of o_radial+1 modes in radial direction.

Definition at line 148 of file inf_fe.h.

Referenced by InfFE< Dim, T_radial, T_map >::n_dofs().

        { return static_cast<unsigned int>(o_radial)+1; }
 

template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> unsigned int InfFE< Dim, T_radial, T_map >::Radial::n_dofs_at_node (const Ordero_radial, const unsigned intn_onion) [static]Returns:

the number of dofs in radial direction on 'onion slice' n (either 0 or 1) for an infinite element of type inf_elem_type and radial order o_radial.

Currently, the first radial mode is associated with the nodes in the base. All higher radial modes are associated with the physically existing nodes further out.

Definition at line 126 of file inf_fe_base_radial.C.

Referenced by InfFE< Dim, T_radial, T_map >::n_dofs_at_node().

{
  libmesh_assert (n_onion < 2);

  if (n_onion == 0)
    /*
     * in the base, no matter what, we have 1 node associated 
     * with radial direction
     */
    return 1;
  else
    /*
     * this works, since for Order o_radial=CONST=0, we still
     * have the (1-v)/2 mode, associated to the base
     */
    return static_cast<unsigned int>(o_radial);
}
 

template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> static unsigned int InfFE< Dim, T_radial, T_map >::Radial::n_dofs_per_elem (const Ordero_radial) [inline, static]Returns:

the number of modes in radial direction interior to the element, not associated with any interior nodes. Note that these modes are a discontinuous approximation, therefore we have no special formulation for coupling in the base, like in the case of associating (possibly) multiple dofs per (outer) node.

Definition at line 170 of file inf_fe.h.

Referenced by InfFE< Dim, T_radial, T_map >::n_dofs_per_elem().

        { return static_cast<unsigned int>(o_radial)+1; }

 

Author

Generated automatically by Doxygen for libMesh from the source code.


 

Index

NAME
SYNOPSIS
Static Public Member Functions
Private Member Functions
Detailed Description
template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> class InfFE< Dim, T_radial, T_map >::Radial
Constructor & Destructor Documentation
template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> InfFE< Dim, T_radial, T_map >::Radial::Radial () [inline, private]Never use an object of this type.
Member Function Documentation
template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> static Real InfFE< Dim, T_radial, T_map >::Radial::D (const Realv) [inline, static]Returns:
template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> static Real InfFE< Dim, T_radial, T_map >::Radial::D_deriv (const Realv) [inline, static]Returns:
template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> Real InfFE< Dim, T_radial, T_map >::Radial::decay (const Realv) [inline, static]Returns:
template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> static Real InfFE< Dim, T_radial, T_map >::Radial::decay_deriv (const Real) [inline, static]Returns:
template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> static Order InfFE< Dim, T_radial, T_map >::Radial::mapping_order () [inline, static]Returns:
template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> static unsigned int InfFE< Dim, T_radial, T_map >::Radial::n_dofs (const Ordero_radial) [inline, static]Returns:
template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> unsigned int InfFE< Dim, T_radial, T_map >::Radial::n_dofs_at_node (const Ordero_radial, const unsigned intn_onion) [static]Returns:
template<unsigned int Dim, FEFamily T_radial, InfMapType T_map> static unsigned int InfFE< Dim, T_radial, T_map >::Radial::n_dofs_per_elem (const Ordero_radial) [inline, static]Returns:
Author

This document was created by man2html, using the manual pages.
Time: 21:48:29 GMT, April 16, 2011