import pyOcean_cpu as ocean # NaN + 1j x = ocean.chalf(1j) x.real = ocean.nan # 3 + NaN*j y = ocean.chalf(1) y.imag = ocean.nan print([x, y]) print(ocean.minimumAbs(ocean.half([ocean.nan, 2]))) print(ocean.minimumAbs(ocean.half([1, ocean.nan, 2]))) print(ocean.minimumAbs(ocean.half([-2, ocean.nan, 1]))) print("========= Complex with NaN =========") print(ocean.minimumAbs(ocean.chalf([x, 3 + 4j]))) print(ocean.minimumAbs(ocean.chalf([y, 0 + 2j]))) print(ocean.minimumAbs(ocean.chalf([x, y]))) print("========= Complex =========") print(ocean.minimumAbs(ocean.chalf([3 + 4j, 1 + 0j]))) print(ocean.minimumAbs(ocean.chalf([1 + 0j, 3 + 4j])))
import pyOcean_cpu as ocean # NaN + 1j x = ocean.chalf(1j) x.real = ocean.nan # 3 + NaN*j y = ocean.chalf(1) y.imag = ocean.nan print([x,y]) print(ocean.minimum(ocean.half([ocean.nan, 2]))) print(ocean.minimum(ocean.half([1,ocean.nan,2]))) print(ocean.minimum(ocean.half([2,ocean.nan,1]))) print("========= Complex with NaN =========") print(ocean.minimum(ocean.chalf([x, 2+1j]))) print(ocean.minimum(ocean.chalf([y, 0+2j]))) print(ocean.minimum(ocean.chalf([y, 1+3j]))) print(ocean.minimum(ocean.chalf([y, 2+4j]))) print(ocean.minimum(ocean.chalf([x, y]))) print(ocean.minimum(ocean.chalf([y, x]))) print("========= Complex =========") print(ocean.minimum(ocean.chalf([2+1j, 1+0j]))) print(ocean.minimum(ocean.chalf([2+1j, 1+1j]))) print(ocean.minimum(ocean.chalf([2+1j, 1+2j]))) print(ocean.minimum(ocean.chalf([1+1j, 1+2j]))) print(ocean.minimum(ocean.chalf([1+2j, 1+2j])))
def exceptionMsg(): print("Expected error: %s" % str(sys.exc_info()[1])) def failTest(command): try: eval(command) except: exceptionMsg() a = ocean.double(2) print(a) print(-a) a = ocean.half(2) print(a) print(-a) a = ocean.cdouble(1 + 2j) print(-a) a = ocean.chalf(1 + 2j) print(-a) a = ocean.bool(1) print(a) print(-a) a = ocean.uint8(1) print(-a)
def failTest(command): try: eval(command) except: exceptionMsg() a = ocean.int8(3) print(a**2) print(pow(a, 2)) a **= 2 print(a) failTest("pow(a,2,3)") print("\n------ Floating point ------") a = ocean.float(4) b = ocean.int16(3) print(a**b) print(pow(a, b)) a **= b print(a) print("\n------ Square root ------") a = ocean.half(4) b = a**ocean.half(0.5) print([b, b.dtype.name]) print(a**0.5) print(ocean.power(a, 0.5)) print(pow(a, 0.5))
import pyOcean_cpu as ocean a = ocean.double(8) print(a == 8) print(a >= 8) print(a <= 8) print(a > 7) print(a < 9) print(a != 8) print(a < 8) print(a > 8) print(a > 10) print("HALF") a = ocean.half(9) b = ocean.half(8) print(a == b) print(b > 10) print(b < 10)