code: def test_matrix(self, device, dtype, batch_size):
      theta = self._make_rand_data(device, dtype, (batch_size,))
      t = self._make_rand_data(device, dtype, (batch_size, 2))
      s = So2.exp(theta)
      p1 = s * t
      p2 = s.matrix() @ t[..., None]
      self.assert_close(p1, p2.squeeze(-1))
  
imports: import pytest
  import torch
  from kornia.geometry.liegroup import Se2, So2
  from kornia.geometry.vector import Vector2
  from kornia.testing import BaseTester
label_desc: Use image node_id 19 for calling the TestSe2 obj's underlying member method code with example usage: obj.test_matrix(device, dtype, batch_size) without return types