SyFi 0.3
SyFi::DiscontinuousLagrange Class Reference

#include <DiscontinuousLagrange.h>

Inheritance diagram for SyFi::DiscontinuousLagrange:
SyFi::Lagrange SyFi::Lagrange SyFi::StandardFE SyFi::StandardFE SyFi::StandardFE SyFi::StandardFE SyFi::FE SyFi::FE SyFi::FE SyFi::FE SyFi::FE SyFi::FE SyFi::FE SyFi::FE

List of all members.

Public Member Functions

 DiscontinuousLagrange ()
 DiscontinuousLagrange (Polygon &p, unsigned int order=1)
virtual ~DiscontinuousLagrange ()
virtual void set_element_number (unsigned int element)
virtual void compute_basis_functions ()
def __init__
def set_element_number
def compute_basis_functions

Public Attributes

 this

Private Attributes

GiNaC::ex element

Static Private Attributes

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

Detailed Description

Proxy of C++ SyFi::DiscontinuousLagrange class

Definition at line 13 of file DiscontinuousLagrange.h.


Constructor & Destructor Documentation

SyFi::DiscontinuousLagrange::DiscontinuousLagrange ( )

Definition at line 19 of file DiscontinuousLagrange.cpp.

References SyFi::StandardFE::description, and element.

                                                      : Lagrange()
        {
                description = "DiscontinuousLagrange";
                element = GiNaC::symbol("e");
        }
SyFi::DiscontinuousLagrange::DiscontinuousLagrange ( Polygon p,
unsigned int  order = 1 
)

Definition at line 13 of file DiscontinuousLagrange.cpp.

References compute_basis_functions(), and element.

                                                                                    : Lagrange(p,order)
        {
                compute_basis_functions();
                element = GiNaC::symbol("e");
        }
virtual SyFi::DiscontinuousLagrange::~DiscontinuousLagrange ( ) [inline, virtual]

Definition at line 19 of file DiscontinuousLagrange.h.

{}
def SyFi::DiscontinuousLagrange::__init__ (   self,
  args 
)
__init__(self) -> DiscontinuousLagrange
__init__(self, Polygon p, unsigned int order = 1) -> DiscontinuousLagrange
__init__(self, Polygon p) -> DiscontinuousLagrange

Reimplemented from SyFi::Lagrange.

Definition at line 2459 of file SyFi.py.

02459                              : 
02460         """
02461         __init__(self) -> DiscontinuousLagrange
02462         __init__(self, Polygon p, unsigned int order = 1) -> DiscontinuousLagrange
02463         __init__(self, Polygon p) -> DiscontinuousLagrange
02464         """
02465         this = _SyFi.new_DiscontinuousLagrange(*args)
02466         try: self.this.append(this)
02467         except: self.this = this

Member Function Documentation

void SyFi::DiscontinuousLagrange::compute_basis_functions ( ) [virtual]

Reimplemented from SyFi::Lagrange.

Definition at line 25 of file DiscontinuousLagrange.cpp.

References SyFi::StandardFE::description, SyFi::StandardFE::dofs, element, SyFi::StandardFE::Ns, SyFi::StandardFE::order, SyFi::StandardFE::p, and SyFi::StandardFE::str().

Referenced by DiscontinuousLagrange(), and main().

        {

                // remove previously computed basis functions and dofs
                Ns.clear();
                dofs.clear();

                if ( order < 1 )
                {
                        throw(std::logic_error("Discontinuous Lagrangian elements must be of order 1 or higher."));
                }

                if ( p == NULL )
                {
                        throw(std::logic_error("You need to set a polygon before the basisfunctions can be computed"));
                }

                //FIXME should have element defined somehow other than
                //setting it to zero
                //
                //It could be a symbol 'e' instead ?

                Lagrange:: compute_basis_functions();
                for (unsigned int i=0; i< dofs.size(); i++)
                {
                        dofs[i] = GiNaC::lst(dofs[i], element);
                }

                description = "Discontinuous" +  Lagrange:: str();
        }
def SyFi::DiscontinuousLagrange::compute_basis_functions (   self)
compute_basis_functions(self)

Reimplemented from SyFi::Lagrange.

Definition at line 2474 of file SyFi.py.

02475                                      :
02476         """compute_basis_functions(self)"""
02477         return _SyFi.DiscontinuousLagrange_compute_basis_functions(self)

def SyFi::DiscontinuousLagrange::set_element_number (   self,
  args 
)
set_element_number(self, unsigned int element)

Definition at line 2470 of file SyFi.py.

02471                                        :
02472         """set_element_number(self, unsigned int element)"""
02473         return _SyFi.DiscontinuousLagrange_set_element_number(self, *args)

void SyFi::DiscontinuousLagrange::set_element_number ( unsigned int  element) [virtual]

Definition at line 56 of file DiscontinuousLagrange.cpp.

References element.

Referenced by main().

        {
                element = element_;
        }

Member Data Documentation

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

Reimplemented from SyFi::Lagrange.

Definition at line 2469 of file SyFi.py.

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

Reimplemented from SyFi::Lagrange.

Definition at line 2457 of file SyFi.py.

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

Reimplemented from SyFi::Lagrange.

Definition at line 2458 of file SyFi.py.

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

Reimplemented from SyFi::Lagrange.

Definition at line 2454 of file SyFi.py.

SyFi::DiscontinuousLagrange::__swig_destroy__ = _SyFi.delete_DiscontinuousLagrange [static, private]

Reimplemented from SyFi::Lagrange.

Definition at line 2468 of file SyFi.py.

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

Reimplemented from SyFi::Lagrange.

Definition at line 2455 of file SyFi.py.

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

Reimplemented from SyFi::Lagrange.

Definition at line 2452 of file SyFi.py.

Reimplemented from SyFi::Lagrange.

Definition at line 2463 of file SyFi.py.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines