#include <P0.h>
Public Member Functions | |
P0 () | |
P0 (Polygon &p, unsigned int order=0) | |
virtual | ~P0 () |
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, P0, name, value) |
dictionary | __swig_getmethods__ = {} |
tuple | __getattr__ = lambdaself,name:_swig_getattr(self, P0, name) |
__repr__ = _swig_repr | |
__swig_destroy__ = _SyFi.delete_P0 | |
__del__ = lambdaself:None; |
Proxy of C++ SyFi::P0 class
Definition at line 12 of file P0.h.
SyFi::P0::P0 | ( | ) |
Definition at line 13 of file P0.cpp.
References SyFi::StandardFE::description.
00013 : StandardFE() 00014 { 00015 description = "P0"; 00016 }
SyFi::P0::P0 | ( | Polygon & | p, | |
unsigned int | order = 0 | |||
) |
Definition at line 18 of file P0.cpp.
References compute_basis_functions().
00018 : StandardFE (p,order) 00019 { 00020 compute_basis_functions(); 00021 }
def SyFi::P0::__init__ | ( | self, | ||
args | ||||
) |
__init__(self) -> P0 __init__(self, Polygon p, unsigned int order = 0) -> P0 __init__(self, Polygon p) -> P0
Reimplemented from SyFi::StandardFE.
Definition at line 2334 of file SyFi.py.
02334 : 02335 """ 02336 __init__(self) -> P0 02337 __init__(self, Polygon p, unsigned int order = 0) -> P0 02338 __init__(self, Polygon p) -> P0 02339 """ 02340 this = _SyFi.new_P0(*args) 02341 try: self.this.append(this) 02342 except: self.this = this
def SyFi::P0::compute_basis_functions | ( | self | ) |
compute_basis_functions(self)
Reimplemented from SyFi::StandardFE.
Definition at line 2345 of file SyFi.py.
02345 : 02346 """compute_basis_functions(self)""" 02347 return _SyFi.P0_compute_basis_functions(self) 02348 P0_swigregister = _SyFi.P0_swigregister
void SyFi::P0::compute_basis_functions | ( | ) | [virtual] |
Reimplemented from SyFi::StandardFE.
Definition at line 23 of file P0.cpp.
References SyFi::StandardFE::description, SyFi::StandardFE::dofs, SyFi::istr(), SyFi::Polygon::no_vertices(), SyFi::StandardFE::Ns, SyFi::StandardFE::p, and SyFi::Polygon::vertex().
Referenced by main(), and P0().
00024 { 00025 00026 // remove previously computed basis functions and dofs 00027 Ns.clear(); 00028 dofs.clear(); 00029 00030 if ( p == NULL ) 00031 { 00032 throw(std::logic_error("You need to set a polygon before the basisfunctions can be computed")); 00033 } 00034 00035 // insert basis function 00036 Ns.insert(Ns.end(), GiNaC::numeric(1)); 00037 00038 GiNaC::lst midpoint = GiNaC::lst(); 00039 // create and insert dof 00040 // p is a lst 00041 if (GiNaC::is_a<GiNaC::lst>(p->vertex(0))) 00042 { 00043 for (unsigned int d=0; d< p->vertex(1).nops(); d++) 00044 { 00045 midpoint.append(GiNaC::numeric(0)); 00046 } 00047 for (unsigned int i=0; i< p->no_vertices(); i++) 00048 { 00049 int nops; 00050 nops = p->vertex(i).nops(); 00051 for (int d=0; d< nops; d++) 00052 { 00053 midpoint.let_op(d) += p->vertex(i).op(d); 00054 } 00055 } 00056 for (unsigned int d=0; d< p->vertex(1).nops(); d++) 00057 { 00058 midpoint.let_op(d) = midpoint.op(d)/p->no_vertices(); 00059 } 00060 } 00061 else 00062 { 00063 midpoint.append(GiNaC::numeric(0)); 00064 for (unsigned int i=0; i< p->no_vertices(); i++) 00065 { 00066 midpoint.let_op(0) += p->vertex(i); 00067 } 00068 midpoint.let_op(0) = midpoint.op(0)/p->no_vertices(); 00069 } 00070 00071 dofs.insert(dofs.end(), midpoint); 00072 00073 description = istr("P0_" , midpoint.nops()) + "D"; 00074 }
SyFi::P0::__del__ = lambdaself:None; [static, private] |
tuple SyFi::P0::__getattr__ = lambdaself,name:_swig_getattr(self, P0, name) [static, private] |
SyFi::P0::__repr__ = _swig_repr [static, private] |
tuple SyFi::P0::__setattr__ = lambdaself,name,value:_swig_setattr(self, P0, name, value) [static, private] |
SyFi::P0::__swig_destroy__ = _SyFi.delete_P0 [static, private] |
dictionary SyFi::P0::__swig_getmethods__ = {} [static, private] |
dictionary SyFi::P0::__swig_setmethods__ = {} [static, private] |