MATLAB: Graph not plotting at all

basicgraphhelpplot

I am very unsure of why this does not work. I want to plug in a range of Xa into V equation and plot Xa vs V
k=1; %mol3L-3sec-1
Fa0=1; %molA/sec
v0=1; %L/sec
Ca0=Fa0/v0;
Xa=(0:.05:1);
V=(Fa0-(Ca0*v0*((1-Xa)/(1-(.5*Xa)))))./(-k*((Ca0*((1-Xa)/(1-(.5*Xa)))).^-2));
plot(Xa,V);
xlabel('Conversion');
ylabel('Volume');

Best Answer

k=1; %mol3L-3sec-1
Fa0=1; %molA/sec
v0=1; %L/sec
Ca0=Fa0./v0;
Xa=(0:.05:1);
V=(Fa0-(Ca0.*v0.*((1-Xa)./(1-(.5*Xa)))))./(-k.*((Ca0.*((1-Xa)./(1-(.5*Xa)))).^-2));
plot(Xa,V);
xlabel('Conversion');
ylabel('Volume');
In short: get in the habit of using ./ instead of / (except perhaps for simple fractions like 2/3 ) . The / function is not element-by-element division: it is "matrix right divide", in which A/B acts similar to A*pinv(B) where * is algebraic matrix multiplication.
Related Question