20#ifndef _FUNCPAIR_HYPERBOLA_CIRCLE_H_
21#define _FUNCPAIR_HYPERBOLA_CIRCLE_H_
23#include <mbsim/functions/contact/funcpair_conesection_circle.h>
57 double operator()(
const double &phi)
override;
58 fmatvec::Vec3 evalWrD(
const double &phi)
override;
62 inline double FuncPairHyperbolaCircle::operator()(
const double &phi) {
63 return -2 * b * (b2(0) *
d(0) + b2(1) *
d(1) + b2(2) *
d(2)) * cosh(phi) - 2 * a * (
b1(0) *
d(0) +
b1(1) *
d(1) +
b1(2) *
d(2)) * sinh(phi) - ((a * a) + (b * b)) * sinh(2 * phi);
65 inline fmatvec::Vec3 FuncPairHyperbolaCircle::evalWrD(
const double &phi) {
66 return d +
b1 * a * cosh(phi) + b2 * b * sinh(phi);
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
fmatvec::Vec3 d
distance-vector of cone-section- and circle-midpoint
Definition: funcpair_conesection_circle.h:85
root function for planar pairing Hyperbola and Circle
Definition: funcpair_hyperbola_circle.h:32
FuncPairHyperbolaCircle(double R_, double a_, double b_)
constructor
Definition: funcpair_hyperbola_circle.h:41
FuncPairHyperbolaCircle(double R_, double a_, double b_, bool hy_IN_ci_)
constructor
Definition: funcpair_hyperbola_circle.h:52
namespace MBSim
Definition: bilateral_constraint.cc:30