Skip to content

Commit 0e551fb

Browse files
JeffreySarnoffararslan
authored andcommitted
Replace Float32 consts with oftype expressions (#50)
1 parent 9ad23b0 commit 0e551fb

File tree

2 files changed

+20
-20
lines changed

2 files changed

+20
-20
lines changed

src/rules/base.jl

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,27 @@
11
@scalar_rule(abs2(x), Wirtinger(x', x))
22
@scalar_rule(log(x), inv(x))
3-
@scalar_rule(log10(x), inv(x) / log(10f0))
4-
@scalar_rule(log2(x), inv(x) / log(2f0))
3+
@scalar_rule(log10(x), inv(x) / log(oftype(x, 10)))
4+
@scalar_rule(log2(x), inv(x) / log(oftype(x, 2)))
55
@scalar_rule(log1p(x), inv(x + 1))
66
@scalar_rule(expm1(x), exp(x))
77
@scalar_rule(sin(x), cos(x))
88
@scalar_rule(cos(x), -sin(x))
99
@scalar_rule(sinpi(x), π * cospi(x))
1010
@scalar_rule(cospi(x), -π * sinpi(x))
11-
@scalar_rule(sind(x), (π / 180f0) * cosd(x))
12-
@scalar_rule(cosd(x), -/ 180f0) * sind(x))
11+
@scalar_rule(sind(x), (π / oftype(x, 180)) * cosd(x))
12+
@scalar_rule(cosd(x), -/ oftype(x, 180)) * sind(x))
1313
@scalar_rule(asin(x), inv(sqrt(1 - x^2)))
1414
@scalar_rule(acos(x), -inv(sqrt(1 - x^2)))
1515
@scalar_rule(atan(x), inv(1 + x^2))
1616
@scalar_rule(asec(x), inv(abs(x) * sqrt(x^2 - 1)))
1717
@scalar_rule(acsc(x), -inv(abs(x) * sqrt(x^2 - 1)))
1818
@scalar_rule(acot(x), -inv(1 + x^2))
19-
@scalar_rule(asind(x), 180f0 / π / sqrt(1 - x^2))
20-
@scalar_rule(acosd(x), -180f0 / π / sqrt(1 - x^2))
21-
@scalar_rule(atand(x), 180f0 / π / (1 + x^2))
22-
@scalar_rule(asecd(x), 180f0 / π / abs(x) / sqrt(x^2 - 1))
23-
@scalar_rule(acscd(x), -180f0 / π / abs(x) / sqrt(x^2 - 1))
24-
@scalar_rule(acotd(x), -180f0 / π / (1 + x^2))
19+
@scalar_rule(asind(x), oftype(x, 180) / π / sqrt(1 - x^2))
20+
@scalar_rule(acosd(x), -oftype(x, 180) / π / sqrt(1 - x^2))
21+
@scalar_rule(atand(x), oftype(x, 180) / π / (1 + x^2))
22+
@scalar_rule(asecd(x), oftype(x, 180) / π / abs(x) / sqrt(x^2 - 1))
23+
@scalar_rule(acscd(x), -oftype(x, 180) / π / abs(x) / sqrt(x^2 - 1))
24+
@scalar_rule(acotd(x), -oftype(x, 180) / π / (1 + x^2))
2525
@scalar_rule(sinh(x), cosh(x))
2626
@scalar_rule(cosh(x), sinh(x))
2727
@scalar_rule(tanh(x), sech(x)^2)
@@ -32,8 +32,8 @@
3232
@scalar_rule(asech(x), -inv(x * sqrt(1 - x^2)))
3333
@scalar_rule(acsch(x), -inv(abs(x) * sqrt(1 + x^2)))
3434
@scalar_rule(acoth(x), inv(1 - x^2))
35-
@scalar_rule(deg2rad(x), π / 180f0)
36-
@scalar_rule(rad2deg(x), 180f0 / π)
35+
@scalar_rule(deg2rad(x), π / oftype(x, 180))
36+
@scalar_rule(rad2deg(x), oftype(x, 180) / π)
3737
@scalar_rule(conj(x), Wirtinger(Zero(), One()))
3838
@scalar_rule(adjoint(x), Wirtinger(Zero(), One()))
3939
@scalar_rule(transpose(x), One())
@@ -50,16 +50,16 @@
5050
@scalar_rule(sqrt(x), inv(2 * Ω))
5151
@scalar_rule(cbrt(x), inv(3 * Ω^2))
5252
@scalar_rule(exp(x), Ω)
53-
@scalar_rule(exp2(x), Ω * log(2f0))
54-
@scalar_rule(exp10(x), Ω * log(10f0))
53+
@scalar_rule(exp2(x), Ω * log(oftype(x, 2)))
54+
@scalar_rule(exp10(x), Ω * log(oftype(x, 10)))
5555
@scalar_rule(tan(x), 1 + Ω^2)
5656
@scalar_rule(sec(x), Ω * tan(x))
5757
@scalar_rule(csc(x), -Ω * cot(x))
5858
@scalar_rule(cot(x), -(1 + Ω^2))
59-
@scalar_rule(tand(x), (π / 180f0) * (1 + Ω^2))
60-
@scalar_rule(secd(x), (π / 180f0) * Ω * tand(x))
61-
@scalar_rule(cscd(x), -/ 180f0) * Ω * cotd(x))
62-
@scalar_rule(cotd(x), -/ 180f0) * (1 + Ω^2))
59+
@scalar_rule(tand(x), (π / oftype(x, 180)) * (1 + Ω^2))
60+
@scalar_rule(secd(x), (π / oftype(x, 180)) * Ω * tand(x))
61+
@scalar_rule(cscd(x), -/ oftype(x, 180)) * Ω * cotd(x))
62+
@scalar_rule(cotd(x), -/ oftype(x, 180)) * (1 + Ω^2))
6363
@scalar_rule(sech(x), -tanh(x) * Ω)
6464
@scalar_rule(csch(x), -coth(x) * Ω)
6565
@scalar_rule(hypot(x, y), (y / Ω, x / Ω))

src/rules/nanmath.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
@scalar_rule(NaNMath.acosh(x), inv(NaNMath.sqrt(NaNMath.pow(x, 2) - 1)))
66
@scalar_rule(NaNMath.atanh(x), inv(1 - NaNMath.pow(x, 2)))
77
@scalar_rule(NaNMath.log(x), inv(x))
8-
@scalar_rule(NaNMath.log2(x), inv(x) / NaNMath.log(2f0))
9-
@scalar_rule(NaNMath.log10(x), inv(x) / NaNMath.log(10f0))
8+
@scalar_rule(NaNMath.log2(x), inv(x) / NaNMath.log(oftype(x, 2)))
9+
@scalar_rule(NaNMath.log10(x), inv(x) / NaNMath.log(oftype(x, 10)))
1010
@scalar_rule(NaNMath.log1p(x), inv(x + 1))
1111
@scalar_rule(NaNMath.lgamma(x), SpecialFunctions.digamma(x))
1212
@scalar_rule(NaNMath.sqrt(x), inv(2 * Ω))

0 commit comments

Comments
 (0)