summaryrefslogtreecommitdiff
path: root/vendor/github.com/ncruces/go-sqlite3/internal/util/math.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/ncruces/go-sqlite3/internal/util/math.go')
-rw-r--r--vendor/github.com/ncruces/go-sqlite3/internal/util/math.go29
1 files changed, 29 insertions, 0 deletions
diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/util/math.go b/vendor/github.com/ncruces/go-sqlite3/internal/util/math.go
new file mode 100644
index 000000000..a95f73764
--- /dev/null
+++ b/vendor/github.com/ncruces/go-sqlite3/internal/util/math.go
@@ -0,0 +1,29 @@
+package util
+
+import "math"
+
+func abs(n int) int {
+ if n < 0 {
+ return -n
+ }
+ return n
+}
+
+func GCD(m, n int) int {
+ for n != 0 {
+ m, n = n, m%n
+ }
+ return abs(m)
+}
+
+func LCM(m, n int) int {
+ if n == 0 {
+ return 0
+ }
+ return abs(n) * (abs(m) / GCD(m, n))
+}
+
+// https://developer.nvidia.com/blog/lerp-faster-cuda/
+func Lerp(v0, v1, t float64) float64 {
+ return math.FMA(t, v1, math.FMA(-t, v0, v0))
+}