SyFi
0.3
|
#include <Polygon.h>
Public Member Functions | |
virtual | ~Polygon () |
virtual unsigned int | no_space_dim () const =0 |
virtual unsigned int | no_vertices () const |
virtual GiNaC::ex | vertex (unsigned int i) const |
virtual GiNaC::ex | repr (Repr_format format=SUBS_PERFORMED) const =0 |
virtual const std::string | str () const =0 |
virtual GiNaC::ex | integrate (GiNaC::ex f, Repr_format format=SUBS_PERFORMED)=0 |
virtual Polygon * | copy () const =0 |
virtual Line | line (unsigned int i) const |
virtual Triangle | triangle (unsigned int i) const |
virtual Rectangle | rectangle (unsigned int i) const |
Protected Member Functions | |
Polygon (const std::string &subscript_="", unsigned int no_vert=0) | |
Polygon (const Polygon &polygon) | |
Protected Attributes | |
std::string | subscript |
GiNaC::exvector | p |
SyFi::Polygon::Polygon | ( | const std::string & | subscript_ = "" , |
unsigned int | no_vert = 0 |
||
) | [protected] |
SyFi::Polygon::Polygon | ( | const Polygon & | polygon | ) | [protected] |
virtual SyFi::Polygon::~Polygon | ( | ) | [inline, virtual] |
virtual Polygon* SyFi::Polygon::copy | ( | ) | const [pure virtual] |
Implemented in SyFi::Simplex, SyFi::ReferenceBox, SyFi::Box, SyFi::ReferenceTetrahedron, SyFi::Tetrahedron, SyFi::ReferenceRectangle, SyFi::Rectangle, SyFi::ReferenceTriangle, SyFi::Triangle, SyFi::ReferenceLine, SyFi::Line, and SyFi::SpaceTimeDomain.
Referenced by SyFi::StandardFE::set_polygon(), and SyFi::SpaceTimeDomain::SpaceTimeDomain().
virtual GiNaC::ex SyFi::Polygon::integrate | ( | GiNaC::ex | f, |
Repr_format | format = SUBS_PERFORMED |
||
) | [pure virtual] |
Implemented in SyFi::Simplex, SyFi::Box, SyFi::ReferenceTetrahedron, SyFi::Tetrahedron, SyFi::Rectangle, SyFi::ReferenceTriangle, SyFi::Triangle, SyFi::ReferenceLine, SyFi::Line, and SyFi::SpaceTimeDomain.
Referenced by SyFi::compute_mixed_Poisson_element_matrix(), compute_nlconvdiff_element_matrix(), compute_Poisson_element_matrix(), compute_poisson_element_matrix(), SyFi::compute_Poisson_element_matrix(), SyFi::compute_Stokes_element_matrix(), and SyFi::SpaceTimeDomain::integrate().
Line SyFi::Polygon::line | ( | unsigned int | i | ) | const [virtual] |
Reimplemented in SyFi::Box, SyFi::Tetrahedron, SyFi::Rectangle, SyFi::Triangle, and SyFi::SpaceTimeDomain.
Definition at line 70 of file Polygon.cpp.
{ throw std::logic_error("line not implemented for this polygon subclass"); }
virtual unsigned int SyFi::Polygon::no_space_dim | ( | ) | const [pure virtual] |
Implemented in SyFi::Simplex, SyFi::Box, SyFi::Tetrahedron, SyFi::Rectangle, SyFi::Triangle, SyFi::Line, and SyFi::SpaceTimeDomain.
Referenced by SyFi::SpaceTimeDomain::no_space_dim().
unsigned int SyFi::Polygon::no_vertices | ( | ) | const [virtual] |
Definition at line 56 of file Polygon.cpp.
References p.
Referenced by SyFi::barycenter(), SyFi::Bubble::compute_basis_functions(), SyFi::P0::compute_basis_functions(), main(), and SyFi::Simplex::repr().
{ return p.size(); }
Rectangle SyFi::Polygon::rectangle | ( | unsigned int | i | ) | const [virtual] |
Reimplemented in SyFi::Box.
Definition at line 80 of file Polygon.cpp.
{ throw std::logic_error("rectangle not implemented for this polygon subclass"); }
virtual GiNaC::ex SyFi::Polygon::repr | ( | Repr_format | format = SUBS_PERFORMED | ) | const [pure virtual] |
Implemented in SyFi::Simplex, SyFi::Box, SyFi::Tetrahedron, SyFi::Rectangle, SyFi::Triangle, SyFi::Line, and SyFi::SpaceTimeDomain.
Referenced by SyFi::SpaceTimeDomain::repr().
virtual const std::string SyFi::Polygon::str | ( | ) | const [pure virtual] |
Implemented in SyFi::Simplex, SyFi::ReferenceBox, SyFi::Box, SyFi::ReferenceTetrahedron, SyFi::Tetrahedron, SyFi::ReferenceRectangle, SyFi::Rectangle, SyFi::ReferenceTriangle, SyFi::Triangle, SyFi::ReferenceLine, SyFi::Line, and SyFi::SpaceTimeDomain.
Referenced by SyFi::bernstein(), SyFi::bernsteinv(), SyFi::Bubble::compute_basis_functions(), SyFi::Hermite::compute_basis_functions(), SyFi::Lagrange::compute_basis_functions(), SyFi::CrouzeixRaviart::compute_basis_functions(), SyFi::Nedelec::compute_basis_functions(), SyFi::Nedelec2Hdiv::compute_basis_functions(), SyFi::RaviartThomas::compute_basis_functions(), SyFi::Robust::compute_basis_functions(), SyFi::BrezziDouglasMarini::compute_basis_functions(), SyFi::Robust::compute_basis_functions_old(), and SyFi::SpaceTimeDomain::str().
Triangle SyFi::Polygon::triangle | ( | unsigned int | i | ) | const [virtual] |
Reimplemented in SyFi::Tetrahedron.
Definition at line 75 of file Polygon.cpp.
{ throw std::logic_error("triangle not implemented for this polygon subclass"); }
ex SyFi::Polygon::vertex | ( | unsigned int | i | ) | const [virtual] |
Definition at line 61 of file Polygon.cpp.
References p.
Referenced by SyFi::barycenter(), SyFi::bernstein(), SyFi::bezier_ordinates(), SyFi::CrouzeixRaviart::compute_basis_functions(), SyFi::Nedelec::compute_basis_functions(), SyFi::Hermite::compute_basis_functions(), SyFi::P0::compute_basis_functions(), SyFi::Bubble::compute_basis_functions(), SyFi::Nedelec2Hdiv::compute_basis_functions(), SyFi::Robust::compute_basis_functions(), SyFi::RaviartThomas::compute_basis_functions(), SyFi::Robust::compute_basis_functions_old(), SyFi::Simplex::integrate(), SyFi::interior_coordinates(), main(), SyFi::normal(), Polygon(), SyFi::Triangle::repr(), SyFi::Tetrahedron::repr(), SyFi::Simplex::repr(), and SyFi::tangent().
GiNaC::exvector SyFi::Polygon::p [protected] |
Definition at line 47 of file Polygon.h.
Referenced by SyFi::Line::integrate(), SyFi::Triangle::integrate(), SyFi::Rectangle::integrate(), SyFi::Tetrahedron::integrate(), SyFi::Triangle::line(), SyFi::Rectangle::line(), SyFi::Tetrahedron::line(), no_vertices(), Polygon(), SyFi::Triangle::repr(), SyFi::Rectangle::repr(), SyFi::Tetrahedron::triangle(), and vertex().
std::string SyFi::Polygon::subscript [protected] |
Definition at line 46 of file Polygon.h.
Referenced by SyFi::Triangle::line(), SyFi::Rectangle::line(), SyFi::Tetrahedron::line(), SyFi::Box::line(), SyFi::Box::rectangle(), SyFi::Simplex::sub_simplex(), and SyFi::Tetrahedron::triangle().