Page Menu
Home
Code
Search
Configure Global Search
Log In
Files
F391592
_base.js
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
2 KB
Subscribers
None
_base.js
View Options
if
(
!
dojo
.
_hasResource
[
"dojox.math._base"
]){
//_hasResource checks added by build. Do not use _hasResource directly in your code.
dojo
.
_hasResource
[
"dojox.math._base"
]
=
true
;
dojo
.
provide
(
"dojox.math._base"
);
dojo
.
mixin
(
dojox
.
math
,
{
degreesToRadians
:
function
(
/* Number */
n
){
// summary
// Convert the passed number to radians.
return
(
n
*
Math
.
PI
)
/
180
;
// Number
},
radiansToDegrees
:
function
(
/* Number */
n
){
// summary
// Convert the passed number to degrees.
return
(
n
*
180
)
/
Math
.
PI
;
// Number
},
factoral
:
function
(
/* Number */
n
){
// summary
// Return the factoral of n.
if
(
n
<
1
){
return
0
;
// Number
}
var
ret
=
1
;
for
(
var
i
=
1
;
i
<=
n
;
i
++
){
ret
*=
i
;
}
return
ret
;
// Number
},
permutations
:
function
(
/* Number */
n
,
/* Number */
k
){
// summary
// TODO
if
(
n
==
0
||
k
==
0
){
return
1
;
// Number
}
return
(
this
.
factoral
(
n
)
/
this
.
factoral
(
n
-
k
));
},
combinations
:
function
(
/* Number */
n
,
/* Number */
r
){
// summary
// TODO
if
(
n
==
0
||
r
==
0
){
return
1
;
// Number
}
return
(
this
.
factoral
(
n
)
/
(
this
.
factoral
(
n
-
r
)
*
this
.
factoral
(
r
)));
// Number
},
bernstein
:
function
(
/* Number */
t
,
/* Number */
n
,
/* Number */
i
){
// summary
// TODO
return
(
this
.
combinations
(
n
,
i
)
*
Math
.
pow
(
t
,
i
)
*
Math
.
pow
(
1
-
t
,
n
-
i
));
// Number
},
gaussian
:
function
(){
// summary
// Return a random number based on the Gaussian algo.
var
k
=
2
;
do
{
var
i
=
2
*
Math
.
random
()
-
1
;
var
j
=
2
*
Math
.
random
()
-
1
;
k
=
i
*
i
+
j
*
j
;
}
while
(
k
>=
1
);
return
(
i
*
Math
.
sqrt
((
-
2
*
Math
.
log
(
k
))
/
k
));
// Number
},
// basic statistics
sd
:
function
(
/* Array */
a
){
// summary
// Returns the standard deviation of the passed arguments.
return
Math
.
sqrt
(
this
.
variance
(
a
));
// Number
},
variance
:
function
(
/* Array */
a
){
// summary
// Find the variance in the passed array of numbers.
var
mean
=
0
,
squares
=
0
;
dojo
.
forEach
(
a
,
function
(
item
){
mean
+=
item
;
squares
+=
Math
.
pow
(
item
,
2
);
});
return
(
squares
/
a
.
length
)
-
Math
.
pow
(
mean
/
a
.
length
,
2
);
// Number
},
// create a range of numbers
range
:
function
(
/* Number */
a
,
/* Number? */
b
,
/* Number? */
step
){
// summary
// Create a range of numbers based on the parameters.
if
(
arguments
.
length
<
2
){
b
=
a
,
a
=
0
;
}
var
s
=
step
||
1
;
var
range
=
[];
if
(
s
>
0
){
for
(
var
i
=
a
;
i
<
b
;
i
+=
s
){
range
.
push
(
i
);
}
}
else
{
if
(
s
<
0
){
for
(
var
i
=
a
;
i
>
b
;
i
+=
s
){
range
.
push
(
i
);
}
}
else
{
throw
new
Error
(
"dojox.math.range: step must not be zero."
);
}
}
return
range
;
// Array
},
distance
:
function
(
/* Array */
a
,
/* Array */
b
){
// summary
// Calculate the distance between point A and point B
return
Math
.
sqrt
(
Math
.
pow
(
b
[
0
]
-
a
[
0
],
2
)
+
Math
.
pow
(
b
[
1
]
-
a
[
1
],
2
));
// Number
},
midpoint
:
function
(
/* Array */
a
,
/* Array */
b
){
// summary
// Calculate the midpoint between points A and B. A and B may be multidimensional.
if
(
a
.
length
!=
b
.
length
){
console
.
error
(
"dojox.math.midpoint: Points A and B are not the same dimensionally."
,
a
,
b
);
}
var
m
=
[];
for
(
var
i
=
0
;
i
<
a
.
length
;
i
++
){
m
[
i
]
=
(
a
[
i
]
+
b
[
i
])
/
2
;
}
return
m
;
// Array
}
});
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Feb 22, 20:24 (1 d, 9 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
26359
Default Alt Text
_base.js (2 KB)
Attached To
rZED Zed
Event Timeline
Log In to Comment