ROOT
6.13/01
Reference Guide
math
minuit2
src
SqrtLowParameterTransformation.cxx
Go to the documentation of this file.
1
// @(#)root/minuit2:$Id$
2
// Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005
3
4
/**********************************************************************
5
* *
6
* Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT *
7
* *
8
**********************************************************************/
9
10
// Project : LCG
11
// Package : Minuit
12
// Author : Lorenzo.MONETA@cern.ch
13
// Created by: moneta at Thu Apr 8 10:26:22 2004
14
15
#include "
Minuit2/SqrtLowParameterTransformation.h
"
16
#include "
Minuit2/MnMachinePrecision.h
"
17
18
namespace
ROOT
{
19
20
namespace
Minuit2 {
21
22
23
24
double
SqrtLowParameterTransformation::Int2ext
(
double
value,
double
lower)
const
{
25
/// internal to external transformation
26
double
val = lower - 1. +
sqrt
( value*value + 1.);
27
return
val;
28
}
29
30
31
double
SqrtLowParameterTransformation::Ext2int
(
double
value,
double
lower,
const
MnMachinePrecision
& )
const
{
32
// external to internal transformation
33
double
yy = value - lower + 1.;
34
double
yy2 = yy*yy;
35
if
(yy2 < 1. )
36
return
0;
37
else
38
return
sqrt
( yy2 -1);
39
}
40
41
42
double
SqrtLowParameterTransformation::DInt2Ext
(
double
value,
double
)
const
{
43
// derivative of internal to external transofrmation : d (Int2Ext) / d Int
44
double
val = value/(
sqrt
( value*value + 1.) );
45
return
val;
46
}
47
48
}
// namespace Minuit2
49
50
}
// namespace ROOT
ROOT
Namespace for new ROOT classes and functions.
Definition:
TFoamSampler.h:19
ROOT::Minuit2::MnMachinePrecision
determines the relative floating point arithmetic precision.
Definition:
MnMachinePrecision.h:27
sqrt
double sqrt(double)
MnMachinePrecision.h
ROOT::Minuit2::SqrtLowParameterTransformation::Ext2int
double Ext2int(double Value, double Lower, const MnMachinePrecision &) const
Definition:
SqrtLowParameterTransformation.cxx:31
ROOT::Minuit2::SqrtLowParameterTransformation::DInt2Ext
double DInt2Ext(double Value, double Lower) const
Definition:
SqrtLowParameterTransformation.cxx:42
SqrtLowParameterTransformation.h
ROOT::Minuit2::SqrtLowParameterTransformation::Int2ext
double Int2ext(double Value, double Lower) const
Definition:
SqrtLowParameterTransformation.cxx:24