import numpy as np

from scipy import special
from scipy import optimize

# numpy
degrees = np.degrees
radians = np.radians

cos = np.cos
sin = np.sin
tan = np.tan
arctan = np.arctan
arcsin = np.arcsin
arccos = np.arccos
arctan2 = np.arctan2
pi = np.pi
zeros = np.zeros
log10 = np.log10
divide = np.divide
log = np.log
exp = np.exp

isnan = np.isnan
NaN = np.NaN
power = np.power
matmul = np.matmul
multiply = np.multiply
inner = np.inner
arange = np.arange
abs = np.abs
ceil = np.ceil
where = np.where
invert = np.invert
concatenate = np.concatenate
sqrt = np.sqrt
sign = np.sign
sum = np.sum

logical_xor = np.logical_xor
logical_and = np.logical_and
logical_or = np.logical_or
mod = np.mod
equal = np.equal
less = np.less
ones = np.ones
round = np.round

# scipy
sph_harm = special.sph_harm
lpmv = special.lpmv
optimize = optimize
