21 double SinParameterTransformation::Int2ext(
double Value,
double Upper,
double Lower)
const {
23 return Lower + 0.5*(Upper - Lower)*(sin(Value) + 1.);
26 double SinParameterTransformation::Ext2int(
double Value,
double Upper,
double Lower,
const MnMachinePrecision& prec)
const {
29 double piby2 = 2.*atan(1.);
30 double distnn = 8.*sqrt(prec.Eps2());
31 double vlimhi = piby2 - distnn;
32 double vlimlo = -piby2 + distnn;
34 double yy = 2.*(Value - Lower)/(Upper - Lower) - 1.;
36 if(yy2 > (1. - prec.Eps2())) {
52 double SinParameterTransformation::DInt2Ext(
double Value,
double Upper,
double Lower)
const {
54 return 0.5*((Upper - Lower)*cos(Value));