| Tslicesplot_ksi(models,avail,what,T,Z,tit)
|
function Tslicesplot_ksi(models,avail,what,T,Z,tit)
%vslicesplot_ksi(ksimodel,avail,what,v,Z,tit)
% make a new grid with max speed, max Torque and Speed step and Torque step
vgrid = 0:0.5:25;
Tgrid = T;
for k=1:length(vgrid)
hulp(((k-1)*(length(Tgrid))+1):k*length(Tgrid),:)=[vgrid(k).*ones(length(Tgrid),1) Tgrid'];
end
Xnew = hulp;
%XtestZA=testdataZA(:,1:2);
YnewZA=simlssvm(models.ZA,Xnew);
if avail(2)==1
Ynew(:,1) = simlssvm(models.MAe,Xnew);
%Ytest(:,1)= simlssvm(models.MAe,XtestZA);
for i=1:length(Xnew(:,1))
ksi(i,1)=1-YnewZA(i)/Ynew(i,1);
%ksitest(i,1)=1-YtestZA(i)/Ytest(i,1);
end
else
for i=1:length(Xnew)
ksi(i,1)=0;
%ksitest(i,2)=0;
end
end
if avail(3)==1
Ynew(:,2) = simlssvm(models.MAn,Xnew);
%Ytest(:,2)= simlssvm(models.MAn,XtestZA);
for i=1:length(Xnew)
ksi(i,2)=1-YnewZA(i)/Ynew(i,2);
%ksitest(i,2)=1-YtestZA(i)/Ytest(i,2);
end
else
for i=1:length(Xnew)
ksi(i,2)=0;
%ksitest(i,2)=0;
end
end
if avail(4)==1
Ynew(:,3) = simlssvm(models.MAp,Xnew);
%Ytest(:,3)= simlssvm(models.MAp,XtestZA);
for i=1:length(Xnew)
ksi(i,3)=1-YnewZA(i)/Ynew(i,3);
%ksitest(i,3)=1-YtestZA(i)/Ytest(i,3);
end
else
for i=1:length(Xnew)
ksi(i,3)=0;
%ksitest(i,3)=0;
end
end
%filter negative and unrealistic ksi
for i=1:length(Xnew(:,1))
for j=1:3
if or(ksi(i,j)>1,ksi(i,j)<0)
ksi(i,j)=NaN;
end
end
end
colors=['y','g','b','r'];
amodes=['ZA '
'MAe'
'MAn'
'MAp'];
amodesstr=cellstr(amodes);
if max(T)>80
errordlg(['Elements of T must be smaller than ', 80],'Bad Input','modal')
end
for i=1:length(vgrid)
Tslice(:,i)=Xnew((i-1)*length(Tgrid)+1:i*length(Tgrid),2);
vslice(:,i)=Xnew((i-1)*length(Tgrid)+1:i*length(Tgrid),1);
for j=2:4
ksislice(:,i,j-1)=100*ksi((i-1)*length(Tgrid)+1:i*length(Tgrid),j-1);
end
end
%save slices2 Xnew Tslice vslice ksislice ksi
hold on
set(text,'fontsize',14)
for i=1:length(T);
k=round(2.5*max(Tslice)/25*i*1/0.5);
l=round(k);
%index=v(i)*1/deltav+1;
for j=1:4
if what(j)==1
if avail(j)==0
errordlg(['The ',amodes(j,:),' mode is not available for this pedelec'],'Bad Input','modal');
else
plot(vslice(i,:),ksislice(i,:,j),colors(j))
text(vslice(i,k),ksislice(i,k,j),['\leftarrowT_{',amodes(j,:),'}= ',num2str(Tslice(i,1)),'Nm'],'color',colors(j));
end
end
end
end
title(tit,'fontsize',14);
ylabel('\xi [%]','rotation',0);
xlabel('Speed [km/h]');
%vektor(i,:)=[tekstZA(i) tekstMAp(i) titel(i) x(i) y(i)];
%set(vektor(k,:),'fontsize',14);
axis([0 25 0 120]);
hold off
end
%
|
|