MATLAB Whats wrong with this matlab code?

AI Thread Summary
The MATLAB code provided is intended to plot a graph based on a loop, but users are experiencing issues with no graph appearing and receiving an unexpected output of "ans = char" in the command line. Suggestions include removing the semicolon after the for loop and writing results to an array to plot after the loop completes. One user confirmed that the code runs correctly in MATLAB R11.1, while another discovered that a whitespace in the M-file name was causing the error. The discussion highlights the importance of checking file names and suggests alternative methods for plotting in MATLAB.
ranger
Gold Member
Messages
1,685
Reaction score
2
I have a very simply MATLAB code. When I try go run it, I get no graph and switching over to the MATLAB command line, I see:
ans =

char

Here is the code:
Code:
t = linspace(0,60);
v = 3.22;

for q_0 = [0:1:2007];
    q = q_0*exp(v*t);
    plot(t,q)
    hold on
end
It looks just fine to me.

Any feedback would be great.
 
Physics news on Phys.org
It runs fine in MATLAB R2006b on my computer.

Perhaps try removing the semicolon at the end of "for q_0 = [0:1:2007];"

- Warren
 
I still get no luck. I can run other m-files from the same directory with no problems. Does it say anything on the MATLAB command line when you run it?
 
I have copied-and-pasted the script on the Matlab (R11.1) command prompt and a figure appears. Nothing appears in the command line though.

How did you try to run the script?
 
It looks to me to be plotting every point in a separate graph,, try writing to an array and plot after the loop is complete. I;ll try at work tommorow where I have Matlab R2006B.
 
doodle said:
I have copied-and-pasted the script on the Matlab (R11.1) command prompt and a figure appears. Nothing appears in the command line though.

How did you try to run the script?

I tried to run it from the m-file editor screen. The usual Debug>Run. I also even tried to get it from the command line, but I still get ans = char as an output.

Dr Transport said:
It looks to me to be plotting every point in a separate graph,, try writing to an array and plot after the loop is complete. I;ll try at work tommorow where I have Matlab R2006B.
I don't think its separate graphs. Its done on one graph but the "hold on" command allows me to plot different values for q_0 on the same graph.


Its is possible for anyone to post a screenshot of the graph? btw, I'm using R14.
 
ranger said:
Its is possible for anyone to post a screenshot of the graph? btw, I'm using R14.

Here's a screenshot...
 

Attachments

  • 01.jpg
    01.jpg
    34 KB · Views: 516
Thanks doodle. It seems I have to do a little tweaking of my domain, but its what I expected it to be.
 
It turns out I was getting this error becuase the name of the M-file had a white space. Beats me...
 

Similar threads

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