How to write code to plot graph of for this function

9 vues (au cours des 30 derniers jours)
Rafae Ahmed
Rafae Ahmed le 4 Fév 2020
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)

Réponses (3)

Sivakumar Selvam
Sivakumar Selvam le 4 Fév 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 commentaire
Rafae Ahmed
Rafae Ahmed le 4 Fév 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

Connectez-vous pour commenter.


Prashanth Darla
Prashanth Darla le 4 Fév 2020
Modifié(e) : Prashanth Darla le 4 Fév 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 commentaire
Rafae Ahmed
Rafae Ahmed le 4 Fév 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).

Connectez-vous pour commenter.


Tomás Cardadeiro
Tomás Cardadeiro le 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)

Catégories

En savoir plus sur Graph and Network Algorithms dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by