You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
163 lines
5.6 KiB
163 lines
5.6 KiB
%% Plot Bahn mit unterschiedlichen Gewichten |
|
% Während eines Breakpoints in BerechneSpline_Rotor ausführen, damit die |
|
% entsprechend Daten alle da sind. |
|
clear all |
|
|
|
%% Skript für Plotbasics |
|
basics_plot |
|
|
|
%% Beginn |
|
|
|
close all |
|
|
|
alphaDeg = 50:1:180; |
|
alpha = alphaDeg.*pi/180; |
|
|
|
r = [cos(alpha);sin(alpha)]; |
|
|
|
r = r(2,:)+1; |
|
|
|
plot(alphaDeg,r,'Color',myLineOne) |
|
|
|
set(gcf,'defaulttextinterpreter','none') |
|
|
|
hold on |
|
|
|
plot([min(alphaDeg) min(alphaDeg)],[min(r) max(r)],'LineStyle','--','Color',myGray50) |
|
plot([max(alphaDeg) max(alphaDeg)],[min(r) max(r)],'LineStyle','--','Color',myGray50) |
|
|
|
text(min(alphaDeg)-0.1,1.3,['Infeasible', char(10), 'Region'],'Rotation',90,'VerticalAlignment','bottom') |
|
|
|
text(max(alphaDeg)+0.1,1.3,['Infeasible', char(10), 'Region'],'Rotation',90,'VerticalAlignment','top') |
|
|
|
plot([alphaDeg(end)],[r(end)],'Marker','o','LineStyle','none','Color',myLineThree) |
|
plot([alphaDeg(1)],[r(1)],'Marker','o','LineStyle','none','Color',myLineTwo) |
|
|
|
plot([alphaDeg(end),alphaDeg(end)+5],[r(end),r(end)+0.12],'Color',myGray25) |
|
text(alphaDeg(end)+2,r(end)+0.17,['Global', char(10), 'Minimum']) |
|
|
|
|
|
text(alphaDeg(1)+0.02,r(1)-0.07,['Local', char(10), 'Minimum']) |
|
|
|
|
|
box off |
|
|
|
set(gca,'XLim',[0,360]) |
|
try |
|
|
|
for i = 0:5 |
|
switch i |
|
case 0 |
|
|
|
plot([i*60,i*60+6],[min(r),min(r)+0.12],'Color',myGray25) |
|
text(i*60,min(r)+0.14,['$\alpha_{\text{init},',num2str(i),'}$'],'HorizontalAlignment','left') |
|
case 1 |
|
plot([i*60,i*60],[min(r),min(r)+0.06],'Color',myGray25) |
|
text(i*60,min(r)+0.08,['$\alpha_{\text{init},',num2str(i),'}$'],'HorizontalAlignment','center') |
|
case 2 |
|
plot([i*60,i*60],[min(r),min(r)+0.06],'Color',myGray25) |
|
text(i*60,min(r)+0.08,['$\alpha_{\text{init},',num2str(i),'}$'],'HorizontalAlignment','center') |
|
case 3 |
|
plot([i*60,i*60-20],[min(r),min(r)+0.12],'Color',myGray25) |
|
text(i*60-14,min(r)+0.14,['$\alpha_{\text{init},',num2str(i),'}$'],'HorizontalAlignment','right') |
|
case 4 |
|
plot([i*60,i*60+20],[min(r),min(r)+0.12],'Color',myGray25) |
|
text(i*60+14,min(r)+0.14,['$\alpha_{\text{init},',num2str(i),'}$'],'HorizontalAlignment','left') |
|
case 5 |
|
plot([i*60,i*60],[min(r),min(r)+0.06],'Color',myGray25) |
|
text(i*60,min(r)+0.08,['$\alpha_{\text{init},',num2str(i),'}$'],'HorizontalAlignment','center') |
|
|
|
end |
|
end |
|
|
|
% for i = 0:5 |
|
% % plot([i*360/6,i*360/6],[min(r),max(r)],,'LineStyle','--','Color',myGray25) |
|
% % text(i*360/6,0.02 |
|
% |
|
% if find(get(gca, 'XTick') == i*360/6) |
|
% |
|
% else |
|
% |
|
% set(gca, 'XTick', sort([i*360/6, get(gca, 'XTick')])); |
|
% k = find(get(gca, 'XTick') == i*360/6); |
|
% l = get(gca,'XTickLabel'); |
|
% l = {l{1:k-1},[],l{k:end}}; |
|
% set(gca,'XTickLabel',l); |
|
% end |
|
% xlims = get(gca,'XLim'); |
|
% |
|
% j=1; |
|
% stillrunning = 1; |
|
% ticks = get(gca, 'XTick'); |
|
% labels = get(gca,'XTickLabel'); |
|
% while stillrunning |
|
% if ticks(j) == i*360/6 |
|
% if j == 1 |
|
% tickresult = {string(['$\alpha_{init,',num2str(i),'}$'])}; |
|
% else |
|
% tickresult(end+1) = {string(['$\alpha_{init,',num2str(i),'}$'])}; |
|
% end |
|
% |
|
% else |
|
% if j == 1 |
|
% tickresult = {num2str(labels{j})}; |
|
% else |
|
% tickresult(end+1) = {num2str(labels{j})}; |
|
% end |
|
% |
|
% end |
|
% j = j+1; |
|
% if j > numel(labels) |
|
% stillrunning = 0; |
|
% end |
|
% end |
|
% |
|
% set(gca,'XTickLabel',tickresult); |
|
% |
|
% |
|
% end |
|
|
|
xlabel('$\alpha_{k,i}$ {[\SI{}{\degree}]}') |
|
ylabel('Normalized cost $\tilde{J}_{j,i}/\min\tilde{J}_{j,i}$') |
|
catch |
|
blub =0; |
|
end |
|
|
|
%% Tikzn |
|
|
|
matlab2tikz('filename','fitnessNWSA.tex',... |
|
'height', '\figureheight', 'width', '\figurewidth', 'encoding', 'UTF8', 'showInfo', false, 'checkForUpdates', false, ... |
|
'parseStrings', false, ... % switch off LaTeX parsing by matlab2tikz for titles, axes labels etc. ("greater flexibility", "use straight LaTeX for your labels") |
|
'floatFormat', '%.4g', ... % limit precision to get smaller .tikz files |
|
'noSize', false); |
|
% |
|
% axis off |
|
% |
|
% hold off |
|
% box off % Box um die figure herum ausblenden |
|
|
|
% mit legendflex hat man mehr Möglichkeiten als mit MATLABs eigener |
|
% legend-Funktion |
|
% legendflex({'LF', 'UF'}, ... |
|
% 'box', 'off', ... |
|
% 'ncol', 1, ... |
|
% 'nrow', 2, ... |
|
% 'anchor', [3, 3], ... |
|
% 'buffer', [-30, -30], ... |
|
% 'xscale', 0.5, ... |
|
% 'padding', [0, 0, 20], ... |
|
% 'Color', [1, 1, 1], ... |
|
% 'Interpreter', 'latex', ... |
|
% 'fontsize', 11) |
|
|
|
|
|
tightfig; % tightfig entfernt den weißen Rand um die figure herum |
|
% for i = 1:length(ax) |
|
% % decimal_comma(ax(i), 'XY') % für deutsche Veröffentlichungen kann hiermit der Dezimalpunkt durch ein Dezimal komma ersetzt werden |
|
% myArrow(ax(i), 'y') % Die Funkion fügt je nach zweitem Argument einen Achsenpfeil hinzu |
|
% end |
|
|
|
% FileName_Res = './Figures/PathOptim'; % Dateiname für LaTeX-Export definieren |
|
% Plot2LaTeX(fig_Res, FileName_Res) % Plot2LaTeX erzeugt aus der figure eine SVG-Datei und daraus ein PDF + LaTeX-Datei für den Text |
|
|
|
|
|
|