code: def unravel_index(idx, shape) -> NdarrayOrTensor:
      """`np.unravel_index` with equivalent implementation for torch.
  
      Args:
          idx: index to unravel.
          shape: shape of array/tensor.
  
      Returns:
          Index unravelled for given shape
      """
      if isinstance(idx, torch.Tensor):
          coord = []
          for dim in reversed(shape):
              coord.append(idx % dim)
              idx = floor_divide(idx, dim)
          return torch.stack(coord[::-1])
      return np.asarray(np.unravel_index(idx, shape))
  
imports: from __future__ import annotations
  from collections.abc import Sequence
  from typing import TypeVar
  import numpy
  import torch
  from monai.config.type_definitions import NdarrayOrTensor, NdarrayTensor
  from monai.utils.misc import is_module_ver_at_least
  from monai.utils.type_conversion import convert_data_type, convert_to_dst_type
label_desc: Use image node_id 11 for calling a global function with example usage: unravel_index(idx, shape) and returns: np, torch