cutcutcodec.core.compilation.sympy_to_torch.printer_atom.c_abs¶
- cutcutcodec.core.compilation.sympy_to_torch.printer_atom.c_abs(out: Symbol, indexing: defaultdict[Symbol, str], c_type: str, arg: Atom) tuple[set[str], set[Symbol], list[str]][source]¶
C abs operation.
Examples¶
>>> from sympy.abc import x >>> from sympy.functions.elementary.complexes import Abs >>> import numpy as np >>> from cutcutcodec.core.compilation.sympy_to_torch.lambdify import _lambdify_c >>> from cutcutcodec.core.compilation.sympy_to_torch.printer import _print_atomic, _printer >>> func = _lambdify_c(_printer([(x, Abs(x))], {}, {x})) >>> func(np.array([np.nan, -np.inf, -2., 2., np.inf])) array([nan, inf, 2., 2., inf]) >>> func(np.array([3+4j, -3+4j, 3-4j, -3-4j])) array([5.+0.j, 5.+0.j, 5.+0.j, 5.+0.j]) >>>