MATLAB Need help, Why is Matlab not writing to file?

AI Thread Summary
The discussion revolves around a MATLAB script designed to calculate moments based on user-inputted force and pivot points. Key issues identified include the incorrect file naming due to the use of double types for variables 'f' and 'points' without converting them to strings. A suggested solution is to utilize the num2str function to ensure proper formatting in the filename. Additionally, there is a noted error in the fprintf function, where a missing '%' after '\t' could lead to incorrect output formatting. The conversation emphasizes the importance of data type handling and syntax accuracy in MATLAB programming for successful script execution.
captain fink
Messages
1
Reaction score
0
clc
clear

f = input('Enter the force applied in lbs: ');
p_c = input('Enter point closest to pivot: ');
p_f = input('Enter point farthest from pivot: ');
filename = input('name of file is: ','s');
points = input(' # of points to calculate: ');

x = [p_c;rand(points,1)*p_f-p_c+p_c;p_f];
y = sort(x);
pos = find(y<p_c);
pos1 = find(y>p_f);
y(pos) = [];
y(pos1) = [];

%disp(y) points

M = y*f;

%disp(M) moment

final = [y,M];

Mo = fopen([filename,'_',f,'_',points,'.txt'], 'w');

%fid = fopen(string, option)

%writing

fprintf(Mo, 'ID:\t%s\nF:\t%2.2f\n point closest:\t%2.3f\n point farthest:\t%2.3f...\n',filename,f,p_c,p_f);
fprintf(Mo, ' points\t moment\n');
fprintf(Mo, '%.2f\t.2f',y,M);
fclose(Mo);

Your thoughts would be helpful because I don't see why this isn't working
 
Physics news on Phys.org
The variables f, and points (which are of type double), are used to generate you file name without being converted to string.
captain fink said:
Mo = fopen([filename,'_',f,'_',points,'.txt'], 'w');
Try, using num2str function, for example
Code:
Mo = fopen([filename,'_',num2str(f),'_',num2str(points),'.txt'], 'w');

Also, you might want to have a closer look at:
captain fink said:
fprintf(Mo, '%.2f\t.2f',y,M);
think, it's missing a % after \t.
 

Similar threads

Replies
5
Views
9K
Replies
1
Views
3K
Replies
1
Views
2K
Replies
3
Views
2K
Back
Top