#include <ArnoldFalkWintherWeakSym.h>
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; |
Proxy of C++ SyFi::ArnoldFalkWintherWeakSymP class
Definition at line 32 of file ArnoldFalkWintherWeakSym.h.
SyFi::ArnoldFalkWintherWeakSymP::ArnoldFalkWintherWeakSymP | ( | ) |
Definition at line 135 of file ArnoldFalkWintherWeakSym.cpp.
References SyFi::StandardFE::description.
00135 : StandardFE() 00136 { 00137 description = "ArnoldFalkWintherWeakSymP"; 00138 }
SyFi::ArnoldFalkWintherWeakSymP::ArnoldFalkWintherWeakSymP | ( | Polygon & | p, | |
int | order = 1 | |||
) |
Definition at line 140 of file ArnoldFalkWintherWeakSym.cpp.
References compute_basis_functions().
00140 : StandardFE(p, order) 00141 { 00142 compute_basis_functions(); 00143 }
virtual SyFi::ArnoldFalkWintherWeakSymP::~ArnoldFalkWintherWeakSymP | ( | ) | [inline, virtual] |
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
def SyFi::ArnoldFalkWintherWeakSymP::compute_basis_functions | ( | self | ) |
compute_basis_functions(self)
Reimplemented from SyFi::StandardFE.
Definition at line 2720 of file SyFi.py.
02720 : 02721 """compute_basis_functions(self)""" 02722 return _SyFi.ArnoldFalkWintherWeakSymP_compute_basis_functions(self) 02723 ArnoldFalkWintherWeakSymP_swigregister = _SyFi.ArnoldFalkWintherWeakSymP_swigregister
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().
00146 { 00147 00148 // remove previously computed basis functions and dofs 00149 Ns.clear(); 00150 dofs.clear(); 00151 00152 if ( order < 1 ) 00153 { 00154 cout <<"Arnold-Falk-Winther elements must be of order 1 or higher."<<endl; 00155 return; 00156 } 00157 00158 if ( p == NULL ) 00159 { 00160 cout <<"You need to set a polygon before the basisfunctions can be computed"<<endl; 00161 return; 00162 } 00163 00164 description = istr("ArnoldFalkWintherWeakSymP_", order) + "_3D"; 00165 00166 if ( order > 1 ) 00167 { 00168 00169 VectorDiscontinuousLagrange fe; 00170 fe.set_order(order); 00171 fe.set_size(3); 00172 fe.set_polygon(*p); 00173 fe.compute_basis_functions(); 00174 00175 for (unsigned int i=0; i<fe.nbf(); i++) 00176 { 00177 GiNaC::matrix Nmat = GiNaC::matrix(3,3); 00178 Nmat(1,2) = -fe.N(i).op(0); 00179 Nmat(2,1) = fe.N(i).op(0); 00180 00181 Nmat(0,2) = fe.N(i).op(1); 00182 Nmat(2,0) = -fe.N(i).op(1); 00183 00184 Nmat(0,1) = -fe.N(i).op(2); 00185 Nmat(1,0) = fe.N(i).op(2); 00186 00187 Ns.insert(Ns.end(), Nmat); 00188 dofs.insert(dofs.end(),GiNaC::lst(fe.dof(i))); 00189 } 00190 } 00191 else if ( order == 1 ) 00192 { 00193 00194 VectorP0 fe; 00195 fe.set_order(order); 00196 fe.set_size(3); 00197 fe.set_polygon(*p); 00198 fe.compute_basis_functions(); 00199 00200 for (unsigned int i=0; i<fe.nbf(); i++) 00201 { 00202 GiNaC::matrix Nmat = GiNaC::matrix(3,3); 00203 Nmat(1,2) = -fe.N(i).op(0); 00204 Nmat(2,1) = fe.N(i).op(0); 00205 00206 Nmat(0,2) = fe.N(i).op(1); 00207 Nmat(2,0) = -fe.N(i).op(1); 00208 00209 Nmat(0,1) = -fe.N(i).op(2); 00210 Nmat(1,0) = fe.N(i).op(2); 00211 00212 Ns.insert(Ns.end(), Nmat); 00213 GiNaC::ex d = GiNaC::lst(fe.dof(i), 0); 00214 dofs.insert(dofs.end(),GiNaC::lst(d)); 00215 } 00216 } 00217 00218 }
SyFi::ArnoldFalkWintherWeakSymP::__del__ = lambdaself:None; [static, private] |
tuple SyFi::ArnoldFalkWintherWeakSymP::__getattr__ = lambdaself,name:_swig_getattr(self, ArnoldFalkWintherWeakSymP, name) [static, private] |
SyFi::ArnoldFalkWintherWeakSymP::__repr__ = _swig_repr [static, private] |
tuple SyFi::ArnoldFalkWintherWeakSymP::__setattr__ = lambdaself,name,value:_swig_setattr(self, ArnoldFalkWintherWeakSymP, name, value) [static, private] |
SyFi::ArnoldFalkWintherWeakSymP::__swig_destroy__ = _SyFi.delete_ArnoldFalkWintherWeakSymP [static, private] |
dictionary SyFi::ArnoldFalkWintherWeakSymP::__swig_getmethods__ = {} [static, private] |
dictionary SyFi::ArnoldFalkWintherWeakSymP::__swig_setmethods__ = {} [static, private] |