Skip to content

Commit 2dc94f9

Browse files
committed
fixup: use exponent to align values
1 parent fee5127 commit 2dc94f9

File tree

2 files changed

+67
-51
lines changed

2 files changed

+67
-51
lines changed

src/common/math/Constant.h

+50-50
Original file line numberDiff line numberDiff line change
@@ -5,57 +5,57 @@
55
#define COMMON_MATH_CONSTANT_H_
66

77
namespace Math {
8-
// Type Name Value Operation GNU std::numbers
9-
constexpr float phi_f = 1.61803399f; // φ phif
10-
constexpr float egamma_f = 1.56746826f; // Γe egammaf
11-
constexpr float ln2_f = .693147181f; // ln(2) M_LN2f ln2f
12-
constexpr float ln10_f = 2.30258509f; // ln(10) M_LN10f ln10f
13-
constexpr float log2e_f = 1.44269504f; // log2(e) M_LOG2Ef log2ef
14-
constexpr float log10e_f = .434294482f; // log10(e) M_LOG10Ef log10ef
15-
constexpr float pi_f = 3.14159265f; // π M_PIf pif
16-
constexpr float mul2_pi_f = 6.28318531f; //
17-
constexpr float inv_pi_f = .318309886f; // 1÷π M_1_PIf inv_pif
18-
constexpr float inv_mul2_pi_f = .159154943f; // 1÷2π
19-
constexpr float div2_pi_f = .636619772f; // 2÷π M_2_PIf
20-
constexpr float div180_pi_f = 57.2957795f; // 180÷π
21-
constexpr float divpi_2_f = 1.57079633f; // π÷2 M_PI_2f
22-
constexpr float divpi_4_f = .785398163f; // π÷4 M_PI_4f
23-
constexpr float divpi_90_f = .034906585f; // π÷90
24-
constexpr float divpi_180_f = .0174532925f; // π÷180
25-
constexpr float divpi_360_f = .00872664626f; // π÷360
26-
constexpr float sqrtpi_f = 1.77245385f; // √π sqrtpif
27-
constexpr float sqrt2_f = 1.41421356f; // √2 M_SQRT2f sqrt2f
28-
constexpr float sqrt3_f = 1.73205081f; // √3 sqrt3f
29-
constexpr float inv_sqrtpi_f = 1.77245385f; // 1÷√π inv_sqrtpif
30-
constexpr float inv_sqrt2_f = .707106781f; // 1÷√2 M_SQRT1_2f inv_sqrt2f
31-
constexpr float inv_sqrt3_f = .577350269f; // 1÷√3 inv_sqrt3f
32-
constexpr float div2_sqrtpi_f = 1.12837917f; // 2÷√π M_2_SQRTPIf
8+
// Type Name Value Operation GNU std::numbers
9+
constexpr float phi_f = 1.61803399e+0f; // φ phif
10+
constexpr float egamma_f = 1.56746826e+0f; // Γe egammaf
11+
constexpr float ln2_f = 6.93147181e-1f; // ln(2) M_LN2f ln2f
12+
constexpr float ln10_f = 2.30258509e+0f; // ln(10) M_LN10f ln10f
13+
constexpr float log2e_f = 1.44269504e+0f; // log2(e) M_LOG2Ef log2ef
14+
constexpr float log10e_f = 4.34294482e-1f; // log10(e) M_LOG10Ef log10ef
15+
constexpr float pi_f = 3.14159265e+0f; // π M_PIf pif
16+
constexpr float mul2_pi_f = 6.28318531e+0f; //
17+
constexpr float inv_pi_f = 3.18309886e-1f; // 1÷π M_1_PIf inv_pif
18+
constexpr float inv_mul2_pi_f = 1.59154943e-1f; // 1÷2π
19+
constexpr float div2_pi_f = 6.36619772e-1f; // 2÷π M_2_PIf
20+
constexpr float div180_pi_f = 57.2957795e+0f; // 180÷π
21+
constexpr float divpi_2_f = 1.57079633e+0f; // π÷2 M_PI_2f
22+
constexpr float divpi_4_f = 7.85398163e-1f; // π÷4 M_PI_4f
23+
constexpr float divpi_90_f = 3.49065850e-2f; // π÷90
24+
constexpr float divpi_180_f = 1.74532925e-2f; // π÷180
25+
constexpr float divpi_360_f = 8.72664626e-3f; // π÷360
26+
constexpr float sqrtpi_f = 1.77245385e+0f; // √π sqrtpif
27+
constexpr float sqrt2_f = 1.41421356e+0f; // √2 M_SQRT2f sqrt2f
28+
constexpr float sqrt3_f = 1.73205081e+0f; // √3 sqrt3f
29+
constexpr float inv_sqrtpi_f = 1.77245385e+0f; // 1÷√π inv_sqrtpif
30+
constexpr float inv_sqrt2_f = 7.07106781e-1f; // 1÷√2 M_SQRT1_2f inv_sqrt2f
31+
constexpr float inv_sqrt3_f = 5.77350269e-1f; // 1÷√3 inv_sqrt3f
32+
constexpr float div2_sqrtpi_f = 1.12837917e+0f; // 2÷√π M_2_SQRTPIf
3333

34-
// Type Name Value Operation GNU std::numbers
35-
constexpr double phi_d = 1.6180339887498948482; // φ phi
36-
constexpr double egamma_d = 1.5674682557740530749; // Γe egamma
37-
constexpr double ln2_d = .69314718055994530942; // ln(2) M_LN2 ln2
38-
constexpr double ln10_d = 2.302585092994045684; // ln(10) M_LN10 ln10
39-
constexpr double log2e_d = 1.4426950408889634074; // log2(e) M_LOG2E log2e
40-
constexpr double log10e_d = .43429448190325182765; // log10(e) M_LOG10E log10e
41-
constexpr double pi_d = 3.1415926535897932385; // π M_PI pi
42-
constexpr double mul2_pi_d = 6.2831853071795864769; //
43-
constexpr double inv_pi_d = .31830988618379067154; // 1÷π M_1_PI inv_pi
44-
constexpr double inv_mul2_pi_d = .15915494309189533577; // 1÷2π
45-
constexpr double div2_pi_d = .63661977236758134308; // 2÷π M_2_PI
46-
constexpr double div180_pi_d = 57.295779513082320877; // 180÷π
47-
constexpr double divpi_2_d = 1.5707963267948966192; // π÷2 M_PI_2
48-
constexpr double divpi_4_d = .78539816339744830962; // π÷4 M_PI_4
49-
constexpr double divpi_90_d = .034906585039886591538; // π÷90
50-
constexpr double divpi_180_d = .017453292519943295769; // π÷180
51-
constexpr double divpi_360_d = .0087266462599716478846; // π÷360
52-
constexpr double sqrtpi_d = 1.7724538509055160273; // √π sqrtpi
53-
constexpr double sqrt2_d = 1.4142135623730950488; // √2 M_SQRT2 sqrt2
54-
constexpr double sqrt3_d = 1.7320508075688772935; // √3 sqrt3
55-
constexpr double inv_sqrtpi_d = 1.7724538509055160273; // 1÷√π inv_sqrtpi
56-
constexpr double inv_sqrt2_d = .7071067811865475244; // 1÷√2 M_SQRT1_2 inv_sqrt2
57-
constexpr double inv_sqrt3_d = .57735026918962576451; // 1÷√3 inv_sqrt3
58-
constexpr double div2_sqrtpi_d = 1.1283791670955125739; // 2÷√π M_2_SQRTPI
34+
// Type Name Value Operation GNU std::numbers
35+
constexpr double phi_d = 1.6180339887498948482e+0; // φ phi
36+
constexpr double egamma_d = 1.5674682557740530749e+0; // Γe egamma
37+
constexpr double ln2_d = 6.9314718055994530942e-1; // ln(2) M_LN2 ln2
38+
constexpr double ln10_d = 2.3025850929940456840e+0; // ln(10) M_LN10 ln10
39+
constexpr double log2e_d = 1.4426950408889634074e+0; // log2(e) M_LOG2E log2e
40+
constexpr double log10e_d = 4.3429448190325182765e-1; // log10(e) M_LOG10E log10e
41+
constexpr double pi_d = 3.1415926535897932385e+0; // π M_PI pi
42+
constexpr double mul2_pi_d = 6.2831853071795864769e+0; //
43+
constexpr double inv_pi_d = 3.1830988618379067154e-1; // 1÷π M_1_PI inv_pi
44+
constexpr double inv_mul2_pi_d = 1.5915494309189533577e-1; // 1÷2π
45+
constexpr double div2_pi_d = 6.3661977236758134308e-1; // 2÷π M_2_PI
46+
constexpr double div180_pi_d = 57.295779513082320877e+0; // 180÷π
47+
constexpr double divpi_2_d = 1.5707963267948966192e+0; // π÷2 M_PI_2
48+
constexpr double divpi_4_d = 7.8539816339744830962e-1; // π÷4 M_PI_4
49+
constexpr double divpi_90_d = 3.4906585039886591538e-2; // π÷90
50+
constexpr double divpi_180_d = 1.7453292519943295769e-2; // π÷180
51+
constexpr double divpi_360_d = 8.7266462599716478846e-3; // π÷360
52+
constexpr double sqrtpi_d = 1.7724538509055160273e+0; // √π sqrtpi
53+
constexpr double sqrt2_d = 1.4142135623730950488e+0; // √2 M_SQRT2 sqrt2
54+
constexpr double sqrt3_d = 1.7320508075688772935e+0; // √3 sqrt3
55+
constexpr double inv_sqrtpi_d = 1.7724538509055160273e+0; // 1÷√π inv_sqrtpi
56+
constexpr double inv_sqrt2_d = 7.0710678118654752440e-1; // 1÷√2 M_SQRT1_2 inv_sqrt2
57+
constexpr double inv_sqrt3_d = 5.7735026918962576451e-1; // 1÷√3 inv_sqrt3
58+
constexpr double div2_sqrtpi_d = 1.1283791670955125739e+0; // 2÷√π M_2_SQRTPI
5959
}
6060

6161
#endif // COMMON_MATH_CONSTANT_H_

tools/math-constant/math-constant.py

+17-1
Original file line numberDiff line numberDiff line change
@@ -267,9 +267,25 @@ class _long_double:
267267

268268
def beautify(v):
269269
value = str(v);
270+
e = 0
271+
270272
if value.startswith("0."):
271273
value = value[1:]
272-
return value
274+
275+
while value.startswith("."):
276+
value = "{}{}{}".format(value[1], ".", value[2:])
277+
e -= 1
278+
if value.startswith("0."):
279+
value = value[1:]
280+
281+
if "." in value:
282+
if len(value) < mp.dps + 1:
283+
value = "{}{}".format(value, "0")
284+
285+
sign = ["+", "-"][e < 0]
286+
exponent = "e{}{}".format(sign, abs(e))
287+
288+
return "{}{}".format(value, exponent)
273289

274290
def output(string=""):
275291
print(string)

0 commit comments

Comments
 (0)