SyFi 0.3
SyFi::ArnoldFalkWintherWeakSymP Class Reference

#include <ArnoldFalkWintherWeakSym.h>

Inheritance diagram for SyFi::ArnoldFalkWintherWeakSymP:
SyFi::StandardFE SyFi::StandardFE SyFi::FE SyFi::FE SyFi::FE SyFi::FE SyFi::_object SyFi::_object SyFi::_object SyFi::_object

List of all members.

Public Member Functions

 ArnoldFalkWintherWeakSymP ()
 ArnoldFalkWintherWeakSymP (Polygon &p, int order=1)
virtual ~ArnoldFalkWintherWeakSymP ()
virtual void compute_basis_functions ()
def __init__
def compute_basis_functions

Public Attributes

 this

Static Private Attributes

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

Detailed Description

Proxy of C++ SyFi::ArnoldFalkWintherWeakSymP class

Definition at line 32 of file ArnoldFalkWintherWeakSym.h.


Constructor & Destructor Documentation

SyFi::ArnoldFalkWintherWeakSymP::ArnoldFalkWintherWeakSymP ( )

Definition at line 135 of file ArnoldFalkWintherWeakSym.cpp.

References SyFi::StandardFE::description.

                                                             : StandardFE()
        {
                description = "ArnoldFalkWintherWeakSymP";
        }
SyFi::ArnoldFalkWintherWeakSymP::ArnoldFalkWintherWeakSymP ( Polygon p,
int  order = 1 
)
virtual SyFi::ArnoldFalkWintherWeakSymP::~ArnoldFalkWintherWeakSymP ( ) [inline, virtual]

Definition at line 37 of file ArnoldFalkWintherWeakSym.h.

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

Reimplemented from SyFi::StandardFE.

Definition at line 2709 of file SyFi.py.

02709                              : 
02710         """
02711         __init__(self) -> ArnoldFalkWintherWeakSymP
02712         __init__(self, Polygon p, int order = 1) -> ArnoldFalkWintherWeakSymP
02713         __init__(self, Polygon p) -> ArnoldFalkWintherWeakSymP
02714         """
02715         this = _SyFi.new_ArnoldFalkWintherWeakSymP(*args)
02716         try: self.this.append(this)
02717         except: self.this = this

Member Function Documentation

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

Reimplemented from SyFi::StandardFE.

Definition at line 145 of file ArnoldFalkWintherWeakSym.cpp.

References SyFi::VectorP0::compute_basis_functions(), SyFi::VectorDiscontinuousLagrange::compute_basis_functions(), SyFi::StandardFE::description, SyFi::StandardFE::dof(), SyFi::StandardFE::dofs, demos::crouzeixraviart::fe, SyFi::istr(), SyFi::StandardFE::N(), SyFi::StandardFE::nbf(), SyFi::StandardFE::Ns, SyFi::StandardFE::order, SyFi::StandardFE::p, SyFi::StandardFE::set_order(), SyFi::StandardFE::set_polygon(), SyFi::VectorP0::set_size(), and SyFi::VectorDiscontinuousLagrange::set_size().

Referenced by ArnoldFalkWintherWeakSymP(), and main().

        {

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

                if ( order < 1 )
                {
                        cout <<"Arnold-Falk-Winther elements must be of order 1 or higher."<<endl;
                        return;
                }

                if ( p == NULL )
                {
                        cout <<"You need to set a polygon before the basisfunctions can be computed"<<endl;
                        return;
                }

                description = istr("ArnoldFalkWintherWeakSymP_", order) + "_3D";

                if ( order > 1 )
                {

                        VectorDiscontinuousLagrange fe;
                        fe.set_order(order);
                        fe.set_size(3);
                        fe.set_polygon(*p);
                        fe.compute_basis_functions();

                        for (unsigned int i=0; i<fe.nbf(); i++)
                        {
                                GiNaC::matrix Nmat = GiNaC::matrix(3,3);
                                Nmat(1,2) = -fe.N(i).op(0);
                                Nmat(2,1) =  fe.N(i).op(0);

                                Nmat(0,2) =  fe.N(i).op(1);
                                Nmat(2,0) = -fe.N(i).op(1);

                                Nmat(0,1) = -fe.N(i).op(2);
                                Nmat(1,0) =  fe.N(i).op(2);

                                Ns.insert(Ns.end(), Nmat);
                                dofs.insert(dofs.end(),GiNaC::lst(fe.dof(i)));
                        }
                }
                else if  ( order == 1 )
                {

                        VectorP0 fe;
                        fe.set_order(order);
                        fe.set_size(3);
                        fe.set_polygon(*p);
                        fe.compute_basis_functions();

                        for (unsigned int i=0; i<fe.nbf(); i++)
                        {
                                GiNaC::matrix Nmat = GiNaC::matrix(3,3);
                                Nmat(1,2) = -fe.N(i).op(0);
                                Nmat(2,1) =  fe.N(i).op(0);

                                Nmat(0,2) =  fe.N(i).op(1);
                                Nmat(2,0) = -fe.N(i).op(1);

                                Nmat(0,1) = -fe.N(i).op(2);
                                Nmat(1,0) =  fe.N(i).op(2);

                                Ns.insert(Ns.end(), Nmat);
                                GiNaC::ex d = GiNaC::lst(fe.dof(i), 0);
                                dofs.insert(dofs.end(),GiNaC::lst(d));
                        }
                }

        }
def SyFi::ArnoldFalkWintherWeakSymP::compute_basis_functions (   self)
compute_basis_functions(self)

Reimplemented from SyFi::StandardFE.

Definition at line 2720 of file SyFi.py.

02721                                      :
02722         """compute_basis_functions(self)"""
02723         return _SyFi.ArnoldFalkWintherWeakSymP_compute_basis_functions(self)


Member Data Documentation

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

Reimplemented from SyFi::StandardFE.

Definition at line 2719 of file SyFi.py.

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

Reimplemented from SyFi::StandardFE.

Definition at line 2707 of file SyFi.py.

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

Reimplemented from SyFi::StandardFE.

Definition at line 2708 of file SyFi.py.

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

Reimplemented from SyFi::StandardFE.

Definition at line 2704 of file SyFi.py.

SyFi::ArnoldFalkWintherWeakSymP::__swig_destroy__ = _SyFi.delete_ArnoldFalkWintherWeakSymP [static, private]

Reimplemented from SyFi::StandardFE.

Definition at line 2718 of file SyFi.py.

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

Reimplemented from SyFi::StandardFE.

Definition at line 2705 of file SyFi.py.

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

Reimplemented from SyFi::StandardFE.

Definition at line 2702 of file SyFi.py.

Reimplemented from SyFi::StandardFE.

Definition at line 2713 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