31 template <
typename T,
int dtun_center,
int dtun_left,
int dtun_right,
int dfin>
37 int ixtun=1,
int iytun=2,
int idleft=1,
int idright=1,
int ixin=1,
int iyin=2)
39 adoreMatrix<T> resultmat;
40 resultmat.set_size(5,finput->
getData().nc());
45 T dleft = tunnel_left->
fi(s,idleft-1);
46 T dright = tunnel_right->
fi(s,idright-1);
47 resultmat(0,0) = finput->
getData()(0,0);
50 resultmat(3,0) = (n+w2)/(n+w2>(T)0?dleft:dright);
51 resultmat(4,0) = (n-w2)/(n-w2>(T)0?dleft:dright);
53 for(
int i=1;i<finput->
getData().nc();i++)
56 dleft = tunnel_left->
fi(s,idleft-1);
57 dright = tunnel_right->
fi(s,idright-1);
58 resultmat(0,i) = finput->
getData()(0,i);
61 resultmat(3,i) = (n+w2)/(n+w2>(T)0?dleft:dright);
62 resultmat(4,i) = (n-w2)/(n-w2>(T)0?dleft:dright);
Definition: llinearpiecewisefunction.h:139
double getClosestParameter_local(T px, T py, int d1, int d2, T x0, T *n_min=nullptr) const
Definition: llinearpiecewisefunction.h:1034
double getClosestParameter(T px, T py, int d1, int d2, T &n_min) const
Definition: llinearpiecewisefunction.h:1014
virtual T fi(DT x, int row) const override
Definition: llinearpiecewisefunction.h:391
adoreMatrix< T, n+1, 0 > & getData()
Definition: llinearpiecewisefunction.h:147
LLinearPiecewiseFunctionM< T, 4 > getTunnelProjection(LLinearPiecewiseFunctionM< T, dtun_center > *tunnel_center, LLinearPiecewiseFunctionM< T, dtun_left > *tunnel_left, LLinearPiecewiseFunctionM< T, dtun_right > *tunnel_right, LLinearPiecewiseFunctionM< T, dfin > *finput, T winput, int ixtun=1, int iytun=2, int idleft=1, int idright=1, int ixin=1, int iyin=2)
Definition: tunnelprojection.h:32
bool overlaps(const T &a0, const T &a1, const T &b0, const T &b1)
Definition: adoremath.h:655
Definition: areaofeffectconverter.h:20