code: def test_smoke(self, device, dtype):
      H, W = 5, 5
      translation = torch.tensor(
          [[0.0, 0.0]], device=device, dtype=dtype
      )
      # NOTE: ideally the center should be [W * 0.5, H * 0.5]
      center = torch.tensor(
          [[W // 2, H // 2]], device=device, dtype=dtype
      )
      zoom1 = torch.ones([1, 1], device=device, dtype=dtype) * 0.5
      zoom2 = torch.ones([1, 1], device=device, dtype=dtype) * 1.0
      zoom = torch.cat([zoom1, zoom2], -1)
      angle = torch.zeros([1], device=device, dtype=dtype)
      affine_mat = kornia.geometry.get_affine_matrix2d(
          translation, center, zoom, angle
      )
  
      img = torch.ones(1, 1, H, W, device=device, dtype=dtype)
      expected = torch.zeros_like(img)
      expected[..., 1:4] = 1.0
  
      out = kornia.geometry.transform.warp_affine(
          img, affine_mat[:, :2], (H, W)
      )
      assert_close(out, expected)
  
imports: import pytest
  import torch
  from torch.autograd import gradcheck
  import kornia
  import kornia.testing
  from kornia.testing import assert_close
label_desc: Use image node_id 1 for calling the TestGetAffineMatrix obj's underlying member method code with example usage: obj.test_smoke(device, dtype) without return types