ParMooN
 All Classes Functions Variables Friends Pages
Public Member Functions | Protected Attributes | List of all members
TBdNonUniformSpline Class Reference

#include <BdNonUniformSpline.h>

Inheritance diagram for TBdNonUniformSpline:
Inheritance graph
[legend]
Collaboration diagram for TBdNonUniformSpline:
Collaboration graph
[legend]

Public Member Functions

 TBdNonUniformSpline (int id, int N_Splines)
 
void SetParams (double *params)
 
int GetN_Splines ()
 
virtual int GetXYofT (double T, double &X, double &Y)
 
virtual int GetTofXY (double X, double Y, double &T)
 
virtual int ReadIn (std::ifstream &dat)
 
virtual int GetN_InitVerts ()
 
virtual int GenInitVerts (double *&points, int I_points, int *&edges, int I_edges)
 
double GetLocalXofT (int ISpline, double LocalT)
 
double GetLocalYofT (int ISpline, double LocalT)
 
void GenerateParams1 (double *x, double *y, double dx0, double dy0, double dx1, double dy1)
 
void Solver_3diag (double *a, double *b, double *c, double *rhs, double *sol)
 
double AdXofT (int ISpline, double LocalT)
 
double AdYofT (int ISpline, double LocalT)
 
double GetLocalDXofT (int ISpline, double LocalT)
 
double GetLocalDYofT (int ISpline, double LocalT)
 
- Public Member Functions inherited from TBoundComp2D
 TBoundComp2D (int id)
 
- Public Member Functions inherited from TBoundComp
 TBoundComp (int id, int ref=-1)
 
int GetID () const
 
BoundTypes GetType () const
 
bool IsFreeBoundary () const
 
void SetFreeBoundaryStatus (bool status)
 
void ChangeType (BoundTypes New_Type)
 
void SetRefID (int _ref)
 
int GetRefID () const
 

Protected Attributes

int N_Splines
 
double * Params
 
double * Param9
 
- Protected Attributes inherited from TBoundComp
int ID
 
BoundTypes Type
 
bool FreeBoundaryStatus
 
int refID
 

Detailed Description

spline function as a component of a boundary part

Constructor & Destructor Documentation

TBdNonUniformSpline::TBdNonUniformSpline ( int  id,
int  N_Splines 
)

constructor initializes the parameter array

Member Function Documentation

double TBdNonUniformSpline::AdXofT ( int  ISpline,
double  T 
)

for BEM (x-x_middle)/t

for BEM (x-x_middle)/(t-0.5)

double TBdNonUniformSpline::AdYofT ( int  ISpline,
double  T 
)

(y-y_middle)/t

for BEM (y-y_middle)/(t-0.5)

void TBdNonUniformSpline::GenerateParams1 ( double *  x,
double *  y,
double  dx0,
double  dy0,
double  dx1,
double  dy1 
)

Generate all parameters according to the info about the pisition of boundary points and the values of derivatives at the ends of boundary; the parameter is the cumulative length of the piecewise line that joints the boundary points

Here is the call graph for this function:

double TBdNonUniformSpline::GetLocalDXofT ( int  ISpline,
double  T 
)

x'(t)

for BEM x'(t)

double TBdNonUniformSpline::GetLocalDYofT ( int  ISpline,
double  T 
)

y'(t)

for BEM y'(t)

double TBdNonUniformSpline::GetLocalXofT ( int  ISpline,
double  LocalT 
)

return the X-coordinate of parameter value T from [0;1] on the ISpline-th subspline

Here is the caller graph for this function:

double TBdNonUniformSpline::GetLocalYofT ( int  ISpline,
double  LocalT 
)

return the Y-coordinate of parameter value T from [0;1] on the ISpline-th subspline

Here is the caller graph for this function:

virtual int TBdNonUniformSpline::GetN_InitVerts ( )
inlinevirtual

get number of initial vertices on this component

Implements TBoundComp2D.

int TBdNonUniformSpline::GetN_Splines ( )

get number of splines

int TBdNonUniformSpline::GetTofXY ( double  X,
double  Y,
double &  T 
)
virtual

return the parameter value T of coordinates (X, Y)

Implements TBoundComp2D.

Here is the call graph for this function:

int TBdNonUniformSpline::GetXYofT ( double  T,
double &  X,
double &  Y 
)
virtual

return new inner points for a good boundary approximation return the coordinates of parameter value T

Implements TBoundComp2D.

int TBdNonUniformSpline::ReadIn ( std::ifstream &  dat)
virtual

read parameter from input file

Implements TBoundComp.

void TBdNonUniformSpline::SetParams ( double *  params)

set all parameters

void TBdNonUniformSpline::Solver_3diag ( double *  a,
double *  b,
double *  c,
double *  rhs,
double *  sol 
)

Solution of a tridiagonal matrix with diagonal elements 'a', subdiagonal elemets 'b' and updiagonal elements 'c' a[i], i=0..N_Splines-1, b[i], i=1..N_Splines-1, c[i], i=0..N_Splines-2

Here is the caller graph for this function:

Member Data Documentation

int TBdNonUniformSpline::N_Splines
protected

number of subsplines

double* TBdNonUniformSpline::Param9
protected

array for the values of parameter T at the i-th boundary points

double* TBdNonUniformSpline::Params
protected

array for all parameters


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