36 #ifndef DIMENSIONALCHASTEPOINT_HPP_ 37 #define DIMENSIONALCHASTEPOINT_HPP_ 40 #include "ChasteSerialization.hpp" 41 #include "SmartPointers.hpp" 42 #include "UblasVectorInclude.hpp" 43 #include "UnitCollection.hpp" 44 #include "BaseUnits.hpp" 50 template<
unsigned DIM>
63 template<
class Archive>
64 void serialize(Archive & ar,
const unsigned int version)
101 DimensionalChastePoint(
double x= 0.0,
double y = 0.0,
double z = 0.0, units::quantity<unit::length> referenceLength = 1.e-6*unit::metres);
117 static boost::shared_ptr<DimensionalChastePoint<DIM> >
Create(
double x,
double y,
double z, units::quantity<unit::length> referenceLength);
124 static boost::shared_ptr<DimensionalChastePoint<DIM> >
Create(c_vector<double, DIM> coords, units::quantity<unit::length> referenceLength);
155 units::quantity<unit::length>
GetNorm2();
168 c_vector<double, DIM>
GetLocation(units::quantity<unit::length> scale);
175 const c_vector<double, DIM>
GetLocation(units::quantity<unit::length> scale)
const;
272 template<
unsigned DIM>
286 template<
unsigned DIM>
300 template<
unsigned DIM>
314 template<
unsigned DIM>
DimensionalChastePoint(double x=0.0, double y=0.0, double z=0.0, units::quantity< unit::length > referenceLength=1.e-6 *unit::metres)
c_vector< double, DIM > GetUnitTangent(const DimensionalChastePoint< DIM > &rLocation) const
DimensionalChastePoint< DIM > & operator-=(const DimensionalChastePoint< DIM > &rLocation)
bool IsCoincident(const DimensionalChastePoint< DIM > &rLocation) const
void serialize(Archive &ar, const unsigned int version)
units::quantity< unit::length > GetReferenceLengthScale() const
DimensionalChastePoint< DIM > GetMidPoint(const DimensionalChastePoint< DIM > &rLocation) const
units::quantity< unit::length > GetDistance(const DimensionalChastePoint< DIM > &rLocation) const
DimensionalChastePoint< DIM > & operator*=(double factor)
void SetIndex(unsigned index)
void TranslateTo(DimensionalChastePoint< DIM > rPoint)
c_vector< double, DIM > GetUnitVector() const
friend class boost::serialization::access
c_vector< double, DIM > GetLocation(units::quantity< unit::length > scale)
units::quantity< unit::length > mReferenceLength
void RotateAboutAxis(c_vector< double, 3 > axis, double angle)
units::quantity< unit::length > GetNorm2()
void SetReferenceLengthScale(units::quantity< unit::length > lenthScale)
static boost::shared_ptr< DimensionalChastePoint< DIM > > Create(double x, double y, double z, units::quantity< unit::length > referenceLength)
virtual ~DimensionalChastePoint()
DimensionalChastePoint< DIM > & operator/=(double factor)
void Translate(DimensionalChastePoint< DIM > rVector)
c_vector< double, DIM > mLocation
DimensionalChastePoint< DIM > & operator+=(const DimensionalChastePoint< DIM > &rLocation)