code: def test_call_with_ortho_on(self):
      _input_array = empty_aligned((256, 512), dtype="complex128", n=16)
  
      ifft = FFTW(
          self.output_array, _input_array, direction="FFTW_BACKWARD"
      )
  
      self.fft(ortho=True, normalise_idft=False)
  
      # ortho case preserves the norm in forward direction
      self.assertTrue(
          numpy.allclose(
              numpy.linalg.norm(self.input_array),
              numpy.linalg.norm(self.output_array),
          )
      )
  
      ifft(ortho=True, normalise_idft=False)
  
      # ortho case preserves the norm in backward direction
      self.assertTrue(
          numpy.allclose(
              numpy.linalg.norm(_input_array),
              numpy.linalg.norm(self.output_array),
          )
      )
  
      self.assertTrue(numpy.allclose(self.input_array, _input_array))
  
      # cant select both ortho and normalise_idft
      self.assertRaisesRegex(
          ValueError,
          "Invalid options",
          self.fft,
          normalise_idft=True,
          ortho=True,
      )
      # cant specify orth=True with default normalise_idft=True
      self.assertRaisesRegex(
          ValueError, "Invalid options", self.fft, ortho=True
      )
  
imports: from pyfftw import FFTW, empty_aligned, byte_align
  from .test_pyfftw_base import run_test_suites, miss, require
  import numpy
  import unittest
label_desc: Use image node_id 21 for calling the FFTWCallTest obj's underlying member method code with example usage: obj.test_call_with_ortho_on() without return types