How to write code to plot graph of for this function

5 views (last 30 days)
I wanted to know how to plot my a graph for my function. The x-axis needs to be values of 'v' from from 1-10. The y-axis is the values of the function y(v). I want to label the x-axis: v [mol/m^3] and y-axis y(v). How would I write the code for this? Below is the some of the code I have written.
P=2020000;%P,R,a,b are all constants
R=8.314;
a=0.16330;
b=0.00002401;
v=[0:1:10];%range of v values for the x-axis
y=((R*T)/(v-b))+((a)/((v^2+(2*b*v)-b^2)))+P
plot(v,y)

Answers (3)

Sivakumar Selvam
Sivakumar Selvam on 4 Feb 2020
P=2020000;%P,R,a,b are all constants
R=8.314;
a=0.16330;
b=0.00002401;
v=[0:1:10];%range of v values for the x-axis
y=((R*T)/(v-b))+((a)/((v^2+(2*b*v)-b^2)))+P
plot(v,y);
xlabel('v [mol/m^3]')
ylabel('y(v)')
  1 Comment
Rafae Ahmed
Rafae Ahmed on 4 Feb 2020
Hi thanks for answering. But I am getting this error:
Error using /
Matrix dimensions must agree.
Error in assignment2 (line 6)
y=((R*T)/(v-b))+((a)/((v^2+(2*b*v)-b^2)))+P

Sign in to comment.


Prashanth Darla
Prashanth Darla on 4 Feb 2020
Edited: Prashanth Darla on 4 Feb 2020
Hey,you're all good if you declare T and elemenmtwise operatorfor division and power (Here I used T as 1)
Here's the code I suggest for you
P=2020000;%P,R,a,b are all constants
R=8.314;
a=0.16330;
b=0.00002401;
T=1;
v=(1:1:10);
disp(v);
for i =v
%range of v values for the x-axis
y=(((R*T)./(i-b))+((a)./((i.^2+(2*b*i)-b.^2)))+P);
disp(y);
end
plot(v,y);
xlabel('v [mol/m^3]')
ylabel('y(v)')
Hope this solves the issue.
  1 Comment
Rafae Ahmed
Rafae Ahmed on 4 Feb 2020
Hi,
I used this code but it is giving me the same value of for y(v) 2.0200e+6. Also the graph is not showing and line or curve when I run the code. Below is the what the formula should be, I wanted to make sure the way I wrote it in Matlab matches what it is normally:
Screen Shot 2020-02-04 at 9.15.32 AM.png
Also, what code do I need to write to show enough 'v' values where it will show where the line or curve on the graph touches the x-axis (the roots).

Sign in to comment.


Tomás Cardadeiro
Tomás Cardadeiro on 17 Nov 2021
Hi i know its just a little too late but see if thats not you want
clc
clear all
P=2020000;%P,R,a,b are all constants
R=8.314;
a=0.16330;
b=0.00002401;
T=1;
y1=[];
v1=[];
for v=0:10%range of v values for the x-axis
y=((R*T)/(v-b))+((a)/((v^2+(2*b*v)-b^2)))+P;
y1=[y1 y];
v1=[v1 v]
end
plot(v1,y1)

Categories

Find more on Animation in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!