The Direction-of-Arrival Problem: Coming at You
Dianne P. O'Leary

  • Data
  • There are 2 signals and 720 observations. Matlab file doadata.mat contains the matrix X of signal data and the matrix theta of true angles (in degrees).
  • Ascii file Doadata contains the matrix X of signal data and the matrix theta of true angles (in degrees).
    Format:
    Each column of X is printed in f-format on 2 lines, 5 complex values per line
    Line 1:
    real(X(1,1)) imag(X(1,1)) real(X(2,1)) imag(X(2,1)) ... real(X(5,1)) imag(X(5,1))
    Line 2:
    real(X(6,1)) imag(X(6,1)) real(X(7,1)) imag(X(7,1)) ... real(X(10,1)) imag(X(10,1))
    etc.

    Then there is a blank line, followed by the array theta_tru, one row per line, f-format.
  • The entries in X have normally distributed random error with standard deviation equal to one.
  • To convert from phase to doa angle (in radians), use asin(4*angle(Phi(j))/(2*pi)) where angle is a (Matlab) function that takes a complex number and returns the phase angle in radians.
  • Sample solution code (Matlab)
  • solution.m
  • use_eigesprit.m
  • use_svdesprit.m
  • eig_esprit.m
  • svd_esprit.m
  • zip file of all .m files