gen_mat4files.m 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. % Generates mat files for loadmat unit tests
  2. % Uses save_matfile.m function
  3. % This is the version for matlab 4
  4. % work out matlab version and file suffix for test files
  5. global FILEPREFIX FILESUFFIX
  6. sepchar = '/';
  7. if strcmp(computer, 'PCWIN'), sepchar = '\'; end
  8. FILEPREFIX = [pwd sepchar 'data' sepchar];
  9. mlv = version;
  10. FILESUFFIX = ['_' mlv '_' computer '.mat'];
  11. % basic double array
  12. theta = 0:pi/4:2*pi;
  13. save_matfile('testdouble', theta);
  14. % string
  15. save_matfile('teststring', '"Do nine men interpret?" "Nine men," I nod.')
  16. % complex
  17. save_matfile('testcomplex', cos(theta) + 1j*sin(theta));
  18. % asymmetric array to check indexing
  19. a = zeros(3, 5);
  20. a(:,1) = [1:3]';
  21. a(1,:) = 1:5;
  22. % 2D matrix
  23. save_matfile('testmatrix', a);
  24. % minus number - tests signed int
  25. save_matfile('testminus', -1);
  26. % single character
  27. save_matfile('testonechar', 'r');
  28. % string array
  29. save_matfile('teststringarray', ['one '; 'two '; 'three']);
  30. % sparse array
  31. save_matfile('testsparse', sparse(a));
  32. % sparse complex array
  33. b = sparse(a);
  34. b(1,1) = b(1,1) + j;
  35. save_matfile('testsparsecomplex', b);
  36. % Two variables in same file
  37. save([FILEPREFIX 'testmulti' FILESUFFIX], 'a', 'theta')