function varargout=load_tecplot(varargin) fname = varargin{1}; switch nargin case 2 data_input = 1; conn_input = 0; V = varargin{2}; C=0; case 3 data_input = 1; conn_input = 1; V = varargin{2}; C = varargin{3}; otherwise disp('Improper output count') return end disp(['Writing ',fname,' ...']) tsid = fopen('tmp1.txt','w'); fprintf(tsid,'TITLE = "Matlab Output - %s"\n',date); fprintf(tsid,'VARIABLES = '); for ii = 1:length(V),fprintf(tsid,'"%s"\n',V(ii).name);end fprintf(tsid,'ZONE T="Zone 1"\n'); if C fprintf(tsid,' N=%g, E=%g, ZONETYPE=FEQuadrilateral\n',length(V(1).data),length(C)); else fprintf(tsid,' N=%g, ZONETYPE=Ordered\n',length(V(1).data)); end fprintf(tsid,' DATAPACKING=POINT\n'); fprintf(tsid,' DT=('); for ii = 1:length(V),fprintf(tsid,'SINGLE ');end fprintf(tsid,')\n'); fclose(tsid); da = zeros(length(V(1).data),length(V)); for ii = 1:length(V(1).data) for jj = 1:length(V) da(ii,jj) = V(jj).data(ii); end end save tmp2.txt da -ASCII if C tsid = fopen('tmp3.txt','w'); fprintf(tsid,'%g %g %g %g\n',C'); fclose(tsid); end if ispc fname=strrep(fname,'/','\') eval(['!copy tmp1.txt+tmp2.txt+tmp3.txt ',fname]); else eval(['!cat tmp1.txt tmp2.txt tmp3.txt > ',fname]); end delete tmp1.txt tmp2.txt tmp3.txt