Source code for onnx_diagnostic.reference.torch_ops.unary_ops
import torch
from . import OpRunKernel, OpRunTensor
[docs]
class Abs_1(OpRunKernel):
    """Abs"""
[docs]
    def run(self, x: OpRunTensor) -> OpRunTensor:
        return OpRunTensor(torch.abs(x.tensor)) 
 
[docs]
class Cos_1(OpRunKernel):
    """Cos"""
[docs]
    def run(self, x: OpRunTensor) -> OpRunTensor:
        return OpRunTensor(x.tensor.cos()) 
 
[docs]
class Erf_9(OpRunKernel):
    """Erf"""
[docs]
    def run(self, x: OpRunTensor) -> OpRunTensor:
        return OpRunTensor(x.tensor.erf()) 
 
[docs]
class Exp_1(OpRunKernel):
    """Exp"""
[docs]
    def run(self, x: OpRunTensor) -> OpRunTensor:
        return OpRunTensor(x.tensor.exp()) 
 
[docs]
class Identity_1(OpRunKernel):
    "Identity"
[docs]
    def run(self, x: OpRunTensor) -> OpRunTensor:
        return OpRunTensor(x.tensor) 
 
[docs]
class Log_1(OpRunKernel):
    """Log"""
[docs]
    def run(self, x: OpRunTensor) -> OpRunTensor:
        return OpRunTensor(x.tensor.log()) 
 
[docs]
class Neg_1(OpRunKernel):
    """Neg"""
[docs]
    def run(self, x: OpRunTensor) -> OpRunTensor:
        return OpRunTensor(-x.tensor) 
 
[docs]
class Not_1(OpRunKernel):
    """Not"""
[docs]
    def run(self, x: OpRunTensor) -> OpRunTensor:
        return OpRunTensor(~x.tensor) 
 
[docs]
class Reciprocal_1(OpRunKernel):
    """REciprocal"""
[docs]
    def run(self, x: OpRunTensor) -> OpRunTensor:
        return OpRunTensor(1 / x.tensor) 
 
[docs]
class Sigmoid_6(OpRunKernel):
    """Sqrt"""
[docs]
    def run(self, x: OpRunTensor) -> OpRunTensor:
        return OpRunTensor(torch.sigmoid(x.tensor)) 
 
[docs]
class Sin_1(OpRunKernel):
    """Sin"""
[docs]
    def run(self, x: OpRunTensor) -> OpRunTensor:
        return OpRunTensor(x.tensor.sin()) 
 
[docs]
class Sqrt_1(OpRunKernel):
    """Sqrt"""
[docs]
    def run(self, x: OpRunTensor) -> OpRunTensor:
        return OpRunTensor(x.tensor.sqrt())