ROOT
Version master
master
v6.34
v6.32
v6.30
v6.28
v6.26
v6.24
v6.22
v6.20
v6.18
v6.16
v6.14
v6.12
v6.10
v6.08
v6.06
v6.04
Reference Guide
►
ROOT
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
Loading...
Searching...
No Matches
mndscal.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
/* dscal.f -- translated by f2c (version 20010320).
11
You must link the resulting object file with the libraries:
12
-lf2c -lm (in that order)
13
*/
14
15
namespace
ROOT
{
16
17
namespace
Minuit2 {
18
19
int
Mndscal
(
unsigned
int
n
,
double
da
,
double
*
dx
,
int
incx
)
20
{
21
/* System generated locals */
22
int
i__1
,
i__2
;
23
24
/* Local variables */
25
int
i__
,
m
,
nincx
,
mp1
;
26
27
/* scales a vector by a constant. */
28
/* uses unrolled loops for increment equal to one. */
29
/* jack dongarra, linpack, 3/11/78. */
30
/* modified 3/93 to return if incx .le. 0. */
31
/* modified 12/3/93, array(1) declarations changed to array(*) */
32
33
/* Parameter adjustments */
34
--
dx
;
35
36
/* Function Body */
37
if
(
n
<= 0 ||
incx
<= 0) {
38
return
0;
39
}
40
if
(
incx
== 1) {
41
goto
L20
;
42
}
43
44
/* code for increment not equal to 1 */
45
46
nincx
=
n
*
incx
;
47
i__1
=
nincx
;
48
i__2
=
incx
;
49
for
(
i__
= 1;
i__2 < 0 ? i__ >
=
i__1
:
i__
<=
i__1
;
i__
+=
i__2
) {
50
dx
[
i__
] =
da
*
dx
[
i__
];
51
/* L10: */
52
}
53
return
0;
54
55
/* code for increment equal to 1 */
56
57
/* clean-up loop */
58
59
L20
:
60
m
=
n
% 5;
61
if
(
m
== 0) {
62
goto
L40
;
63
}
64
i__2
=
m
;
65
for
(
i__
= 1;
i__
<=
i__2
; ++
i__
) {
66
dx
[
i__
] =
da
*
dx
[
i__
];
67
/* L30: */
68
}
69
if
(
n
< 5) {
70
return
0;
71
}
72
L40
:
73
mp1
=
m
+ 1;
74
i__2
=
n
;
75
for
(
i__
=
mp1
;
i__
<=
i__2
;
i__
+= 5) {
76
dx
[
i__
] =
da
*
dx
[
i__
];
77
dx
[
i__
+ 1] =
da
*
dx
[
i__
+ 1];
78
dx
[
i__
+ 2] =
da
*
dx
[
i__
+ 2];
79
dx
[
i__
+ 3] =
da
*
dx
[
i__
+ 3];
80
dx
[
i__
+ 4] =
da
*
dx
[
i__
+ 4];
81
/* L50: */
82
}
83
return
0;
84
}
/* dscal_ */
85
86
}
// namespace Minuit2
87
88
}
// namespace ROOT
TRangeDynCast
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Definition
TCollection.h:358
ROOT::Detail::TRangeCast
Definition
TCollection.h:311
n
const Int_t n
Definition
legend1.C:16
ROOT::Minuit2::Mndscal
int Mndscal(unsigned int, double, double *, int)
Definition
mndscal.cxx:19
ROOT
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
Definition
EExecutionPolicy.hxx:4
m
TMarker m
Definition
textangle.C:8
math
minuit2
src
mndscal.cxx
ROOT master - Reference Guide Generated on Mon Mar 3 2025 04:37:44 (GVA Time) using Doxygen 1.10.0