How to plot contour with constraints

1 view (last 30 days)
% I have following equations. I want to see variation of cp(si1,si2) with si1 and si2 with following constraints
% constraints are , gamma> max(0 -alpha) and gamma+ beta < 0
% I have written following code, but is giving wrong results. Code is giving value of cp in the range of 0 to 140 but it should around 0 to 2.5
% I have attached the for expected output. But I am getting completely wrong result.
clear all
Cpe=-0.6
lamdan=0.5
lamdad=0.5952
lamda12=0.84
nd=0.9
n12=0.9
nn=0.7
alpha= nn+lamdan^2*(1-nn)-n12*(1-lamda12^2)-nd*lamda12^2*(1-lamdad^2)
beta= alpha+ ((lamdad^2*lamda12^2*(1-Cpe))/Cpe)
[si1 si2] = meshgrid(0:0.1:1, 0:0.1:1);
gamma=si1+(si2*lamda12^2)
cp= gamma*((1-Cpe)./(gamma+alpha)).^1.5
keepind = gamma+ beta > 0
si1(keepind) = NaN
si2(keepind) = NaN
contourf(si1, si2, cp)
  3 Comments
Aiden James
Aiden James on 16 Sep 2020
Sorry , range for si1 and si2 is 0 to 1
0 < si1 < 1
0< si2 <1
Aiden James
Aiden James on 16 Sep 2020
I want to see variation of cp within the above range of si1 and si2

Sign in to comment.

Accepted Answer

KSSV
KSSV on 16 Sep 2020
Cpe=-0.6;
lamdan=0.5;
lamdad=0.5952;
lamda12=0.84;
nd=0.9;
n12=0.9;
nn=0.7;
si1 = linspace(0,1) ;
si2 = linspace(0,1) ;
[si1,si2] = meshgrid(si1,si2) ;
alpha= nn+lamdan.^2*(1-nn)-n12*(1-lamda12.^2)-nd*lamda12.^2*(1-lamdad.^2) ;
beta= alpha+ ((lamdad.^2*lamda12.^2*(1-Cpe))./Cpe) ;
gamma=si1+si2*lamda12.^2+alpha ;
cp= (si1+si2*lamda12.^2)*((1-Cpe)./(si1+si2*lamda12.^2+alpha)).^1.5 ;
contour(si1,si2,cp)
  4 Comments
KSSV
KSSV on 16 Sep 2020
But you are not using gamma and beta in cp.
Aiden James
Aiden James on 4 Oct 2020
gamma and beta are the functions of si1 and si2. Sir, my problem is solved. Your help is greatly appreciated. Thank you.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!