How to read an input text file having multiple values??

0 0 0 0.5 0 0.049406182 1 0 0.097122055 0 0.51 0 0.5 0.51 0.049406182 1 0.51 0.097122055
1.5 0 0.143149239 2 0 0.187489294 1.5 0.51 0.143149239 2 0.51 0.187489294
Read these values of x1,y1,z1 x2,y2,z2 x3,y3,z3....and so on

Answers (2)

REead about load, importdata, textscan. If your file has only numbers then load / importdata should work.

2 Comments

Can u give me one example of loading x1,y1,z1 and x2,y2,z2??
Attach your file....

Sign in to comment.

Here it is

15 Comments

fid = fopen('inputxyzz.txt','r');
S = textscan(fid,'%f %f %f') ;
x = S{1} ; y = S{2} ; z = S{3} ;
fclose(fid) ;
scatter3(x,y,z,10,z,'filled')
Thanks. But it is loading x,y,z column wise. I want x1,y1,z1....x2,y2,z2...x3,y3,z3..and so on row wise.How to do that??
Friend......it is loading in the way what you want only...
coor = [x y z] ;
coor(1,:) % this igves you (x1,y1,z1)
coor(7,:) % this gives you (x7,y7,z7)
coor(i,:) % this gives you (xi,yi,zi) ;
So i should write coor(i,:) or coor(1,:),coor(2,:)...and so on??
First one or second one(see my previous comment).
:(
I mean to say i = 1,2,....n
Still not working.I have written like this:
for i=1:1:122
fid = fopen('inputxyzz.txt','r');
S = textscan(fid,'%f %f %f') ;
x = S{1} ; y = S{2} ; z = S{3} ;
fclose(fid) ;
scatter3(x,y,z,10,z,'filled')
coor = [x y z] ;
coor(i,:)
end
ERROR: undefined function x1.(Lxn_dash=N1*x1+N2*x2+N3*x3; in this line)
fid = fopen('inputxyzz.txt'','r');
S = textscan(fid,'%f %f %f') ;
x = S{1} ; y = S{2} ; z = S{3} ;
fclose(fid) ; scatter3(x,y,z,10,z,'filled')
coor = [x y z] ;
for i=1:1:122
coor(i,:)
end
Still not working. Same error, undefined x1. It is not loading up the values i think. But a graph is showing. Dont know why??
@ Virajan Verma dont blindly follow the code........read what the function does....the doubts you are asking are very silly.
fid = fopen('inputxyzz.txt','r');
S = textscan(fid,'%f %f %f') ;
x = S{1} ; y = S{2} ; z = S{3} ;
fclose(fid) ;
scatter3(x,y,z,10,z,'filled')
coor = [x y z] ;
for i = 1:length(X)
coor(i,:)
end
@KSSV Yes i know i am asking silly question. I havnt done coding previously, so i am getting stuck way too many times. I tried ur above expression but the error is still there.
No one done coding earlier, at the time of their career beginning .....one has to learn.....you are showing a part of your code...you are not showing full code.
Lxn_dash=N1*x1+N2*x2+N3*x3;
Obviously the above lines show error. Where you have defined (x1,x2,x3)????They are not defined....they are in the coor or (x,y,z) ..you need to provide the indices of it. May be like this:
Lxn_dash=N1*x(1)+N2*x(2)+N3*x(3);
Here, you will be having nodal connectivity data, with this nodal connectivity daya you will be getting the vertices of every element.
According to you, how many values of Lxn_dash should come??
It depends on the number of elements and number of nodes in each element.
Thanks officially for accepting the answer.

Sign in to comment.

Tags

Asked:

on 10 Oct 2018

Commented:

on 11 Oct 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!