20 #ifndef _FUNCPAIR_CONESECTION_CIRCLE_H_
21 #define _FUNCPAIR_CONESECTION_CIRCLE_H_
23 #include <mbsim/functions/contact/distance_function.h>
55 virtual double operator()(
const double &phi) = 0;
56 double operator[](
const double &phi);
57 virtual fmatvec::Vec3 evalWrD(
const double &phi) = 0;
61 void setDiffVec(fmatvec::Vec3 d_);
63 void setSectionCOS(fmatvec::Vec3 b1_, fmatvec::Vec3 b2_);
88 inline void FuncPairConeSectionCircle::setDiffVec(fmatvec::Vec3 d_) {
91 inline void FuncPairConeSectionCircle::setSectionCOS(fmatvec::Vec3 b1_, fmatvec::Vec3 b2_) {
95 inline double FuncPairConeSectionCircle::operator[](
const double &phi) {
97 return R -
nrm2(evalWrD(phi));
99 return nrm2(evalWrD(phi)) -
R;
Definition: distance_function.h:27
double nrm2(const Vector< Ref, double > &x)
base root function for planar pairing ConeSection and Circle
Definition: funcpair_conesection_circle.h:32
fmatvec::Vec3 b1
normed base-vectors of cone-section
Definition: funcpair_conesection_circle.h:80
FuncPairConeSectionCircle(double R_, double a_, double b_, bool sec_IN_ci_)
constructor
Definition: funcpair_conesection_circle.h:50
fmatvec::Vec3 d
distance-vector of cone-section- and circle-midpoint
Definition: funcpair_conesection_circle.h:85
FuncPairConeSectionCircle(double R_, double a_, double b_)
constructor
Definition: funcpair_conesection_circle.h:41
double R
radius of circle as well as length in b1- and b2-direction
Definition: funcpair_conesection_circle.h:70
bool sec_IN_ci
cone-section in circle
Definition: funcpair_conesection_circle.h:75