how to use mesh to plot 3D image?

6 ビュー (過去 30 日間)
M.Rameswari Sudha
M.Rameswari Sudha 2023 年 1 月 12 日
コメント済み: M.Rameswari Sudha 2023 年 1 月 12 日
I couldnt get mesh instead of plot3. help anyone.
clc
clear all
u1=4;u2=8;a=30;b=5;a2=100;A=500;c2=10;c3=12;c4=8;D0=115; b2=0.2;
a=0.01;d=0.2;m=0.5;k1=0.5;k0=1;k2=2;
c1=5;
t1= 0.2 : 0.2 :1.8
T=0.2 : 0.2 :1.8
n=length(t1)
j=1;
for i=1:n
TC=(1./T(i)).*(c1.*((b-a)-b.*t1(i)-(a+b.*(1+m)./(1+m-t1(i))))+c2.*(b.*t1(i)-(a+b.*(1+m)).*(t1(i)./(1+m-t1(i))))+c3.*((a./k1)-((b./k1.^2).*(1-k1.*T(i))).*(((-u1.*k1)./(1+k1.*(t1(i)-T(i)))+1)-((1-k1.*T(i))./(1+k1.*(t1(i)-T(i))))+(b.*k0.*(t1(i)-u1)./k1)-(a-(b.*k0.*(1-k1.*T(i))./k1)).*((u2-u1)./(1+k1.*(t1(i)-T(i))))+(k0.*D0./k1).*((k1.*(u1-u2)./(1+k1.*(t1(i)-T(i))))-(a-(b.*k0./k1).*(1-k1.*T(i))).*((T(i)-k2)./(1+k1.*(t1(i)-T(i))))+(b.*k0./k1).*(u2-T(i))-(1-k1.*T(i)).*((T(i)+u2)./(1+k1.*(t1(i)-T(i))))+c4.*(-a2+b2.*t1(i)+k0.*(a-(b./k1).*(1-k1.*T(i)).*(1./(1+k1.*(t1(i)-T(i)))+(b./k1))))))));
%TC=(a/T(i))*((A/a)+(h/(th+b))*(((th+b)*(exp(-R*td)-1)/(b*R))+(1/(b+R))*(exp(b*td)-exp(-R*td))*(exp((th+b)*(t1(i)-td))+(th/b)))+((h)/(th+b))*((1/R)*(exp(-R*t1(i))-exp(-R*td))+(1/(th+b+R))*(exp((th+b)*(t1(i)-td)-(R*td))-exp(-R*t1(i))))+((s*del)/(R^2))*(exp(-R*t1(i))-exp(-R*T(i))*(R*(T(i)-t1(i))+1))+(pi*(1-del)/R)*(exp(-R*t1(i))-exp(-R*T(i)))+p*((1/(th+b))*(exp((th+b)*(t1(i)-td))-1)*exp(b*td)+(1/b)*(exp(b*td)-1)+del*exp(-R*T(i))*(T(i)-t1(i))));
z(j)=TC;
j=j+1;
end
% t1,
%
% T
% z
length(T);
length(z);
mesh(t1,T,z(t1,T))
axis square; grid on
% (a/x(1))*(exp(-R*x(1))*s*del*(x(1)-x(2))+exp(-R*x(1))*pi*(1-del)+p*del*exp(-R*x(1))*(1-R*(x(1)-x(2))))-(a/(x(1)^2))*((A/a)+(h/(th+b))*(((th+b)*(exp(-R*td)-1)/(b*R))+(1/(b+R))*(exp(b*td)-exp(-R*td))*(exp((th+b)*(x(2)-td))+(th/b)))+((h)/(th+b))*((1/R)*(exp(-R*x(2))-exp(-R*td))+(1/(th+b+R))*(exp((th+b)*(x(2)-td)-(R*td))-exp(-R*x(2))))+((s*del)/(R^2))*(exp(-R*x(2))-exp(-R*x(1))*(R*(x(1)-x(2))+1))+(pi*(1-del)/R)*(exp(-R*x(2))-exp(-R*x(1)))+p*((1/(th+b))*(exp((th+b)*(x(2)-td))-1)*exp(b*td)+(1/b)*(exp(b*td)-1)+del*exp(-R*x(1))*(x(1)-x(2))))
Index in position 1 is invalid. Array indices must be positive integers or logical values.
Error in totalcost (line 23)
mesh(t1,T,z(t1,T))

採用された回答

Karim
Karim 2023 年 1 月 12 日
I assume you want to create a 3d surf plot? You can use the method below.
u1=4;u2=8;a=30;b=5;a2=100;A=500;c2=10;c3=12;c4=8;D0=115;b2=0.2;
a=0.01;d=0.2;m=0.5;k1=0.5;k0=1;k2=2;c1=5;
t1 = 0.2:0.2:1.8;
t2 = 0.2:0.2:1.8;
[X,Y] = meshgrid(t1,t2);
Z = zeros(size(X));
for i = 1:numel(X)
t1_i = X(i);
t2_i = Y(i);
Z(i) = (1./t2_i).*(c1.*((b-a)-b.*t1_i-(a+b.*(1+m)./(1+m-t1_i)))+c2.*(b.*t1_i-(a+b.*(1+m)).*(t1_i./(1+m-t1_i)))+c3.*((a./k1)-((b./k1.^2).*(1-k1.*t2_i)).*(((-u1.*k1)./(1+k1.*(t1_i-t2_i))+1)-((1-k1.*t2_i)./(1+k1.*(t1_i-t2_i)))+(b.*k0.*(t1_i-u1)./k1)-(a-(b.*k0.*(1-k1.*t2_i)./k1)).*((u2-u1)./(1+k1.*(t1_i-t2_i)))+(k0.*D0./k1).*((k1.*(u1-u2)./(1+k1.*(t1_i-t2_i)))-(a-(b.*k0./k1).*(1-k1.*t2_i)).*((t2_i-k2)./(1+k1.*(t1_i-t2_i)))+(b.*k0./k1).*(u2-t2_i)-(1-k1.*t2_i).*((t2_i+u2)./(1+k1.*(t1_i-t2_i)))+c4.*(-a2+b2.*t1_i+k0.*(a-(b./k1).*(1-k1.*t2_i).*(1./(1+k1.*(t1_i-t2_i))+(b./k1))))))));
end
figure
surf(X,Y,Z)
view([135 45])
grid on
  1 件のコメント
M.Rameswari Sudha
M.Rameswari Sudha 2023 年 1 月 12 日
Thank you so much. I got the answer.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSurface and Mesh Plots についてさらに検索

タグ

製品


リリース

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by