SchwarzChristoffelRampCS Class Reference

#include <SchwarzChristoffelRampCS.H>

Inheritance diagram for SchwarzChristoffelRampCS:

Inheritance graph
[legend]

List of all members.


Detailed Description

Conformal Schwarz-Christoffel mapping of a ramp.

 *  Physical-space (z)                Computational Space
 *
 *      ^                               ^
 *    i |      ,-+                    i |
 *         ,--'  |
 *     ,--'       \                     +-----------+
 *  +-'          ,+                     |           |
 *   \        ,-'                       |           |
 *    |    ,-'  alpha                   |           |
 *    +--*'- - - - - - >                +--*--------+ - - - >
 *       0                                 \hat(xi)_0
 *                                                                  

$ z = k(xi - \hat(xi))^c e^(i\alpha)$ where $alpha$ = angle of ramp $\hat(xi)_0$ = location of corner $c = 1 - \alpha/\pi$ $k = len/(\hat(xi)_0^c + (1 - \hat(xi)_0)^c)$ where len is the length of the bottom boundary (both the horizontal and following the ramp) in physical space

Note:
  • In computational space, the domain extends from 0 to 1 in the x direction and the corner is anchored at m_xiCorner. The cells are square and the domain extends from 0 in the y direction (height is not specified)
  • In the physical space, the corner is anchored at (0, 0) and the length of the bottom boundary is specified.
  • If a third dimension is hanging around, it is scaled by k
  • Tolerances tested up to 1024 cells in X-Dir.

Public Member Functions

 SchwarzChristoffelRampCS (const RealVect &a_dx, const int a_nCellBaseDir0, const Real a_alpha=Pi/6., const Real a_XLeadLength=0.5, const Real a_XRampLength=4.5)
 Constructor.
virtual ~SchwarzChristoffelRampCS ()
 Destructor.
virtual RealVect realCoord (const RealVect &a_hatXi) const
 Given coordinate in mapped space, return its location in real space.
virtual RealVect mappedCoord (const RealVect &a_x) const
 Given coordinate in real space, return its location in the mapped space.
virtual Real dXdXi (const RealVect &a_Xi, int a_dirX, int a_dirXi) const
 Calculate the derivative of each coordinate vector.
Real rampAngle () const
 Return the angle of the ramp in radians.
const RealVectmappedCorner () const
 Return the location of the corner point in mapped space.
Real physicalDomainX0Min () const
 Return the x-location of lower left domain corner in physical space.

Protected Member Functions

RealVect getPolar (const RealVect &a_Xi) const
 Get a complex in polar coordinates.

Protected Attributes

const Real m_alpha
 Ramp angle (0 <= m_alpha < Pi).
const Real m_c
 Exponent coefficient.
Real m_k
RealVect m_XiCorner
 Corner in mapped space.

Constructor & Destructor Documentation

SchwarzChristoffelRampCS::SchwarzChristoffelRampCS ( const RealVect a_dx,
const int  a_nCellBaseDir0,
const Real  a_alpha = Pi/6.,
const Real  a_XLeadLength = 0.5,
const Real  a_XRampLength = 4.5 
)

Constructor.

virtual SchwarzChristoffelRampCS::~SchwarzChristoffelRampCS (  )  [virtual]

Destructor.


Member Function Documentation

virtual RealVect SchwarzChristoffelRampCS::realCoord ( const RealVect a_hatXi  )  const [virtual]

Given coordinate in mapped space, return its location in real space.

Implements NewFourthOrderCoordSys.

virtual RealVect SchwarzChristoffelRampCS::mappedCoord ( const RealVect a_x  )  const [virtual]

Given coordinate in real space, return its location in the mapped space.

Implements NewFourthOrderCoordSys.

virtual Real SchwarzChristoffelRampCS::dXdXi ( const RealVect a_Xi,
int  a_dirX,
int  a_dirXi 
) const [virtual]

Calculate the derivative of each coordinate vector.

Implements NewFourthOrderCoordSys.

Real SchwarzChristoffelRampCS::rampAngle (  )  const [inline]

Return the angle of the ramp in radians.

References m_alpha.

const RealVect & SchwarzChristoffelRampCS::mappedCorner (  )  const [inline]

Return the location of the corner point in mapped space.

References m_XiCorner.

Real SchwarzChristoffelRampCS::physicalDomainX0Min (  )  const [inline]

Return the x-location of lower left domain corner in physical space.

References m_c, m_k, and m_XiCorner.

RealVect SchwarzChristoffelRampCS::getPolar ( const RealVect a_Xi  )  const [protected]

Get a complex in polar coordinates.


Member Data Documentation

Ramp angle (0 <= m_alpha < Pi).

Referenced by rampAngle().

Exponent coefficient.

Referenced by physicalDomainX0Min().

Scaling between mapped and physical space

Referenced by physicalDomainX0Min().

Corner in mapped space.

Referenced by mappedCorner(), and physicalDomainX0Min().


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

Generated on Fri Nov 24 03:27:24 2017 for Chombo + EB + MF by  doxygen 1.5.5