1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
%% Définition des variables et données d'entrée
Bs=[10 13 17 20]; %knot
TWS=[10:10:50]; %knot
TWA=[0:1:180]; %°
%% Les points qui doivent être calculés pour chaque combinaison de vitesse bateau et vent (à tous les degrés)
##AWS=sqrt(Bs.^2 + TWS.^2 - 2*Bs*TWS*cos((180+TWA)*pi/180)); %knot
##AWA=asin((Bs*sin((180+TWA)*pi/180))/AWS)+TWA; %°
%% Définition de la structure (??)
Bs.TWS = [10:10:50];
Bs.TWS.TWA = [0:1:180];
%% Suite du code créé pour une seule valeur TWA et AWA
% Définition points calculés (manque des points pour aller à des angles <3 ou >20° et vitesse entre 5.5 et 13.88)
M_sim = [0 5.555 5.3 14.2;
3 5.555 135.3 17.0;
5 5.555 221.9 21.8;
...
20 13.888 3572.0 916.0];
alpha_sim = M_sim(:,1);
v_sim = M_sim(:,2);
Fz_sim = M_sim(:,3);
Fx_sim = M_sim(:,4);
% interpolation pour avoir les forces (pour chaque degré) à la vitesse vent apparent désiré
for i=1:90;
alpha(i) = i;
Fz_alpha(i) = griddata(alpha_sim, v_sim, Fz_sim, alpha(i), AWS);
Fx_alpha(i) = griddata(alpha_sim, v_sim, Fx_sim, alpha(i), AWS);
Finesse(i) = Fz_alpha(i)/Fx_alpha(i);
endfor
x = 90-AWA; % donne angle de la force de portance
Fprop = Fz_alpha*cos(x*pi/180);
Farr = Fx_alpha*cos((90-x)*pi/180);
Fr = Fprop-Farr;
val=max(Fr);
idx=find(Fr==val);
Fin = Fz_alpha(idx)/Fx_alpha(idx); |
Partager