MFEM  v3.1
Finite element discretization library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
mfem::NURBSPatch Class Reference

#include <nurbs.hpp>

Collaboration diagram for mfem::NURBSPatch:
[legend]

Public Member Functions

 NURBSPatch (std::istream &input)
 
 NURBSPatch (KnotVector *kv0, KnotVector *kv1, int dim_)
 
 NURBSPatch (KnotVector *kv0, KnotVector *kv1, KnotVector *kv2, int dim_)
 
 NURBSPatch (Array< KnotVector * > &kv, int dim_)
 
 ~NURBSPatch ()
 
void Print (std::ostream &out)
 
void DegreeElevate (int dir, int t)
 
void KnotInsert (int dir, const KnotVector &knot)
 
void KnotInsert (int dir, const Vector &knot)
 
void KnotInsert (Array< KnotVector * > &knot)
 
void DegreeElevate (int t)
 
void UniformRefinement ()
 
KnotVectorGetKV (int i)
 
double & operator() (int i, int j, int l)
 
const double & operator() (int i, int j, int l) const
 
double & operator() (int i, int j, int k, int l)
 
const double & operator() (int i, int j, int k, int l) const
 
void FlipDirection (int dir)
 
void SwapDirections (int dir1, int dir2)
 
void Rotate3D (double normal[], double angle)
 
int MakeUniformDegree ()
 

Static Public Member Functions

static void Get3DRotationMatrix (double n[], double angle, double r, DenseMatrix &T)
 

Protected Member Functions

void swap (NURBSPatch *np)
 
int SetLoopDirection (int dir)
 
double & operator() (int i, int j)
 
const double & operator() (int i, int j) const
 
void init (int dim_)
 
 NURBSPatch (NURBSPatch *parent, int dir, int Order, int NCP)
 

Protected Attributes

int ni
 
int nj
 
int nk
 
int Dim
 
double * data
 
Array< KnotVector * > kv
 
int sd
 
int nd
 

Friends

NURBSPatchInterpolate (NURBSPatch &p1, NURBSPatch &p2)
 
NURBSPatchRevolve3D (NURBSPatch &patch, double n[], double ang, int times)
 

Detailed Description

Definition at line 83 of file nurbs.hpp.

Constructor & Destructor Documentation

mfem::NURBSPatch::NURBSPatch ( NURBSPatch parent,
int  dir,
int  Order,
int  NCP 
)
protected

Definition at line 388 of file nurbs.cpp.

mfem::NURBSPatch::NURBSPatch ( std::istream &  input)

Definition at line 318 of file nurbs.cpp.

mfem::NURBSPatch::NURBSPatch ( KnotVector kv0,
KnotVector kv1,
int  dim_ 
)

Definition at line 360 of file nurbs.cpp.

mfem::NURBSPatch::NURBSPatch ( KnotVector kv0,
KnotVector kv1,
KnotVector kv2,
int  dim_ 
)

Definition at line 368 of file nurbs.cpp.

mfem::NURBSPatch::NURBSPatch ( Array< KnotVector * > &  kv,
int  dim_ 
)

Definition at line 378 of file nurbs.cpp.

mfem::NURBSPatch::~NURBSPatch ( )

Definition at line 429 of file nurbs.cpp.

Member Function Documentation

void mfem::NURBSPatch::DegreeElevate ( int  dir,
int  t 
)

Definition at line 681 of file nurbs.cpp.

void mfem::NURBSPatch::DegreeElevate ( int  t)

Definition at line 672 of file nurbs.cpp.

void mfem::NURBSPatch::FlipDirection ( int  dir)

Definition at line 932 of file nurbs.cpp.

void mfem::NURBSPatch::Get3DRotationMatrix ( double  n[],
double  angle,
double  r,
DenseMatrix T 
)
static

Definition at line 968 of file nurbs.cpp.

KnotVector* mfem::NURBSPatch::GetKV ( int  i)
inline

Definition at line 122 of file nurbs.hpp.

void mfem::NURBSPatch::init ( int  dim_)
protected

Definition at line 277 of file nurbs.cpp.

void mfem::NURBSPatch::KnotInsert ( int  dir,
const KnotVector knot 
)

Definition at line 543 of file nurbs.cpp.

void mfem::NURBSPatch::KnotInsert ( int  dir,
const Vector knot 
)

Definition at line 570 of file nurbs.cpp.

void mfem::NURBSPatch::KnotInsert ( Array< KnotVector * > &  knot)

Definition at line 535 of file nurbs.cpp.

int mfem::NURBSPatch::MakeUniformDegree ( )

Definition at line 1033 of file nurbs.cpp.

double & mfem::NURBSPatch::operator() ( int  i,
int  j 
)
inlineprotected

Definition at line 409 of file nurbs.hpp.

const double & mfem::NURBSPatch::operator() ( int  i,
int  j 
) const
inlineprotected

Definition at line 414 of file nurbs.hpp.

double & mfem::NURBSPatch::operator() ( int  i,
int  j,
int  l 
)
inline

Definition at line 419 of file nurbs.hpp.

const double & mfem::NURBSPatch::operator() ( int  i,
int  j,
int  l 
) const
inline

Definition at line 432 of file nurbs.hpp.

double & mfem::NURBSPatch::operator() ( int  i,
int  j,
int  k,
int  l 
)
inline

Definition at line 445 of file nurbs.hpp.

const double & mfem::NURBSPatch::operator() ( int  i,
int  j,
int  k,
int  l 
) const
inline

Definition at line 458 of file nurbs.hpp.

void mfem::NURBSPatch::Print ( std::ostream &  out)

Definition at line 442 of file nurbs.cpp.

void mfem::NURBSPatch::Rotate3D ( double  normal[],
double  angle 
)

Definition at line 1007 of file nurbs.cpp.

int mfem::NURBSPatch::SetLoopDirection ( int  dir)
protected

Definition at line 466 of file nurbs.cpp.

void mfem::NURBSPatch::swap ( NURBSPatch np)
protected

Definition at line 403 of file nurbs.cpp.

void mfem::NURBSPatch::SwapDirections ( int  dir1,
int  dir2 
)

Definition at line 944 of file nurbs.cpp.

void mfem::NURBSPatch::UniformRefinement ( )

Definition at line 525 of file nurbs.cpp.

Friends And Related Function Documentation

NURBSPatch* Interpolate ( NURBSPatch p1,
NURBSPatch p2 
)
friend

Definition at line 1052 of file nurbs.cpp.

NURBSPatch* Revolve3D ( NURBSPatch patch,
double  n[],
double  ang,
int  times 
)
friend

Definition at line 1099 of file nurbs.cpp.

Member Data Documentation

double* mfem::NURBSPatch::data
protected

Definition at line 87 of file nurbs.hpp.

int mfem::NURBSPatch::Dim
protected

Definition at line 86 of file nurbs.hpp.

Array<KnotVector *> mfem::NURBSPatch::kv
protected

Definition at line 89 of file nurbs.hpp.

int mfem::NURBSPatch::nd
protected

Definition at line 91 of file nurbs.hpp.

int mfem::NURBSPatch::ni
protected

Definition at line 86 of file nurbs.hpp.

int mfem::NURBSPatch::nj
protected

Definition at line 86 of file nurbs.hpp.

int mfem::NURBSPatch::nk
protected

Definition at line 86 of file nurbs.hpp.

int mfem::NURBSPatch::sd
protected

Definition at line 91 of file nurbs.hpp.


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