code: def test_gradcheck(self, device):
      # generate input data
      sample = torch.rand(
          1,
          3,
          3,
          4,
          5,
          device=device,
          dtype=torch.float64,
          requires_grad=True,
      )
      P = torch.rand(1, 3, 4, device=device, dtype=torch.float64)
      assert gradcheck(
          proj.warp_affine3d,
          (sample, P, (3, 3, 3)),
          raise_exception=True,
          fast_mode=True,
      )
  
imports: import pytest
  import torch
  from torch.autograd import gradcheck
  import kornia
  import kornia.geometry.transform
  import kornia.testing
  from kornia.testing import assert_close
  from kornia.utils.helpers import _torch_inverse_cast
label_desc: Use image node_id 3 for calling the TestWarpAffine3d obj's underlying member method code with example usage: obj.test_gradcheck(device) without return types