adam.numpy.numpy_like
=====================

.. py:module:: adam.numpy.numpy_like


Classes
-------

.. autoapisummary::

   adam.numpy.numpy_like.NumpyLike
   adam.numpy.numpy_like.NumpyLikeFactory
   adam.numpy.numpy_like.SpatialMath


Module Contents
---------------

.. py:class:: NumpyLike

   Bases: :py:obj:`adam.core.array_api_math.ArrayAPILike`


   Class wrapping NumPy types


   .. py:attribute:: array
      :type:  numpy.ndarray


.. py:class:: NumpyLikeFactory(spec: adam.core.array_api_math.ArraySpec | None = None)

   Bases: :py:obj:`adam.core.array_api_math.ArrayAPIFactory`


   Generic factory. Give it (a) a Like class and (b) an xp namespace
   (array_api_compat.* if available; otherwise the library module).


.. py:class:: SpatialMath(spec: adam.core.array_api_math.ArraySpec | None = None)

   Bases: :py:obj:`adam.core.array_api_math.ArrayAPISpatialMath`


   A drop-in SpatialMath that implements sin/cos/outer/concat/skew with the Array API.

   Works for NumPy, PyTorch, and JAX; CasADi should keep its own subclass.


