SundanceCurveIntegralCalc.hpp
Go to the documentation of this file.
00001 /*
00002  * SundanceCurveIntagralCalc.hpp
00003  *
00004  *  Created on: Sep 2, 2010
00005  *      Author: benk
00006  */
00007 
00008 #ifndef SUNDANCECURVEINTEGRALCALC_HPP_
00009 #define SUNDANCECURVEINTEGRALCALC_HPP_
00010 
00011 #include "SundanceParametrizedCurve.hpp"
00012 #include "SundanceOut.hpp"
00013 #include "SundancePoint.hpp"
00014 #include "SundanceQuadratureFamily.hpp"
00015 #include "SundanceCellType.hpp"
00016 #include "SundanceMesh.hpp"
00017 
00018 namespace Sundance {
00019 
00020 /** Class to compute the intersection/quadrature points of a cell with a curve in 2/3D */
00021 class CurveIntegralCalc {
00022 public:
00023 
00024   /** Empty Ctor*/
00025   CurveIntegralCalc();
00026 
00027   virtual ~CurveIntegralCalc() {;}
00028 
00029     /**
00030          [in]  maxCellType <br>
00031          [in]  const Array<Point>& cellPoints (the physical points of the cell) <br>
00032          [in]  paramCurve <br>
00033          [in]  Quadraturefamily , quadrature 1D for curve, or 2D for surface <br>
00034          [out] Array<Point>& curvePoints <br>
00035          [out] Array<Point>& curveDerivs  <br>
00036          [out] Array<Point>& curveNormals <br> */
00037 
00038     static void getCurveQuadPoints(CellType  maxCellType ,
00039                                int maxCellLID ,
00040                                const Mesh& mesh ,
00041                    const ParametrizedCurve& paramCurve,
00042                    const QuadratureFamily& quad ,
00043                    Array<Point>& curvePoints ,
00044                    Array<Point>& curveDerivs ,
00045                    Array<Point>& curveNormals );
00046 
00047 private :
00048 
00049     static void getCurveQuadPoints_line(
00050                                    CellType  maxCellType ,
00051                                    const Array<Point>& cellPoints,
00052                    const ParametrizedCurve& paramCurve,
00053                    const QuadratureFamily& quad ,
00054                    Array<Point>& curvePoints ,
00055                    Array<Point>& curveDerivs ,
00056                    Array<Point>& curveNormals );
00057 
00058 };
00059 
00060 }
00061 
00062 #endif /* SUNDANCECURVEINTEGRALCALC_HPP_ */

Site Contact