Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
SqrtUpParameterTransformation.cxx
Go to the documentation of this file.
1// @(#)root/minuit2:$Id$
2// Authors: M. Winkler, F. James, L. Moneta, A. Zsenei, E.G.P. Bos 2003-2017
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
17
18namespace ROOT {
19
20namespace Minuit2 {
21
22long double SqrtUpParameterTransformation::Int2ext(long double value, long double upper) const
23{
24 // internal to external transformation
25 long double val = upper + 1. - std::sqrt(value * value + 1.);
26 return val;
27}
28
29long double SqrtUpParameterTransformation::Ext2int(long double value, long double upper, const MnMachinePrecision &) const
30{
31 // external to internal transformation
32 long double yy = upper - value + 1.;
33 long double yy2 = yy * yy;
34 if (yy2 < 1.)
35 return 0;
36 else
37 return std::sqrt(yy2 - 1);
38}
39
40long double SqrtUpParameterTransformation::DInt2Ext(long double value, long double) const
41{
42 // derivative of internal to external transformation : d (Int2Ext ) / d Int
43 long double val = -value / (std::sqrt(value * value + 1.));
44 return val;
45}
46
47} // namespace Minuit2
48
49} // namespace ROOT
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
Sets the relative floating point (double) arithmetic precision.
long double Int2ext(long double Value, long double Upper) const
long double DInt2Ext(long double Value, long double Upper) const
long double Ext2int(long double Value, long double Upper, const MnMachinePrecision &) const
This file contains a specialised ROOT message handler to test for diagnostic in unit tests.