SyFi::Tetrahedron Class Reference

#include <Polygon.h>

Inheritance diagram for SyFi::Tetrahedron:

SyFi::Polygon SyFi::Polygon SyFi::_object SyFi::_object SyFi::ReferenceTetrahedron SyFi::ReferenceTetrahedron

List of all members.

Public Member Functions

 Tetrahedron (GiNaC::ex x0, GiNaC::ex x1, GiNaC::ex x2, GiNaC::ex x3, const std::string &subscript="")
 Tetrahedron (const Tetrahedron &tetrahedron)
virtual ~Tetrahedron ()
virtual unsigned int no_space_dim () const
virtual Line line (unsigned int i) const
virtual Triangle triangle (unsigned int i) const
virtual GiNaC::ex repr (Repr_format format=SUBS_PERFORMED) const
virtual const std::string str () const
virtual GiNaC::ex integrate (GiNaC::ex f, Repr_format format=SUBS_PERFORMED)
virtual Tetrahedroncopy () const
def __init__
def no_space_dim
def line
def triangle
def repr
def str
def integrate
def copy

Public Attributes

 this

Static Private Attributes

dictionary __swig_setmethods__ = {}
tuple __setattr__ = lambdaself,name,value:_swig_setattr(self, Tetrahedron, name, value)
dictionary __swig_getmethods__ = {}
tuple __getattr__ = lambdaself,name:_swig_getattr(self, Tetrahedron, name)
 __repr__ = _swig_repr
 __swig_destroy__ = _SyFi.delete_Tetrahedron
 __del__ = lambdaself:None;


Detailed Description

Proxy of C++ SyFi::Tetrahedron class

Definition at line 162 of file Polygon.h.


Constructor & Destructor Documentation

SyFi::Tetrahedron::Tetrahedron ( GiNaC::ex  x0,
GiNaC::ex  x1,
GiNaC::ex  x2,
GiNaC::ex  x3,
const std::string &  subscript = "" 
)

Referenced by copy().

SyFi::Tetrahedron::Tetrahedron ( const Tetrahedron tetrahedron  ) 

Definition at line 858 of file Polygon.cpp.

00858 : Polygon(tetrahedron) { }

virtual SyFi::Tetrahedron::~Tetrahedron (  )  [inline, virtual]

Definition at line 167 of file Polygon.h.

00167 {}


Member Function Documentation

def SyFi::Tetrahedron::__init__ (   self,
  args 
)

__init__(self, GiNaC::ex x0, GiNaC::ex x1, GiNaC::ex x2, GiNaC::ex x3, 
    string subscript = "") -> Tetrahedron
__init__(self, GiNaC::ex x0, GiNaC::ex x1, GiNaC::ex x2, GiNaC::ex x3) -> Tetrahedron
__init__(self, Tetrahedron tetrahedron) -> Tetrahedron

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1723 of file SyFi.py.

01723                              : 
01724         """
01725         __init__(self, GiNaC::ex x0, GiNaC::ex x1, GiNaC::ex x2, GiNaC::ex x3, 
01726             string subscript = "") -> Tetrahedron
01727         __init__(self, GiNaC::ex x0, GiNaC::ex x1, GiNaC::ex x2, GiNaC::ex x3) -> Tetrahedron
01728         __init__(self, Tetrahedron tetrahedron) -> Tetrahedron
01729         """
01730         this = _SyFi.new_Tetrahedron(*args)
01731         try: self.this.append(this)
01732         except: self.this = this

def SyFi::Tetrahedron::copy (   self  ) 

copy(self) -> Tetrahedron

Reimplemented from SyFi::Polygon.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1765 of file SyFi.py.

01765                   :
01766         """copy(self) -> Tetrahedron"""
01767         return _SyFi.Tetrahedron_copy(self)
01768 
Tetrahedron_swigregister = _SyFi.Tetrahedron_swigregister

Tetrahedron * SyFi::Tetrahedron::copy (  )  const [virtual]

Implements SyFi::Polygon.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1017 of file Polygon.cpp.

References Tetrahedron().

01018         {
01019                 return new Tetrahedron(*this);
01020         }

def SyFi::Tetrahedron::integrate (   self,
  args 
)

integrate(self, GiNaC::ex f, Repr_format format = SUBS_PERFORMED) -> GiNaC::ex
integrate(self, GiNaC::ex f) -> GiNaC::ex

Reimplemented from SyFi::Polygon.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1758 of file SyFi.py.

01758                               :
01759         """
01760         integrate(self, GiNaC::ex f, Repr_format format = SUBS_PERFORMED) -> GiNaC::ex
01761         integrate(self, GiNaC::ex f) -> GiNaC::ex
01762         """
01763         return _SyFi.Tetrahedron_integrate(self, *args)
01764 
    def copy(self):

virtual GiNaC::ex SyFi::Tetrahedron::integrate ( GiNaC::ex  f,
Repr_format  format = SUBS_PERFORMED 
) [virtual]

def SyFi::Tetrahedron::line (   self,
  args 
)

line(self, unsigned int i) -> Line

Reimplemented from SyFi::Polygon.

Definition at line 1739 of file SyFi.py.

01739                          :
01740         """line(self, unsigned int i) -> Line"""
01741         return _SyFi.Tetrahedron_line(self, *args)
01742 
    def triangle(self, *args):

Line SyFi::Tetrahedron::line ( unsigned int  i  )  const [virtual]

Reimplemented from SyFi::Polygon.

Definition at line 865 of file Polygon.cpp.

References SyFi::istr(), SyFi::Polygon::p, and SyFi::Polygon::subscript.

Referenced by SyFi::Nedelec::compute_basis_functions().

00866         {
00867                 int i0, i1;
00868                 switch(i)
00869                 {
00870                         case 0:  i0 = 0; i1 = 1;  break;
00871                         case 1:  i0 = 0; i1 = 2;  break;
00872                         case 2:  i0 = 0; i1 = 3;  break;
00873                         case 3:  i0 = 1; i1 = 2;  break;
00874                         case 4:  i0 = 1; i1 = 3;  break;
00875                         case 5:  i0 = 2; i1 = 3;  break;
00876                         default:
00877                                 throw std::out_of_range("Line index is out of range!");
00878                 }
00879                 return Line(p[i0], p[i1], istr(subscript,i));
00880         }

def SyFi::Tetrahedron::no_space_dim (   self  ) 

no_space_dim(self) -> unsigned int

Reimplemented from SyFi::Polygon.

Definition at line 1735 of file SyFi.py.

01735                           :
01736         """no_space_dim(self) -> unsigned int"""
01737         return _SyFi.Tetrahedron_no_space_dim(self)
01738 
    def line(self, *args):

unsigned int SyFi::Tetrahedron::no_space_dim (  )  const [virtual]

Implements SyFi::Polygon.

Definition at line 860 of file Polygon.cpp.

00861         {
00862                 return 3;
00863         }

def SyFi::Tetrahedron::repr (   self,
  args 
)

repr(self, Repr_format format = SUBS_PERFORMED) -> GiNaC::ex
repr(self) -> GiNaC::ex

Reimplemented from SyFi::Polygon.

Definition at line 1747 of file SyFi.py.

01747                          :
01748         """
01749         repr(self, Repr_format format = SUBS_PERFORMED) -> GiNaC::ex
01750         repr(self) -> GiNaC::ex
01751         """
01752         return _SyFi.Tetrahedron_repr(self, *args)
01753 
    def str(self):

ex SyFi::Tetrahedron::repr ( Repr_format  format = SUBS_PERFORMED  )  const [virtual]

Implements SyFi::Polygon.

Definition at line 906 of file Polygon.cpp.

References run::s, SyFi::t, SyFi::Polygon::vertex(), and SyFi::x.

Referenced by _wrap_Tetrahedron_repr__SWIG_1(), and main().

00907         {
00908                 GiNaC::symbol r("r"), s("s"), t("t");
00909                 ex l1_repr = Line(vertex(0), vertex(1)).repr(r);
00910                 ex l2_repr = Line(vertex(0), vertex(2)).repr(s);
00911                 ex l3_repr = Line(vertex(0), vertex(3)).repr(t);
00912                 lst ret;
00913 
00914                 ret = lst(
00915                         x == l1_repr.op(0).rhs().coeff(r,0)   + l1_repr.op(0).rhs().coeff(r,1)*r
00916                         +    l2_repr.op(0).rhs().coeff(s,1)*s + l3_repr.op(0).rhs().coeff(t,1)*t,
00917                         y == l1_repr.op(1).rhs().coeff(r,0)   + l1_repr.op(1).rhs().coeff(r,1)*r
00918                         +    l2_repr.op(1).rhs().coeff(s,1)*s + l3_repr.op(1).rhs().coeff(t,1)*t,
00919                         z == l1_repr.op(2).rhs().coeff(r,0)   + l1_repr.op(2).rhs().coeff(r,1)*r
00920                         +    l2_repr.op(2).rhs().coeff(s,1)*s + l3_repr.op(2).rhs().coeff(t,1)*t);
00921 
00922                 ret.append(lst(r, 0, 1));
00923                 ret.append(lst(s, 0, 1 - r));
00924                 ret.append(lst(t, 0, 1 - r - s));
00925 
00926                 return ret;
00927         }

def SyFi::Tetrahedron::str (   self  ) 

str(self) -> string

Reimplemented from SyFi::Polygon.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1754 of file SyFi.py.

01754                  :
01755         """str(self) -> string"""
01756         return _SyFi.Tetrahedron_str(self)
01757 
    def integrate(self, *args):

const string SyFi::Tetrahedron::str (  )  const [virtual]

Implements SyFi::Polygon.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 929 of file Polygon.cpp.

Referenced by _wrap_Tetrahedron_str(), and main().

00930         {
00931                 std::ostringstream s;
00932                 //    s <<"Tetrahedron("<<p[0]<<","<<p[1]<<","<<p[2]<<","<<p[3]<<")";
00933                 s <<"Tetrahedron";
00934                 return s.str();
00935         }

def SyFi::Tetrahedron::triangle (   self,
  args 
)

triangle(self, unsigned int i) -> Triangle

Reimplemented from SyFi::Polygon.

Definition at line 1743 of file SyFi.py.

01743                              :
01744         """triangle(self, unsigned int i) -> Triangle"""
01745         return _SyFi.Tetrahedron_triangle(self, *args)
01746 
    def repr(self, *args):

Triangle SyFi::Tetrahedron::triangle ( unsigned int  i  )  const [virtual]

Reimplemented from SyFi::Polygon.

Definition at line 882 of file Polygon.cpp.

References SyFi::istr(), SyFi::Polygon::p, and SyFi::Polygon::subscript.

Referenced by SyFi::RaviartThomas::compute_basis_functions(), SyFi::Nedelec2Hdiv::compute_basis_functions(), SyFi::Nedelec::compute_basis_functions(), SyFi::CrouzeixRaviart::compute_basis_functions(), and SyFi::normal().

00883         {
00884 
00885                 if ( i == 0 )
00886                 {
00887                         return Triangle(p[1], p[2], p[3], istr(subscript,i));
00888                 }
00889                 else if ( i == 1)
00890                 {
00891                         return Triangle(p[0], p[2], p[3], istr(subscript,i));
00892                 }
00893                 else if ( i == 2)
00894                 {
00895                         return Triangle(p[0], p[1], p[3], istr(subscript,i));
00896                 }
00897                 else if ( i == 3)
00898                 {
00899                         return Triangle(p[0], p[1], p[2], istr(subscript,i));
00900                 }
00901 
00902                 throw std::out_of_range("Face index is out of range!");
00903 
00904         }


Member Data Documentation

SyFi::Tetrahedron::__del__ = lambdaself:None; [static, private]

Reimplemented from SyFi::Polygon.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1734 of file SyFi.py.

tuple SyFi::Tetrahedron::__getattr__ = lambdaself,name:_swig_getattr(self, Tetrahedron, name) [static, private]

Reimplemented from SyFi::Polygon.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1721 of file SyFi.py.

SyFi::Tetrahedron::__repr__ = _swig_repr [static, private]

Reimplemented from SyFi::Polygon.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1722 of file SyFi.py.

tuple SyFi::Tetrahedron::__setattr__ = lambdaself,name,value:_swig_setattr(self, Tetrahedron, name, value) [static, private]

Reimplemented from SyFi::Polygon.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1718 of file SyFi.py.

SyFi::Tetrahedron::__swig_destroy__ = _SyFi.delete_Tetrahedron [static, private]

Reimplemented from SyFi::Polygon.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1733 of file SyFi.py.

dictionary SyFi::Tetrahedron::__swig_getmethods__ = {} [static, private]

Reimplemented from SyFi::Polygon.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1719 of file SyFi.py.

dictionary SyFi::Tetrahedron::__swig_setmethods__ = {} [static, private]

Reimplemented from SyFi::Polygon.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1716 of file SyFi.py.

Reimplemented in SyFi::ReferenceTetrahedron.

Definition at line 1732 of file SyFi.py.


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

Generated on Mon Aug 31 16:17:07 2009 for SyFi by  doxygen 1.5.9