I am fitting these curves in my MATLAB but the y-axis of every curve is not matching with that of the textbook figure. Can someone help in this. I am in real worry.
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
This is the graph I want to plot-----
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/499893/image.png)
And the parameters are------
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/499898/image.png)
But I am getting this graph----
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/499903/image.png)
I am also attaching the code which I used-------------------------------------------------------------------------
% implement YanoandKoga1 Model as a Matlab anonymous function
YanoandKoga1 = @(S) 0.51*S./(1.413+S+(S.^2/1250)+(S.^3/4.561));
% calculate mu
mu = YanoandKoga1(S);
hold on
% plot result
plot(S,mu,'k --'), xlabel('S (g/l)'), ylabel('\mu (1/h)');
% implement YanoandKoga2 Model as a Matlab anonymous function
YanoandKoga2= @(S) 0.41*S./(5.23+S+(S.^3/2.64));
% calculate mu
mu = YanoandKoga2(S);
hold on
% plot result
plot(S,mu,'k-'), xlabel('S (g/l)'), ylabel('\mu (1/h)');
% implement AlagappanandCowan Model as a Matlab anonymous function
AlagappanandCowan= @(S)(0.82*S./(4.366+S+(S.^2/2.246)))-(0.004379*(S+2.985));
% calculate mu
mu = AlagappanandCowan(S);
hold on
% plot result
plot(S,mu,'k-o'), xlabel('S (g/l)'), ylabel('\mu (1/h)');
% implement WaymanandTseng Model as a Matlab anonymous function
WaymanandTseng= @(S)(0.3164*S./(0.7346+S))-((0.01618)*(S+0.2886));
% calculate mu
mu = WaymanandTseng(S);
hold on
% plot result
plot(S,mu,'k -.'), xlabel('S (g/l)'), ylabel('\mu (1/h)'), legend('YanoandKoga1','YanoandKoga2', 'AlagappanandCowan','WaymanandTseng');
axis([0 20 0 0.3])
set(gca,'YTick',[0 0.05 .1 0.15 0.2 0.25 0.3 ])
set(gca,'YTickLabel',[0 0.05 .1 0.15 0.2 0.25 0.3 ])
set(gca,'XTick',[0 2 4 6 8 10 12 14 16 18 20 ])
set(gca, 'XTicklabel', [0 2 4 6 8 10 12 14 16 18 20 ])
title('\mu vs S')
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Can anyone tell where I am lacking?
Thanks in advance.
4 Kommentare
Antworten (1)
Shubham Khatri
am 3 Feb. 2021
Bearbeitet: Shubham Khatri
am 3 Feb. 2021
Hello,
You need to define a symbolic variable. You can define it by using syms. For more information on syms please refer to this documentation link. After defining the variable you need to define a range of values for which you need to find the value of the function. I have specified a range from 0 to 20 with an intervel of 0.01 in variable S. Also, I found some typos in the code which I have corrected. Please find the below code.
clc
clear all
syms S
% implement YanoandKoga1 Model as a Matlab anonymous function
YanoandKoga1 = @(S) 0.51*(S./(1.413+S+((S.^2)./1250)+((S.^3)./4.561)));
% calculate mu
S=0:0.01:20;
mu =YanoandKoga1(S);
hold on
% plot result
plot(S,mu,'k --'), xlabel('S (g/l)'), ylabel('\mu (1/h)');
% implement YanoandKoga2 Model as a Matlab anonymous function
YanoandKoga2= @(S) 0.41.*(S./((5.23+S+((S.^3)./2.64))));
% calculate mu
mu = YanoandKoga2(S);
hold on
% plot result
plot(S,mu,'k-'), xlabel('S (g/l)'), ylabel('\mu (1/h)');
% implement AlagappanandCowan Model as a Matlab anonymous function
AlagappanandCowan= @(S)0.82.*(S./(4.366+S+((S.^2)./2.246)))-(0.004379.*(S+2.985)); % NOTICE THE CHANGE IN SIGN
% calculate mu
mu = AlagappanandCowan(S);
hold on
% plot result
plot(S,mu,'k-o'), xlabel('S (g/l)'), ylabel('\mu (1/h)');
% implement WaymanandTseng Model as a Matlab anonymous function
WaymanandTseng= @(S)(0.3164*(S./(0.7346+S)))-((0.01618)*(S+0.2886)); % NOTICE CHANGE IN THE SIGN
% calculate mu
mu = WaymanandTseng(S);
hold on
% plot result
plot(S,mu,'k -.'), xlabel('S (g/l)'), ylabel('\mu (1/h)'), legend('YanoandKoga1','YanoandKoga2', 'AlagappanandCowan','WaymanandTseng');
axis([0 20 0 0.3])
set(gca,'YTick',[0 0.05 .1 0.15 0.2 0.25 0.3 ])
set(gca,'YTickLabel',[0 0.05 .1 0.15 0.2 0.25 0.3 ])
set(gca,'XTick',[0 2 4 6 8 10 12 14 16 18 20 ])
set(gca, 'XTicklabel', [0 2 4 6 8 10 12 14 16 18 20 ])
title('\mu vs S')
Hope it helps
0 Kommentare
Siehe auch
Kategorien
Mehr zu Calculus finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!