Class xlifepp::MeshedGeodesic#

class MeshedGeodesic : public xlifepp::Geodesic#

MeshedGeodesic class handling any geodesic got using surface mesh Mesh is assumed to be linear dom_p must be allocated.

In addition to xs_,dxs_, curAbcs_, compute function fills in the vector of crossed elements (GeomElement*,outward side number)

Public Functions

Geodesic &compute(Point &x, Point &d, GeomElement *gelt, real_t &l, real_t lmax, number_t &n, number_t nbp, real_t dt = 0)#

compute geodesic from x, dx with curvilinear length lmax

virtual Geodesic &compute(Point &x, Point &dx, real_t &l, real_t lmax, number_t n, real_t dt = 0)#

clear xs_,dxs_,curAbcs

GeomElement *locateElementFromVertex(Point &x, Point &dx, number_t &s, GeomElement *gelt0 = nullptr) const#

locate next element when x is a vertex

GeomElement *locateStartingElement(Point &x, Point &dx, number_t &s) const#

effective computation

locate starting element for any starting pair (x,dx)