SyFi
0.3
|
#include <SpaceTimeElement.h>
Public Member Functions | |
SpaceTimeDomain (Line &time_line_, Polygon &polygon_) | |
SpaceTimeDomain (const SpaceTimeDomain &space_time_domain_) | |
Polygon & | get_space_domain () const |
Line & | get_time_domain () const |
virtual unsigned int | no_space_dim () const |
virtual Line | line (unsigned int i) const |
virtual GiNaC::ex | repr (Repr_format=SUBS_PERFORMED) const |
virtual const std::string | str () const |
virtual GiNaC::ex | integrate (GiNaC::ex f, Repr_format format=SUBS_PERFORMED) |
virtual SpaceTimeDomain * | copy () const |
Private Attributes | |
Line * | time_line |
Polygon * | polygon |
Definition at line 26 of file SpaceTimeElement.h.
SyFi::SpaceTimeDomain::SpaceTimeDomain | ( | Line & | time_line_, |
Polygon & | polygon_ | ||
) |
Definition at line 27 of file SpaceTimeElement.cpp.
References SyFi::Polygon::copy(), SyFi::Line::copy(), polygon, and time_line.
Referenced by copy().
SyFi::SpaceTimeDomain::SpaceTimeDomain | ( | const SpaceTimeDomain & | space_time_domain_ | ) |
Definition at line 38 of file SpaceTimeElement.cpp.
References SyFi::Polygon::copy(), SyFi::Line::copy(), get_space_domain(), get_time_domain(), polygon, and time_line.
SpaceTimeDomain * SyFi::SpaceTimeDomain::copy | ( | ) | const [virtual] |
Implements SyFi::Polygon.
Definition at line 33 of file SpaceTimeElement.cpp.
References SpaceTimeDomain().
{ return new SpaceTimeDomain(*this); }
Polygon& SyFi::SpaceTimeDomain::get_space_domain | ( | ) | const [inline] |
Definition at line 34 of file SpaceTimeElement.h.
Referenced by SpaceTimeDomain().
{ return *((*polygon).copy()); }
Line& SyFi::SpaceTimeDomain::get_time_domain | ( | ) | const [inline] |
Definition at line 35 of file SpaceTimeElement.h.
Referenced by SpaceTimeDomain().
{ return *((*time_line).copy()); }
GiNaC::ex SyFi::SpaceTimeDomain::integrate | ( | GiNaC::ex | f, |
Repr_format | format = SUBS_PERFORMED |
||
) | [virtual] |
Implements SyFi::Polygon.
Definition at line 77 of file SpaceTimeElement.cpp.
References SyFi::Polygon::integrate(), SyFi::Line::integrate(), polygon, SyFi::t, time_line, and SyFi::x.
Line SyFi::SpaceTimeDomain::line | ( | unsigned int | i | ) | const [virtual] |
Reimplemented from SyFi::Polygon.
Definition at line 64 of file SpaceTimeElement.cpp.
{ //FIXME // Could use the convention that the time line is the first line, the // next lines are the lines in the polygon return Line(); }
unsigned int SyFi::SpaceTimeDomain::no_space_dim | ( | ) | const [virtual] |
Implements SyFi::Polygon.
Definition at line 59 of file SpaceTimeElement.cpp.
References SyFi::Polygon::no_space_dim(), and polygon.
{ return polygon->no_space_dim() +1; }
GiNaC::ex SyFi::SpaceTimeDomain::repr | ( | Repr_format | format = SUBS_PERFORMED | ) | const [virtual] |
Implements SyFi::Polygon.
Definition at line 72 of file SpaceTimeElement.cpp.
References polygon, SyFi::Polygon::repr(), SyFi::Line::repr(), SyFi::t, and time_line.
const std::string SyFi::SpaceTimeDomain::str | ( | ) | const [virtual] |
Implements SyFi::Polygon.
Definition at line 54 of file SpaceTimeElement.cpp.
References polygon, and SyFi::Polygon::str().
Polygon* SyFi::SpaceTimeDomain::polygon [private] |
Definition at line 29 of file SpaceTimeElement.h.
Referenced by integrate(), no_space_dim(), repr(), SpaceTimeDomain(), and str().
Line* SyFi::SpaceTimeDomain::time_line [private] |
Definition at line 28 of file SpaceTimeElement.h.
Referenced by integrate(), repr(), and SpaceTimeDomain().