QuOc

 

Public Member Functions | Public Attributes

eik::EikonalNAWithExtensionVelocity< RealType > Class Template Reference

#include <eikonalNA.h>

Inheritance diagram for eik::EikonalNAWithExtensionVelocity< RealType >:
eik::EikonalNAInt< RealType, EikonalNAWithExtensionVelocity< RealType >, qc::QC_2D >

List of all members.

Public Member Functions

 EikonalNAWithExtensionVelocity (const qc::GridDefinition &Grid)
void setExtVelocityField (qc::ScalarArray< RealType, qc::QC_2D > &extVelocity)
RealType getSpeed (int, int)
void updateExtensionVelocity (const aol::Vec2< short > &oldNode, const aol::Vec2< short > &newNode, const aol::Vec2< short > &thirdNode, RealType newT)
void updateExtensionVelocity (const aol::Vec2< short > &newNode, const aol::Vec2< short > &oldNode)
void newNodeInserted (const aol::Vec2< short > &)

Public Attributes

qc::ScalarArray< RealType,
qc::QC_2D > * 
_extVelocity

Detailed Description

template<typename RealType>
class eik::EikonalNAWithExtensionVelocity< RealType >

Definition at line 804 of file eikonalNA.h.


Constructor & Destructor Documentation

template<typename RealType>
eik::EikonalNAWithExtensionVelocity< RealType >::EikonalNAWithExtensionVelocity ( const qc::GridDefinition Grid  )  [inline]

Definition at line 806 of file eikonalNA.h.

      : EikonalNAInt<RealType, EikonalNAWithExtensionVelocity<RealType> , qc::QC_2D > ( Grid ), _extVelocity ( NULL ) {}


Member Function Documentation

template<typename RealType>
RealType eik::EikonalNAWithExtensionVelocity< RealType >::getSpeed ( int  ,
int   
) [inline]

Definition at line 811 of file eikonalNA.h.

                                             {
    return 1.;
  }

template<typename RealType>
void eik::EikonalNAWithExtensionVelocity< RealType >::newNodeInserted ( const aol::Vec2< short > &   )  [inline]

Definition at line 835 of file eikonalNA.h.

{ }

template<typename RealType>
void eik::EikonalNAWithExtensionVelocity< RealType >::setExtVelocityField ( qc::ScalarArray< RealType, qc::QC_2D > &  extVelocity  )  [inline]

Definition at line 809 of file eikonalNA.h.

Referenced by qc::SignedDistAndExtVelocityOp< ConfiguratorType >::setExtVelocityField().

{ _extVelocity = &extVelocity; }

template<typename RealType>
void eik::EikonalNAWithExtensionVelocity< RealType >::updateExtensionVelocity ( const aol::Vec2< short > &  oldNode,
const aol::Vec2< short > &  newNode,
const aol::Vec2< short > &  thirdNode,
RealType  newT 
) [inline]

Definition at line 815 of file eikonalNA.h.

                                                                                                                                                 {
    if ( _extVelocity == NULL ) {
      throw aol::Exception ( "set velocity field first.", __FILE__, __LINE__ );
    }
    RealType ta = this->timeField->get ( oldNode );
    RealType tb = this->timeField->get ( thirdNode );
    RealType fa = _extVelocity->get ( oldNode );
    RealType fb = _extVelocity->get ( thirdNode );
    _extVelocity->set ( newNode.x(), newNode.y(), ( fa* ( newT - ta ) + fb* ( newT - tb ) ) / ( 2.*newT - ta - tb ) );
  }

template<typename RealType>
void eik::EikonalNAWithExtensionVelocity< RealType >::updateExtensionVelocity ( const aol::Vec2< short > &  newNode,
const aol::Vec2< short > &  oldNode 
) [inline]

Definition at line 826 of file eikonalNA.h.

                                                                                                {
    if ( _extVelocity == NULL ) {
      throw aol::Exception ( "set velocity field first.", __FILE__, __LINE__ );
    }
    _extVelocity->set ( newNode.x(), newNode.y() , _extVelocity->get ( oldNode.x(), oldNode.y() ) );
  }


Member Data Documentation


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

Generated on Fri Sep 9 2011 21:09:21 for QuocMesh by doxygen 1.7.1