#include <Polygon.h>
Public Member Functions | |
Simplex (GiNaC::lst vertices, const std::string &subscript="") | |
Simplex (const Simplex &simplex) | |
virtual | ~Simplex () |
virtual unsigned int | no_space_dim () 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) |
Simplex | sub_simplex (unsigned int i) |
virtual Simplex * | copy () const |
def | __init__ |
def | no_space_dim |
def | repr |
def | str |
def | integrate |
def | sub_simplex |
def | copy |
Public Attributes | |
this | |
Static Private Attributes | |
dictionary | __swig_setmethods__ = {} |
tuple | __setattr__ = lambdaself,name,value:_swig_setattr(self, Simplex, name, value) |
dictionary | __swig_getmethods__ = {} |
tuple | __getattr__ = lambdaself,name:_swig_getattr(self, Simplex, name) |
__repr__ = _swig_repr | |
__swig_destroy__ = _SyFi.delete_Simplex | |
__del__ = lambdaself:None; |
Proxy of C++ SyFi::Simplex class
Definition at line 227 of file Polygon.h.
SyFi::Simplex::Simplex | ( | GiNaC::lst | vertices, | |
const std::string & | subscript = "" | |||
) |
Referenced by copy(), and sub_simplex().
SyFi::Simplex::Simplex | ( | const Simplex & | simplex | ) |
virtual SyFi::Simplex::~Simplex | ( | ) | [inline, virtual] |
def SyFi::Simplex::__init__ | ( | self, | ||
args | ||||
) |
__init__(self, GiNaC::lst vertices, string subscript = "") -> Simplex __init__(self, GiNaC::lst vertices) -> Simplex __init__(self, Simplex simplex) -> Simplex
Definition at line 1914 of file SyFi.py.
01914 : 01915 """ 01916 __init__(self, GiNaC::lst vertices, string subscript = "") -> Simplex 01917 __init__(self, GiNaC::lst vertices) -> Simplex 01918 __init__(self, Simplex simplex) -> Simplex 01919 """ 01920 this = _SyFi.new_Simplex(*args) 01921 try: self.this.append(this) 01922 except: self.this = this
def SyFi::Simplex::copy | ( | self | ) |
copy(self) -> Simplex
Reimplemented from SyFi::Polygon.
Definition at line 1951 of file SyFi.py.
01951 : 01952 """copy(self) -> Simplex""" 01953 return _SyFi.Simplex_copy(self) 01954 Simplex_swigregister = _SyFi.Simplex_swigregister
Simplex * SyFi::Simplex::copy | ( | ) | const [virtual] |
Implements SyFi::Polygon.
Definition at line 1351 of file Polygon.cpp.
References Simplex().
01352 { 01353 return new Simplex(*this); 01354 }
def SyFi::Simplex::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.
Definition at line 1940 of file SyFi.py.
01940 : 01941 """ 01942 integrate(self, GiNaC::ex f, Repr_format format = SUBS_PERFORMED) -> GiNaC::ex 01943 integrate(self, GiNaC::ex f) -> GiNaC::ex 01944 """ 01945 return _SyFi.Simplex_integrate(self, *args) 01946 def sub_simplex(self, *args):
virtual GiNaC::ex SyFi::Simplex::integrate | ( | GiNaC::ex | f, | |
Repr_format | format = SUBS_PERFORMED | |||
) | [virtual] |
def SyFi::Simplex::no_space_dim | ( | self | ) |
no_space_dim(self) -> unsigned int
Reimplemented from SyFi::Polygon.
Definition at line 1925 of file SyFi.py.
01925 : 01926 """no_space_dim(self) -> unsigned int""" 01927 return _SyFi.Simplex_no_space_dim(self) 01928 def repr(self, *args):
unsigned int SyFi::Simplex::no_space_dim | ( | ) | const [virtual] |
Implements SyFi::Polygon.
Definition at line 1242 of file Polygon.cpp.
01243 { 01244 return p[0].nops()-1; 01245 }
def SyFi::Simplex::repr | ( | self, | ||
args | ||||
) |
repr(self, Repr_format format = SUBS_PERFORMED) -> GiNaC::ex repr(self) -> GiNaC::ex
Reimplemented from SyFi::Polygon.
Definition at line 1929 of file SyFi.py.
01929 : 01930 """ 01931 repr(self, Repr_format format = SUBS_PERFORMED) -> GiNaC::ex 01932 repr(self) -> GiNaC::ex 01933 """ 01934 return _SyFi.Simplex_repr(self, *args) 01935 def str(self):
ex SyFi::Simplex::repr | ( | Repr_format | format = SUBS_PERFORMED |
) | const [virtual] |
Implements SyFi::Polygon.
Definition at line 1247 of file Polygon.cpp.
References SyFi::get_symbolic_vector(), SyFi_polygons::spacetimedomain::l, cleanlogs::lines, SyFi::Polygon::no_vertices(), SyFi::nsd, SyFi::Polygon::vertex(), and SyFi::x.
Referenced by _wrap_Simplex_repr__SWIG_1(), and main().
01248 { 01249 unsigned int nsd = vertex(0).nops(); 01250 unsigned int no_lines = no_vertices()-1; 01251 01252 ex r = get_symbolic_vector(nsd, "r"); 01253 ex x = get_symbolic_vector(nsd, "x"); 01254 ex ri; 01255 lst lines; 01256 for (unsigned int i=0; i< no_vertices()-1; i++) 01257 { 01258 ri = r.op(i); 01259 lst line_i_repr; 01260 for (unsigned int d=0; d< nsd; d++) 01261 { 01262 line_i_repr.append(x.op(d) == (vertex(i+1).op(d) - vertex(0).op(d))*ri + vertex(0).op(d)); 01263 } 01264 line_i_repr.append(lst(ri, 0, 1)); 01265 01266 lines.append(line_i_repr); 01267 } 01268 01269 lst ret; 01270 for (unsigned int i=0; i < nsd; i++) 01271 { 01272 ri = r.op(i); 01273 GiNaC::ex xi_expr; 01274 GiNaC::ex rhs = lines.op(0).op(i).rhs().coeff(ri,0); 01275 for (unsigned int l=0; l < no_lines; l++) 01276 { 01277 // xi_expr2 == xi_expr.lhs() == xi_expr.rhs() + lines.op(l).op(i).rhs().coeff(ri,1)*ri; 01278 rhs += lines.op(l).op(i).rhs().coeff(ri,1)*ri; 01279 01280 } 01281 xi_expr = x.op(i) == rhs; 01282 ret.append(xi_expr); 01283 } 01284 01285 GiNaC::ex limit=1; 01286 for (unsigned int i=0; i< no_lines; i++) 01287 { 01288 ri = r.op(i); 01289 ret.append(lst(ri, 0, limit)); 01290 limit -= ri; 01291 } 01292 01293 return ret; 01294 }
def SyFi::Simplex::str | ( | self | ) |
str(self) -> string
Reimplemented from SyFi::Polygon.
Definition at line 1936 of file SyFi.py.
01936 : 01937 """str(self) -> string""" 01938 return _SyFi.Simplex_str(self) 01939 def integrate(self, *args):
const string SyFi::Simplex::str | ( | ) | const [virtual] |
Implements SyFi::Polygon.
Definition at line 1296 of file Polygon.cpp.
Referenced by _wrap_Simplex_str(), and main().
01297 { 01298 std::ostringstream s; 01299 /* 01300 s <<"Simplex("; 01301 for (int i=0; i<p.size()-1; i++) { 01302 s << p[i]<<","; 01303 } 01304 s << p[p.size()-1]<<")"; 01305 */ 01306 s <<"Simplex"; 01307 return s.str(); 01308 }
def SyFi::Simplex::sub_simplex | ( | self, | ||
args | ||||
) |
Simplex SyFi::Simplex::sub_simplex | ( | unsigned int | i | ) |
Definition at line 1334 of file Polygon.cpp.
References SyFi::istr(), Simplex(), and SyFi::Polygon::subscript.
Referenced by main().
01335 { 01336 if ( i < 0 || i >= p.size()) 01337 { 01338 throw std::out_of_range("Can only create subsimplices between 0 and the number of vertices-1."); 01339 } 01340 lst v; 01341 for (unsigned int k=0; k< p.size(); k++) 01342 { 01343 if ( k != i) 01344 { 01345 v.append(p[k]); 01346 } 01347 } 01348 return Simplex(v, istr(subscript, i)); 01349 }
SyFi::Simplex::__del__ = lambdaself:None; [static, private] |
tuple SyFi::Simplex::__getattr__ = lambdaself,name:_swig_getattr(self, Simplex, name) [static, private] |
SyFi::Simplex::__repr__ = _swig_repr [static, private] |
tuple SyFi::Simplex::__setattr__ = lambdaself,name,value:_swig_setattr(self, Simplex, name, value) [static, private] |
SyFi::Simplex::__swig_destroy__ = _SyFi.delete_Simplex [static, private] |
dictionary SyFi::Simplex::__swig_getmethods__ = {} [static, private] |
dictionary SyFi::Simplex::__swig_setmethods__ = {} [static, private] |