code: def _modf(
      x,
      /,
      out1_2=(None, None),
      out=None,
      *,
      where=True,
      casting="same_kind",
      order="K",
      dtype=None,
      subok=True,
  ):
      if dtype:
          x = ivy.astype(ivy.array(x), ivy.as_ivy_dtype(dtype))
  
      integral_part = ivy.floor(x)
      fractional_part = x - integral_part
  
      if ivy.is_array(where):
          integral_part = ivy.where(
              where,
              integral_part,
              ivy.default(out, ivy.zeros_like(integral_part)),
              out=out,
          )
          fractional_part = ivy.where(
              where,
              fractional_part,
              ivy.default(out, ivy.zeros_like(fractional_part)),
              out=out,
          )
  
      return fractional_part, integral_part
  
file_path: ivy/ivy/functional/frontends/numpy/mathematical_functions/arithmetic_operations.py
imports: import ivy
  from ivy.functional.frontends.numpy import promote_types_of_numpy_inputs
  from ivy.functional.frontends.numpy.func_wrapper import to_ivy_arrays_and_back, handle_numpy_casting, handle_numpy_dtype, from_zero_dim_arrays_to_scalar, handle_numpy_out
label_desc: Use image node_id 8 for calling a global function with example usage: _modf(out1_2, out) and returns: fractional_part,  integral_part