ai-content-maker/.venv/Lib/site-packages/numba/tests/usecases.py

94 lines
1.6 KiB
Python

import math
import numpy as np
from numba import jit
_GLOBAL_STR = "abc"
def sum1d(s, e):
c = 0
for i in range(s, e):
c += i
return c
def sum2d(s, e):
c = 0
for i in range(s, e):
for j in range(s, e):
c += i * j
return c
def while_count(s, e):
i = s
c = 0
while i < e:
c += i
i += 1
return c
def copy_arrays(a, b):
for i in range(a.shape[0]):
b[i] = a[i]
def copy_arrays2d(a, b):
for i in range(a.shape[0]):
for j in range(a.shape[1]):
b[i, j] = a[i, j]
def redefine1():
x = 0
for i in range(5):
x += 1
x = 0. + x
for i in range(5):
x += 1
return x
def andor(x, y):
return (x > 0 and x < 10) or (y > 0 and y < 10)
andornopython = jit(nopython=True)(andor)
def string_concat(x, y):
a = "whatzup"
return a + str(x + y)
def string_len(s):
return len(s)
def string_slicing(s, start, stop):
return s[start:stop]
def string_conversion(x):
# the test that calls this has always relied on objmode fallback so force it
object()
return str(x)
def string_comparison(s1, s2, op):
return op(s1, s2)
def blackscholes_cnd(d):
A1 = 0.31938153
A2 = -0.356563782
A3 = 1.781477937
A4 = -1.821255978
A5 = 1.330274429
RSQRT2PI = 0.39894228040143267793994605993438
K = 1.0 / (1.0 + 0.2316419 * math.fabs(d))
ret_val = (RSQRT2PI * math.exp(-0.5 * d * d) *
(K * (A1 + K * (A2 + K * (A3 + K * (A4 + K * A5))))))
if d > 0:
ret_val = 1.0 - ret_val
return ret_val