module Torch.Indef.Static.Tensor.Math.Pointwise.Floating where
import Numeric.Dimensions
import GHC.Int
import Torch.Indef.Static.Tensor
import qualified Torch.Indef.Dynamic.Tensor.Math.Pointwise.Floating as Dynamic
import Torch.Indef.Types
cinv :: Dimensions d => Tensor d -> Tensor d
cinv t = asStatic $ Dynamic.cinv (asDynamic t)
sigmoid :: Dimensions d => Tensor d -> Tensor d
sigmoid t = asStatic $ Dynamic.sigmoid (asDynamic t)
log :: Dimensions d => Tensor d -> Tensor d
log t = asStatic $ Dynamic.log (asDynamic t)
lgamma :: Dimensions d => Tensor d -> Tensor d
lgamma t = asStatic $ Dynamic.lgamma (asDynamic t)
log1p :: Dimensions d => Tensor d -> Tensor d
log1p t = asStatic $ Dynamic.log1p (asDynamic t)
exp :: Dimensions d => Tensor d -> Tensor d
exp t = asStatic $ Dynamic.exp (asDynamic t)
cos :: Dimensions d => Tensor d -> Tensor d
cos t = asStatic $ Dynamic.cos (asDynamic t)
acos :: Dimensions d => Tensor d -> Tensor d
acos t = asStatic $ Dynamic.acos (asDynamic t)
cosh :: Dimensions d => Tensor d -> Tensor d
cosh t = asStatic $ Dynamic.cosh (asDynamic t)
sin :: Dimensions d => Tensor d -> Tensor d
sin t = asStatic $ Dynamic.sin (asDynamic t)
asin :: Dimensions d => Tensor d -> Tensor d
asin t = asStatic $ Dynamic.asin (asDynamic t)
sinh :: Dimensions d => Tensor d -> Tensor d
sinh t = asStatic $ Dynamic.sinh (asDynamic t)
tan :: Dimensions d => Tensor d -> Tensor d
tan t = asStatic $ Dynamic.tan (asDynamic t)
atan :: Dimensions d => Tensor d -> Tensor d
atan t = asStatic $ Dynamic.atan (asDynamic t)
tanh :: Dimensions d => Tensor d -> Tensor d
tanh t = asStatic $ Dynamic.tanh (asDynamic t)
erf :: Dimensions d => Tensor d -> Tensor d
erf t = asStatic $ Dynamic.erf (asDynamic t)
erfinv :: Dimensions d => Tensor d -> Tensor d
erfinv t = asStatic $ Dynamic.erfinv (asDynamic t)
pow :: Dimensions d => Tensor d -> HsReal -> Tensor d
pow t v = asStatic $ Dynamic.pow (asDynamic t) v
tpow :: Dimensions d => HsReal -> Tensor d -> Tensor d
tpow v t = asStatic $ Dynamic.tpow v (asDynamic t)
sqrt :: Dimensions d => Tensor d -> Tensor d
sqrt t = asStatic $ Dynamic.sqrt (asDynamic t)
rsqrt :: Dimensions d => Tensor d -> Tensor d
rsqrt t = asStatic $ Dynamic.rsqrt (asDynamic t)
ceil :: Dimensions d => Tensor d -> Tensor d
ceil t = asStatic $ Dynamic.ceil (asDynamic t)
floor :: Dimensions d => Tensor d -> Tensor d
floor t = asStatic $ Dynamic.floor (asDynamic t)
round :: Dimensions d => Tensor d -> Tensor d
round t = asStatic $ Dynamic.round (asDynamic t)
trunc :: Dimensions d => Tensor d -> Tensor d
trunc t = asStatic $ Dynamic.trunc (asDynamic t)
frac :: Dimensions d => Tensor d -> Tensor d
frac t = asStatic $ Dynamic.frac (asDynamic t)
lerp :: Dimensions d => Tensor d -> Tensor d -> HsReal -> Tensor d
lerp a b v = asStatic $ Dynamic.lerp (asDynamic a) (asDynamic b) v
atan2 :: Dimensions d => Tensor d -> Tensor d -> Tensor d
atan2 a b = asStatic $ Dynamic.atan2 (asDynamic a) (asDynamic b)