0001 function [node,elem]=readasc(fname)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020 node=[];
0021 elem=[];
0022 fid=fopen(fname,'rt');
0023 if(fid==-1)
0024 error(['can not read file ' fname]);
0025 end
0026
0027 line=fgetl(fid);
0028 dim=fscanf(fid,'%d',2);
0029 node=fscanf(fid,'%f',[4,dim(1)])';
0030 elem=fscanf(fid,'%f',inf);
0031 fclose(fid);
0032
0033 if(length(elem)==4*dim(2))
0034 elem=reshape(elem,[4,dim(2)])';
0035 elseif(length(elem)==8*dim(2))
0036 elem=reshape(elem,[8,dim(2)])';
0037 end
0038
0039 if(~any(node(:,end)))
0040 node=node(:,1:end-1);
0041 end
0042 if(~any(elem(:,end)))
0043 elem=elem(:,1:end-1);
0044 end
0045
0046 elem=elem+1;