579
In questa appendice si riportano i programmi matlab relativi al capitolo 8 per la caratterizzazione delle prestazioni cavitanti del DAPAMITO3. Per evitare di appesantire troppo questa parte si riporta per ogni serie di programmi matlab un solo esempio, essendo quelli esclusi identici in tutto e per tutto a quelli riportati, fuorché per i dati impiegati.
1. Programma impiegato per il plottaggio dell’andamento delle curve di prestazione cavitante per i vari coefficienti di flusso provati. Nel programma viene impiegata la funzione density, già presentata in precedenza. Viene inoltre impiegata la funzione pressione_vapore, successivamente presentata.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Prove continue cavitanti fredde su DaPaMiTo 3
% clearance 2 mm radiali
% 3000 rpm
% Re=4,11*10^6 (Re=2*Omega*r/ni) , ni=1,0040*10^-6 m^2/s a T=25 °C
% Giovanni Pace 2009
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all close all clc
% Raggio dell'induttore(raggio di tip di paletta) r=0.081 ; % in m
% Clearance radiale
cle=0.002 ; % in m
% Area frontale di passaggio dell'acqua Area=pi*(r)^2 ; % in m^2
% Velocità angolare dell'induttore
Om=3000 ; % in rpm
% Velocità angolare dell'induttore convertita in radianti al secondo Omega=(Om*2*pi)/60 ; % in rad/s
% Numero di scan rate num=1000;
% Durata della prova
t_1_4=num*360; % 6 min di prova t_2_3=num*300; % 5 min di prova
% Temperatura media della prova
T_1=[17.6 17.3 17 17.6] ; % in °C
% Temperatura dell'acqua nel SI
T=T_1+273.15 ; % in K
% Densità dell'acqua alla temperatura media della prova
580 rho=density(T); % in kg/m^3
% Pressione di vapore dell'acqua alla temperatura media della prova p_v=pressione_vapore(T_1) ; % in Pascal
% Pressione in ingresso, da trasduttore di pressione assoluto
% Si ottiene dai dati ricavati dal Pc, si caricano anche le portate
% volumetriche, acquisite mediante multiumetro di precisione
% Le durate variano in base alla facilità nel controllare le portate
% Prova a portata 32,49 l/s con 6 min di prova load 'prova_phi_0_062.txt' ;
Corrente_1=xlsread('Portata_32_49.xls');
PortataVol_1=3125.*Corrente_1-12.5; % in l/s One(1,1:200)=1;
PVol_1=PortataVol_1*One;
VettPVol_1=reshape(PVol_1',1,360000);
% Prova a portata 30,94 l/s con 5 min di prova load 'prova_phi_0_059.txt' ;
Corrente_2=xlsread('Portata_30_94.xls');
PortataVol_2=3125.*Corrente_2-12.5; % in l/s One(1,1:200)=1;
PVol_2=PortataVol_2*One;
VettPVol_2=reshape(PVol_2',1,300000);
% Prova a portata 29,40 l/s con 5 min di prova load 'prova_phi_0_056.txt' ;
Corrente_3=xlsread('Portata_29_40.xls');
PortataVol_3=3125.*Corrente_3-12.5; % in l/s One(1,1:200)=1;
PVol_3=PortataVol_3*One;
VettPVol_3=reshape(PVol_3',1,300000);
% Prova a portata 27,85 l/s con 6 min di prova load 'prova_phi_0_053.txt' ;
Corrente_4=xlsread('Portata_27_85.xls');
PortataVol_4=3125.*Corrente_4-12.5; % in l/s One(1,1:200)=1;
PVol_4=PortataVol_4*One;
VettPVol_4=reshape(PVol_4',1,360000);
p_in_1=[prova_phi_0_062(1:end,1)]; % Dati in Bar p_in_2=[prova_phi_0_059(1:end,1)]; % Dati in Bar p_in_3=[prova_phi_0_056(1:end,1)]; % Dati in Bar p_in_4=[prova_phi_0_053(1:end,1)]; % Dati in Bar
% Salto di pressione realizzato nell'induttore, da trasduttore di pressione
% differenziale. Viene impiegato il trasduttore differenziale con fondo
% scala da 1 ba; si è visto dalle prove precedenti che in queste condizioni
% i due trasduttori differenziali si equivalgono
% Si ottiene dai dati ricavati dal Pc p_diff_1=[prova_phi_0_062(1:end,2)];
p_diff_2=[prova_phi_0_059(1:end,2)];
p_diff_3=[prova_phi_0_056(1:end,2)];
p_diff_4=[prova_phi_0_053(1:end,2)];
%%%%%%%
% Definizione dell'intervallo di tempo su ci viene effettuata la media
% temporale dei dati
DELTA_tempo=4 ; % in secondi
% Numero di dati contenuti in ciascun intervallo prescelto n=DELTA_tempo*1000 ;
% Grado di ricoprimento dell'intervallo in percentuale e=0.9 ;
l_1=length(prova_phi_0_062);
l_2=length(prova_phi_0_059);
l_3=length(prova_phi_0_056);
l_4=length(prova_phi_0_053);
c_1=(1/(1-e))*((l_1/n)-1)+1;
c_2=(1/(1-e))*((l_2/n)-1)+1;
c_3=(1/(1-e))*((l_3/n)-1)+1;
c_4=(1/(1-e))*((l_4/n)-1)+1;
p_ingresso_1(1)=mean(p_in_1(1:n,1)) ; p_ingresso_2(1)=mean(p_in_2(1:n,1)) ; p_ingresso_3(1)=mean(p_in_3(1:n,1)) ; p_ingresso_4(1)=mean(p_in_4(1:n,1)) ; p_differenziale_1(1)=mean(p_diff_1(1:n,1)) ; p_differenziale_2(1)=mean(p_diff_2(1:n,1)) ; p_differenziale_3(1)=mean(p_diff_3(1:n,1)) ; p_differenziale_4(1)=mean(p_diff_4(1:n,1)) ; inizio(1)=0;
for i=2:c_1
inizio(i)=(i-1)*n*(1-e);
end fine(1)=n;
for i=2:c_1
fine(i)=inizio(i)+n;
end for i=2:c_1
p_ingresso_1(i)=mean(p_in_1(inizio(i):fine(i),1)) ; p_differenziale_1(i)=mean(p_diff_1(inizio(i):fine(i),1)) ; end
for b=2:c_3
p_ingresso_3(b)=mean(p_in_3(inizio(b):fine(b),1)) ; p_differenziale_3(b)=mean(p_diff_3(inizio(b):fine(b),1)) ; end
for o=2:c_2
p_ingresso_2(o)=mean(p_in_2(inizio(o):fine(o),1)) ; p_differenziale_2(o)=mean(p_diff_2(inizio(o):fine(o),1)) ;
582 end
for z=2:c_4
p_ingresso_4(z)=mean(p_in_4(inizio(z):fine(z),1)) ; p_differenziale_4(z)=mean(p_diff_4(inizio(z):fine(z),1)) ; end
% Calcolo istanti medi di tempo in corrispondenza dei quali si
% calcolano le medie di cui sopra
% Ricordare che ci sono due tempi, in quanto due prove sono state
% effettuate con 6 min di prova, mentre le altre due sono durate 5 min.
tempo_1_1_4=[1:t_1_4]' ; % Costruzione del vettore che rappresenta gli istanti di tempo di campionamento
tempo_1_4=tempo_1_1_4./1000 ; % Vettore contenente il tempo in secondi tempo_medie_1_4(1)=0;
for i=2:c_1 %
tempo_medie_1_4(i)=mean(tempo_1_4(inizio(i):fine(i),1)) ; end
tempo_1_2_3=[1:t_2_3]' ; % Costruzione del vettore che rappresenta gli istanti di tempo di campionamento
tempo_2_3=tempo_1_2_3./1000 ; % Vettore contenente il tempo in secondi tempo_medie_2_3(1)=0;
for i=2:c_2 %
tempo_medie_2_3(i)=mean(tempo_2_3(inizio(i):fine(i),1)) ; end
% Battente idrostatico dovuto alla posizione dei trasduttori idro=0.06 ; % in bar
% Definizione di psi (prevalenza della pompa)
psi_1=[(p_differenziale_1.*10^5)./(rho(1).*(Omega.*r).^2)];
psi_2=[(p_differenziale_2.*10^5)./(rho(2).*(Omega.*r).^2)];
psi_3=[(p_differenziale_3.*10^5)./(rho(3).*(Omega.*r).^2)];
psi_4=[(p_differenziale_4.*10^5)./(rho(4).*(Omega.*r).^2)];
% Definizione di sigma, numero di Eulero o di cavitazione
sigma_1=[(((p_ingresso_1-idro).*10^5)-p_v(1))./(0.5.*rho(1).*((Omega*r).^2))];
sigma_2=[(((p_ingresso_2-idro).*10^5)-p_v(1))./(0.5.*rho(2).*((Omega*r).^2))];
sigma_3=[(((p_ingresso_3-idro).*10^5)-p_v(1))./(0.5.*rho(3).*((Omega*r).^2))];
sigma_4=[(((p_ingresso_4-idro).*10^5)-p_v(1))./(0.5.*rho(4).*((Omega*r).^2))];
% Plottaggio dati psi in funzione di sigma % aggiornato Prova 18/05/2009 figure ('Name','\psi-sigma')
plot(sigma_1,psi_1,'*r',sigma_2,psi_2,'gp',sigma_3,psi_3,'ys',sigma_4,psi_4,'bp') title('DAPAMITO3')
xlabel('\sigma') ylabel('\psi') hold on
legend('\phi_1=0.062','\phi_2=0.059','\phi_3=0.056','\phi_4=0.052')
%gtext('\phi_1'),gtext('\phi_2'),gtext('\phi_3'),gtext('\phi_4') grid on
box on
% Plottaggio dati psi/psi_noncavitante in funzione di sigma figure ('Name','\psi-sigma')
plot(sigma_1,psi_1/psi_1(1),'*r',sigma_2,psi_2/psi_2(1),'gp',sigma_3,psi_3/psi_3(1),'ys',sigma_
4,psi_4/psi_4(1),'bp') title('DAPAMITO3') xlabel('\sigma') ylabel('\psi/\psi_N_C') hold on
legend('\phi_1=0.062','\phi_2=0.059','\phi_3=0.056','\phi_4=0.052')
%gtext('\phi_1'),gtext('\phi_2'),gtext('\phi_3'),gtext('\phi_4') grid on
box on
line([0 0.4],[(0.95) (0.95)]) line([0 0.4],[(0.90) (0.90)]) line([0 0.4],[(0.85) (0.85)]) line([0 0.4],[(0.80) (0.80)]) line([0 0.4],[(0.75) (0.75)]) line([0 0.4],[(0.7) (0.7)])
% Plottaggio andamento della pressione in funzione del tempo
p_in_1_bar=(p_in_1-idro) ; % Valore della pressione in bar in ingresso all'induttore p_in_2_bar=(p_in_2-idro) ;
p_in_3_bar=(p_in_3-idro) ; p_in_4_bar=(p_in_4-idro) ;
% Plottaggio andamento della pressione in ingresso all'induttore per i 4
% casi analizzati figure
plot(tempo_1_4,p_in_1_bar,'.k') xlabel('tempo (s)')
ylabel('pressione ingresso (bar)')
title('Andamento della pressione in funzione del tempo per \phi=0.062') grid on
box on figure
plot(tempo_2_3,p_in_2_bar,'.k') xlabel('tempo (s)')
ylabel('pressione ingresso (bar)')
title('Andamento della pressione in funzione del tempo per \phi=0.059') grid on
box on figure
plot(tempo_2_3,p_in_3_bar,'.k') xlabel('tempo (s)')
ylabel('pressione ingresso (bar)')
title('Andamento della pressione in funzione del tempo per \phi=0.056') grid on
584 box on
figure
plot(tempo_1_4,p_in_4_bar,'.k') xlabel('tempo (s)')
ylabel('pressione ingresso (bar)')
title('Andamento della pressione in funzione del tempo per \phi=0.053') grid on
box on
% Andamento nel tempo della pressione differenziale figure
plot(tempo_medie_1_4,psi_1,'.b') xlabel('tempo (s)')
ylabel('prevalenza (bar)')
title('Andamento della prevalenza nel tempo per \phi=0.062') grid on
box on figure
plot(tempo_medie_2_3,psi_2,'.b') xlabel('tempo (s)')
ylabel('prevalenza (bar)')
title('Andamento della prevalenza nel tempo per \phi=0.059') grid on
box on figure
plot(tempo_medie_2_3,psi_3,'.b') xlabel('t (secondi)')
ylabel('prevalenza (bar)')
title('Andamento della prevalenza nel tempo per \phi=0.056') grid on
box on figure
plot(tempo_medie_1_4,psi_4,'.b') xlabel('tempo (s)')
ylabel('prevalenza (bar)')
title('Andamento della prevalenza nel tempo per \phi=0.053') grid on
box on figure
plot(tempo_medie_1_4,psi_1,'.b',tempo_medie_2_3,psi_2,'.g',tempo_medie_2_3,psi_3,'.y',te mpo_medie_1_4,psi_4,'.r')
xlabel('tempo (s)') ylabel('prevalenza (bar)') grid on
box on
save('C:\Users\Giovanni\Documents\Tesi\Prove_DAP3_cav_3000_discrete\discreta_3000_Q_
32_49','sigma_1','psi_1','sigma_2','psi_2','sigma_3','psi_3','sigma_4','psi_4');
% Plottaggio dell'andamento del coefficiente di flusso per i 4 casi analizzati Q_32_36=VettPVol_1';
phi_32_36=((Q_32_36.*10^-3)/Area)/(Omega*r) ; phi_32_36_media=mean(phi_32_36);
figure
plot(tempo_1_4,phi_32_36,'*r') xlabel('tempo (s)')
ylabel('\phi')
title('Andamento di \Phi nel tempo per prova a \phi=0.062') grid on
box on
Q_30_90=VettPVol_2';
phi_30_90=((Q_30_90.*10^-3)/Area)/(Omega*r) ; phi_30_90_media=mean(phi_30_90);
figure
plot(tempo_2_3,phi_30_90,'.c') xlabel('tempo (s)')
ylabel('\phi')
title('Andamento di \Phi nel tempo per prova a \phi=0.059') grid on
box on
_29_36=VettPVol_3';
phi_29_36=((Q_29_36.*10^-3)/Area)/(Omega*r) ; phi_29_36_media=mean(phi_29_36);
figure
plot(tempo_2_3,phi_29_36,'*g') xlabel('tempo (s)')
ylabel('\phi')
title('Andamento di \Phi nel tempo per prova a \phi=0.056') grid on
box on
Q_27_75=VettPVol_4';
phi_27_75=((Q_27_75.*10^-3)/Area)/(Omega*r) ; phi_27_75_media=mean(phi_27_75);
figure
plot(tempo_1_4,phi_27_75,'*b') xlabel('tempo (s)')
ylabel('\phi')
title('Andamento di \Phi nel tempo per prova a \phi=0.053') grid on
box on
% Plottaggio andamento psi-sigma e phi-sigma sul medesino grafico phi_32_36_1(1)=mean(phi_32_36(1:n,1)) ;
for i=2:c_1
586 phi_32_36_1(i)=mean(phi_32_36(inizio(i):fine(i),1)) ; end
figure ('Name','\psi-sigma \phi_sigma')
[AX,H1,H2] = plotyy(sigma_1,psi_1,sigma_1,phi_32_36_1,'plot');
set(get(AX(1),'Ylabel'),'string','\psi') set(get(AX(2),'Ylabel'),'string','\phi') set(H1,'LineStyle','*')
set(H2,'LineStyle','.') xlabel('\sigma') axis([0 0.4 0 0.15])
title('Curve \psi-\sigma e \phi-\sigma per \phi=0.062') hold on
% text(0.27,0.125,'\psi(sigma)')
% text(0.27,0.14,'\phi(sigma)') grid on
box on
phi_30_90_1(1)=mean(phi_30_90(1:n,1)) ; for i=2:c_2
phi_30_90_1(i)=mean(phi_30_90(inizio(i):fine(i),1)) ; end
figure ('Name','\psi-sigma \phi_sigma')
[AX,H1,H2] = plotyy(sigma_2,psi_2,sigma_2,phi_30_90_1,'plot');
set(get(AX(1),'Ylabel'),'string','\psi') set(get(AX(2),'Ylabel'),'string','\phi') set(H1,'LineStyle','*')
set(H2,'LineStyle','.') xlabel('\sigma') axis([0 0.4 0 0.15])
title('Curve \psi-\sigma e \phi-\sigma per \phi=0.059') hold on
% text(0.27,0.12,'\psi(sigma)')
% text(0.27,0.13,'\phi(sigma)') grid on
box on
phi_29_36_1(1)=mean(phi_29_36(1:n,1)) ; for i=2:c_2
phi_29_36_1(i)=mean(phi_29_36(inizio(i):fine(i),1)) ; end
figure ('Name','\psi-sigma \phi_sigma')
[AX,H1,H2] = plotyy(sigma_3,psi_3,sigma_3,phi_29_36_1,'plot');
set(get(AX(1),'Ylabel'),'string','\psi') set(get(AX(2),'Ylabel'),'string','\phi') set(H1,'LineStyle','*')
set(H2,'LineStyle','.') xlabel('\sigma')
axis([0 0.4 0 0.15])
title('Curve \psi-\sigma e \phi-\sigma per \phi=0.056') hold on
% text(0.27,0.12,'\psi(sigma)')
% text(0.27,0.13,'\phi(sigma)') legend('\psi','\phi')
grid on box on
phi_27_75_1(1)=mean(phi_27_75(1:n,1)) ; for i=2:c_1
phi_27_75_1(i)=mean(phi_27_75(inizio(i):fine(i),1)) ; end
figure ('Name','\psi-sigma \phi_sigma')
[AX,H1,H2] = plotyy(sigma_4,psi_4,sigma_4,phi_27_75_1,'plot');
set(get(AX(1),'Ylabel'),'string','\psi') set(get(AX(2),'Ylabel'),'string','\phi') set(H1,'LineStyle','*')
set(H2,'LineStyle','.') xlabel('\sigma') axis([0 0.4 0 0.15])
title('Curve \psi-\sigma e \phi-\sigma per \phi=0.053') hold on
% text(0.27,0.12,'\psi(sigma)')
% text(0.27,0.13,'\phi(sigma)') grid on
box on
save('C:\Users\Giovanni\Documents\Tesi\Prove_DAP3_cav_3000_discrete\Discrete_complessi ve','sigma_1','psi_1','sigma_2','psi_2','sigma_3','psi_3','sigma_4','psi_4');
save('C:\Users\Giovanni\Documents\Tesi\Prove cavitanti continue\Prove cavitanti continue
FREDDE FINALI\Superficie di
prestazioni\Superficie_di_prestazione','sigma_1','psi_1','sigma_2','psi_2','sigma_3','psi_3','sig ma_4','psi_4','phi_32_36_1', 'phi_30_90_1', 'phi_29_36_1', 'phi_27_75_1');
save('Cavitanti continue
fredde','sigma_1','psi_1','sigma_2','psi_2','sigma_3','psi_3','sigma_4','psi_4');
% Plottaggio superficie di prestazioni mediante interpolazione dei dati
% Per plottare la superficie si raggruppano tutti i dati in vettori
%Phi_complessivo
x=[phi_32_36_1 phi_30_90_1 phi_29_36_1 phi_27_75_1];
%Sigma_complessivo
y=[sigma_1 sigma_2 sigma_3 sigma_4];
%Psi_complessivo
z=[psi_1 psi_2 psi_3 psi_4];
[X,Y] = meshgrid(0.05:0.001:0.065,0:0.01:0.4);
Z = griddata(x,y,z,X,Y,'cubic');
%Phi_complessivo,Sigma_complessivo,Psi_complessivo mesh(X,Y,Z);
588 axis tight; hold on
plot3(x,y,z,'.','MarkerSize',15)
%Phi_complessivo,Sigma_complessivo,Psi_complessivo xlabel('Phi')
ylabel('Sigma') zlabel('Psi')
2. Listato matlab per la funzione pressione_vapore, dove viene impiegata per il calcolo approssimato della pressione di vapore dell’acqua satura la formula empirica di Wexler. La temperatura T da inserire è in°C.
% Creazione funzione di calcolo della pressione di vapore in funzione della
% temperatura dell'acqua
function p_v=pressione_vapore(T)
Pv_1=[6.11 *10.0.^((7.5 .* T )./ (237.7+ T))]'; % Pressione in [hPa]
p_v=100*Pv_1; % Pressione in [Pa]
3. Listato matlab per la rappresentazione della caratterizzazione delle prove discrete.
% Programma per il plottaggio dati delle prove di cavitazione discreta
% Portata=32.49 l/s <=> 105% della portata nominale di progetto
% clearance 2 mm radiali
% 3000 rpm
% Re=4,11*10^6 (Re=2*Omega*r/ni , ni=1,0040*10^-6 m^2/s a T=25 °C
% Pace Giovanni 2009 clear all
close all clc
% Raggio dell'induttore(raggio di tip di paletta) r=0.081 ; % in m
% Clearance radiale
cle=0.002 ; % in m
% Area frontale di passaggio dell'acqua Area=pi*(r)^2 ; % in m^2
% Velocità angolare dell'induttore
Om=3000 ; % in rpm
% Velocità angolare dell'induttore convertita in radianti al secondo Omega=(Om*2*pi)/60 ; % in rad/s
% Calcolo dei coefficienti di flusso per ciascuna prova phi=
% (Q/A)/(Omega*r)
Q_1=32.49*10^-3 ; % in m^3/s phi_1=(Q_1/Area)/(Omega*r) ;
% Numero di scan rate num=1000;
% Durata della prova
t=num*5; % prova di durata 5 secondi
% Temperatura media della prova
T_1=[17;16.6;16.85;16.65;17.2;17.35;17.2;17.75;18.5;18.35;18.55] ; % in °C
% Temperatura dell'acqua nel SI
T=T_1+273.15 ; % in K
% Densità dell'acqua alla temperatura media della prova rho=density(T); % in kg/m^3
% Pressione di vapore dell'acqua alla temperatura media della prova p_v=pressione_vapore(T_1) ; % in Pascal
% Pressione in ingresso e differenziale, da trasduttore di pressione
% assoluto e differenziale
% Si ottiene dai dati ricavati dal Pc load 'pin_0_988_Q_32_49_0000.txt';
load 'pin_0_988_Q_32_49.txt';
load 'pin_0_827_Q_32_49_0000.txt';
load 'pin_0_827_Q_32_49.txt';
load 'pin_0_700_Q_32_49_000.txt';
load 'pin_0_700_Q_32_49.txt';
load 'pin_0_584_Q_32_49_000.txt';
load 'pin_0_584_Q_32_49.txt';
load 'pin_0_503_Q_32_49_0000.txt';
load 'pin_0_503_Q_32_49.txt';
load 'pin_0_439_Q_32_49_0000.txt';
load 'pin_0_439_Q_32_49.txt';
load 'pin_0_374_Q_32_49_0000.txt';
load 'pin_0_374_Q_32_49.txt';
load 'pin_0_310_Q_32_49_0000.txt';
load 'pin_0_310_Q_32_49.txt';
load 'pin_0_245_Q_32_49_0000.txt';
load 'pin_0_245_Q_32_49.txt';
load 'pin_0_180_Q_32_49_0000.txt';
load 'pin_0_180_Q_32_49.txt';
l=length(pin_0_988_Q_32_49);
% Caricamento pressioni assolute mediate nella durata temporale della prova p(1)=mean(pin_0_988_Q_32_49(1:l,1)); % valori in bar
p(2)=mean(pin_0_827_Q_32_49(1:l,1));
p(3)=mean(pin_0_700_Q_32_49(1:l,1));
p(4)=mean(pin_0_584_Q_32_49(1:l,1));
p(5)=mean(pin_0_503_Q_32_49(1:l,1));
p(6)=mean(pin_0_439_Q_32_49(1:l,1));
p(7)=mean(pin_0_374_Q_32_49(1:l,1));
p(8)=mean(pin_0_310_Q_32_49(1:l,1));
p(9)=mean(pin_0_245_Q_32_49(1:l,1));
p(10)=mean(pin_0_180_Q_32_49(1:l,1));
% Caricamento pressioni differenziali di tara mediate nella durata di acquisizione p_diff_ta(1)=mean(pin_0_988_Q_32_49_0000(1:l,2)); % valori in bar
590 p_diff_ta(2)=mean(pin_0_827_Q_32_49_0000(1:l,2));
p_diff_ta(3)=mean(pin_0_700_Q_32_49_000(1:l,2));
p_diff_ta(4)=mean(pin_0_584_Q_32_49_000(1:l,2));
p_diff_ta(5)=mean(pin_0_503_Q_32_49_0000(1:l,2));
p_diff_ta(6)=mean(pin_0_439_Q_32_49_0000(1:l,2));
p_diff_ta(7)=mean(pin_0_374_Q_32_49_0000(1:l,2));
p_diff_ta(8)=mean(pin_0_310_Q_32_49_0000(1:l,2));
p_diff_ta(9)=mean(pin_0_245_Q_32_49_0000(1:l,2));
p_diff_ta(10)=mean(pin_0_180_Q_32_49_0000(1:l,2));
% Caricamento pressioni differenziali mediate nella durata della prova p_diff_(1)=mean(pin_0_988_Q_32_49(1:l,2)); % valori in bar p_diff_(2)=mean(pin_0_827_Q_32_49(1:l,2));
p_diff_(3)=mean(pin_0_700_Q_32_49(1:l,2));
p_diff_(4)=mean(pin_0_584_Q_32_49(1:l,2));
p_diff_(5)=mean(pin_0_503_Q_32_49(1:l,2));
p_diff_(6)=mean(pin_0_439_Q_32_49(1:l,2));
p_diff_(7)=mean(pin_0_374_Q_32_49(1:l,2));
p_diff_(8)=mean(pin_0_310_Q_32_49(1:l,2));
p_diff_(9)=mean(pin_0_245_Q_32_49(1:l,2));
p_diff_(10)=mean(pin_0_180_Q_32_49(1:l,2));
% Eliminazione tara da valori di pressione differenziale for i=1:10
p_diff(i)=p_diff_(i)-p_diff_ta(i);
end
% Definizione prevalenza psi e numero di Eulero sigma for i=1:10
psi(i)=(p_diff(i).*10^5)./(rho(i)*(Omega*r).^2); % in Pa
sigma(i)=((p(i)-0.06).*10^5-p_v(i))./(0.5*rho(i)*(Omega*r).^2); % numero adimensionale end
% Plottaggio dati psi in funzione di sigma load 'Discrete_complessive';
figure ('Name','\psi-\sigma')
plot(sigma,psi,'*r',sigma_1,psi_1,'.b') title('DAPAMITO3 Prove cavitanti discrete') xlabel('\sigma')
ylabel('\psi') hold on
legend('\phi=0.062','continua') grid on
box on
save('discreta_3000_Q_32_49','sigma','psi','sigma_1','psi_1');
4. Listato matlab per ottenere l’andamento della deviazione standard per ciascun intervallo in cui vengono suddivise le prove cavitanti continue
% !!!!! Questo programma va fatto girare subito dopo quello cavitante
% continuo effettivo, altrimenti non ci sono i dati
% Programma calcolo deviazione standard e flottaggio
% Giovanni Pace 2009 for i=2:c_1;
press_in_1=p_in_1(inizio(i)+1:fine(i));
press_in_4=p_in_4(inizio(i)+1:fine(i));
diff_1=press_in_1-p_ingresso_1(i);
diff_4=press_in_4-p_ingresso_4(i);
dev_1(i)=sqrt(sum(diff_1.^2)/(n-1));
dev_4(i)=sqrt(sum(diff_4.^2)/(n-1));
end
for i=2:c_2;
press_in_2=p_in_2(inizio(i)+1:fine(i));
press_in_3=p_in_3(inizio(i)+1:fine(i));
diff_2=press_in_2-p_ingresso_2(i);
diff_3=press_in_3-p_ingresso_3(i);
dev_2(i)=sqrt(sum(diff_2.^2)/(n-1));
dev_3(i)=sqrt(sum(diff_3.^2)/(n-1));
end figure
plot(1:c_1,dev_1,'*r') hold on
plot(1:c_2,dev_2,'*g') hold on
plot(1:c_2,dev_3,'*b') hold on
plot(1:c_4,dev_4,'*m') xlabel('Intervallo (n°)') ylabel('\sigma (bar)')
legend('\phi=0.062','\phi=0.059','\phi=0.056','\phi=0.053') title('Deviazione standard - intervallo di media')
5. Programma matlab per sovrapporre le curve disrete a quelle continue
% Confronto tra i vari grafici cavitazione fredda continui e discreti
% Giovanni Pace 2009 clear all
close all clc
load 'discreta_3000_Q_27_85';
load 'discreta_3000_Q_29_40';
load 'discreta_3000_Q_30_94';
load 'discreta_3000_Q_32_49';
load 'Discrete_complessive';
figure('Name','\psi-sigma continue vs. discrete')
592
plot(sigma_1,psi_1,'*r',sigma,psi,'*b',sigma_2,psi_2,'+y',sigma2,psi2,'+g',sigma_3,psi_3,'ok',sig ma3,psi3,'oc',sigma_4,psi_4,'xm',sigma4,psi4,'xb')
title('Confronto tra prove discrete e relative prove continue') xlabel('\sigma')
ylabel('\psi') hold on
legend('\phi=0.062','continua 0.062','\phi=0.059','continua 0.059','\phi=0.056','continua 0.056','\phi=0.053','continua 0.053')
grid on box on
6. Metodo di Ruggeri Moore. Questo listato matlab riporta i comandi per ottenere i grafici riportati in fondo al capitolo 8 per ottenere mediante il metodo di Ruggeri Moore la scalatura delle prestazioni al variare del tipo di liquido impiegato.
% Programma per l'applicazione del metodo di Ruggeri-Moore ai dati di
% prestazione cavitante per clearance 0.8 mm
% Giovanni Pace - Lucio Torre 2009 close all
clear all clc;
% CARICAMENTO DATI PROVE DISCRETE FREDDE + CALDE A T=50-65-75 °C con 0.8 mm
% di clearance
%%%%% Caricamento dati delle prove discrete fredde
load ('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI DISCRETE\phi=0_062\discreta_3000_Q_32_49');
sigma_32_49_DIS=sigma;
psi_32_49_DIS=psi;
load ('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI DISCRETE\phi=0_059\discreta_3000_Q_30_94');
sigma_30_94_DIS=sigma;
psi_30_94_DIS=psi;
load ('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI DISCRETE\phi=0_056\discreta_3000_Q_29_40');
sigma_29_40_DIS=sigma;
psi_29_40_DIS=psi;
load ('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI DISCRETE\phi=0_053\discreta_3000_Q_27_85');
sigma_27_85_DIS=sigma;
psi_27_85_DIS=psi;
%%%%%% Caricamento dati delle prove discrete CALDE T=50°C load
('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI+INSTABILITà_FRE DDE\T_50°C\Q_32_49+discrete\discreta_T_50_Q_32_49');
sigma_32_49_DIS_T_50=sigma3;
psi_32_49_DIS_T_50=psi3;
load('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI+INSTABILITà _FREDDE\T_50°C\Q_30_94+discrete\discreta_T_50_Q_30_94');
sigma_30_94_DIS_T_50=sigma3;
psi_30_94_DIS_T_50=psi3;
load('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI+INSTABILITà _FREDDE\T_50°C\Q_29_40_SOLO_discrete\discreta_T_50_Q_29_40');
sigma_29_40_DIS_T_50=sigma3;
psi_29_40_DIS_T_50=psi3;
load('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI+INSTABILITà _FREDDE\T_50°C\Q_27_85+ discrete\discreta_T_50_Q_27_85');
sigma_27_85_DIS_T_50=sigma3;
psi_27_85_DIS_T_50=psi3;
%%%%%% Caricamento dati delle prove discrete CALDE T=65°C
load('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI+INSTABILITà _FREDDE\T_65°C\phi_0_062\discreta_T_65_Q_32_49');
sigma_32_49_DIS_T_65=sigma3;
psi_32_49_DIS_T_65=psi3;
load('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI+INSTABILITà _FREDDE\T_65°C\phi_0_059\discreta_T_65_Q_30_94');
sigma_30_94_DIS_T_65=sigma3;
psi_30_94_DIS_T_65=psi3;
load('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI+INSTABILITà _FREDDE\T_65°C\phi_0_056\discreta_T_65_Q_29_40');
sigma_29_40_DIS_T_65=sigma3;
psi_29_40_DIS_T_65=psi3;
load('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI+INSTABILITà _FREDDE\T_65°C\phi_0_053\discreta_T_65_Q_27_85');
sigma_27_85_DIS_T_65=sigma3;
psi_27_85_DIS_T_65=psi3;
%%%%%%% Caricamento dati delle prove discrete CALDE T=75°C
load('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI+INSTABILITà _FREDDE\T_75°C\phi_0_056\discreta_T_75_Q_29_40');
sigma_29_40_DIS_T_75=sigma3;
psi_29_40_DIS_T_75=psi3;
load('C:\Users\Giovanni\Documents\Tesi\PROVE_CAV_CLE_0_8_mm\CAVITANTI+INSTABILITà _FREDDE\T_75°C\phi_0_053\discreta_T_75_Q_27_85');
sigma_27_85_DIS_T_75=sigma3;
psi_27_85_DIS_T_75=psi3;
% Dati di riferimento
% Per prove fredde
sigma_riferimento_0_phi_0_053=sigma_27_85_DIS;
psi_adimensionale_0_phi_0_053=psi_27_85_DIS/psi_27_85_DIS(1);
% Per prove T=50°C
sigma_riferimento_1_phi_0_053=sigma_27_85_DIS_T_50;
psi_adimensionale_1_phi_0_053=psi_27_85_DIS_T_50/psi_27_85_DIS_T_50(1);
594
% Prove T=65 °C
sigma_riferimento_2_phi_0_053=sigma_27_85_DIS_T_65;
psi_adimensionale_2_phi_0_053=psi_27_85_DIS_T_65/psi_27_85_DIS_T_65(1);
% Prove T=75 °C
sigma_riferimento_3_phi_0_053=sigma_27_85_DIS_T_75;
psi_adimensionale_3_phi_0_053=psi_27_85_DIS_T_75/psi_27_85_DIS_T_75(1);
figure('Name','Dati origine')
plot(sigma_riferimento_0_phi_0_053,psi_adimensionale_0_phi_0_053,'pb') hold on
plot(sigma_riferimento_1_phi_0_053,psi_adimensionale_1_phi_0_053,'or') xlabel('\sigma')
ylabel('\Psi/\Psi_N_C') legend('T=15°C','T=50°C') grid on
axis([0 0.4 0 1.2])
% DEFINIZIONE DEI VALORI DI SIGMA PER I QUALI SI EFFETTUANO I CONFRONTI E
% LA RICOSTRUZIONE DELLA CURVA TRAMITE R-M
perc=[0.99,0.98]; % valore percentuale di prevalenza adimensionale considerata sigma_0_interp=[0.1027,0.1004] ;
sigma_1_interp=[0.0981,0.0858];
% Caricamento dati coinvolti nelle equazioni
% Raggio induttore r=0.081; % in m
% Velocità di rotazione induttore Ome=3000; % in rpm
Omega=Ome*2*pi/60; % in rad/s
% Accelerazione di gravità g=9.81; % in m/s^2
% Temperature testate in °C. Le temperature sono disposte in ordine
% decrescente di phi:0.062,0.059,0.056,0.053. Dove c'è lo 0 significa che
% non sono state eseguite quelle prove discrete, per incapacità nel
% raggiungimento della portata.
T_1_1=[16.56 16.95 15.71 16.94] ; % FREDDA
T_2_1=[50.27 50.18 49.87 50.52] ; % CALDA T=50 °C circa T_3_1=[64.9 64.94 65.07 64.97] ; % CALDA T=65 °C circa T_4_1=[0 0 74.98 74.76] ; % CALDA T=75 °C circa
% Temperature prove in K
T_1=T_1_1+273.15 ; % FREDDA
T_2=T_2_1+273.15 ; % CALDA T=50 °C circa T_3=T_3_1+273.15 ; % CALDA T=65 °C circa T_4=T_4_1+273.15 ; % CALDA T=75 °C circa T_matrice=[T_1;T_2;T_3;T_4];
% Densità fase liquida dell'acqua per le varie prove (Non considerare i
% valori di densità corrispettivi a 0 °C messo su per le prove che non sono
% state effettuate, solo per mantenere le dimensioni dell'array)
T_v_L=[280:5:475]; % [K]
v_L=1e-003+1e-006*[0 1 1 2 4 5 7 9 11 13 15 18 21 ...
24 27 30 34 37 41 45 49 53 58 62 67 72 77 82 87 93 99 ...
104 110 117 123 130 137 144 152 159]; % [m^3/kg]
for i=1:4 for j=1:4
v_L_stima(i,j)=spline(T_v_L,v_L,T_matrice(i,j));
rho_L_stima(i,j)=1./v_L_stima(i,j); % [kg/m^3] da Reynolds end
end
% rho_L=1./v_L;
%
% rho_L=[density(T_1);density(T_2);density(T_3);density(T_4)];
% Calcolo della densità della fase di vapore dell'acqua per le varie prove
% volume specifico e densità fase vapore [v_v rho_v]
T_v_v=[275:5:380]; % [K]
v_v=[181.7 130.3 94.67 69.67 51.90 39.10 29.78 22.91 17.80 13.96 11.04...
8.809 7.083 5.737 4.68 3.844 3.178 2.643 2.211 1.860 1.573 1.337]; % [m^3/kg] da Reynolds
for i=1:4 for j=1:4
v_v_stima(i,j)=spline(T_v_v,v_v,T_matrice(i,j));
rho_v_stima(i,j)=1./v_v_stima(i,j);
end end
% Calcolo della densità del calore latente di vaporizzazione [L] dell'acqua per le varie prove T_L=[275:5:380]; % [K]
L= [2496.8 2485.4 2473.9 2462.2 2450.3 2438.4 2426.3 2414.3 2402.0 2389.8...
2377.6 2365.3 2353.0 2340.5 2328.0 2315.4 2302.9 2290.1 2277.3 2264.3 ...
2251.2 2237.9].*10^3; % [J/kg] da Reynolds for i=1:4
for j=1:4
L_stima(i,j)=spline(T_L,L,T_matrice(i,j)); % in [J/kg]
end end
% Calore specifico a pressione costante della fase liquida
T_cpl=273.15+[0 10 20 30 40 50 60 70 80 90 100]; % [K]
cpl=[4.2176 4.1921 4.1818 4.1784 4.1785 4.1806 4.1843 4.1895 4.1963 4.2050...
4.2159]*10^3; % [J/kgK] da Handbook of chemistry and physics for i=1:4
for j=1:4
cpl_stima(i,j)=spline(T_cpl,cpl,T_matrice(i,j));% in [J/kgK]
end end
% Calcolo della diffusività Diffusività TERMICA
596
% conducibilità termica [k]
T_k=273.15+[0 10 20 30 40 50 60 70 80 90 100];
k=[561 580 598.4 615.4 630.5 643.5 654.3 663.1 670.0 675.3 679.1]*10^-3; %[W/Km] da Handbook of chemistry and physics
for i=1:4 for j=1:4
k_stima(i,j)=spline(T_k,k,T_matrice(i,j)); % in [J/kgK]
end end
ALFA_stima=k_stima./(rho_L_stima.*cpl_stima) ; % in m^2/s
% Determinazione di C per 0 e per 1 (0 ed 1 sono le prove di riferimento)
C_0=(((rho_v_stima(2,4)/rho_L_stima(2,4)).^2).*((L_stima(2,4).^2)./(cpl_stima(2,4)*T_matrice(
2,4)*ALFA_stima(2,4)))); % Per 1° Riferimento: FREDDO
C_1=(((rho_v_stima(3,4)/rho_L_stima(3,4)).^2).*((L_stima(3,4).^2)./(cpl_stima(3,4)*T_matrice(
3,4)*ALFA_stima(3,4)))); % Per 2° RIFERIMENTO: CALDO A T=50°C
% Definizione parametro C*
% C_star=C_0./C_1;
% Calcolo del rapporto tra i valori di C per la prova incognita ed il
% calore di C per la prova di riferimento 0
C=(((rho_v_stima(4,4)/rho_L_stima(4,4)).^2).*((L_stima(4,4).^2)./(cpl_stima(4,4)*T_matrice(4, 4)*ALFA_stima(4,4)))); % Per costruire la curva incognita a T=65°C
Rapp_C=C/C_0;
% CALCOLO DI DELTA_SIGMA_0 (PRIMO RIFERIMENTO)
DELTA_SIGMA_0=(sigma_0_interp-sigma_1_interp)*(C_0/(C_1-C_0));
% Calcolo di DELTA_SIGMA
DELTA_SIGMA=Rapp_C*DELTA_SIGMA_0;
% Calcolo di sigma (valore corrispondente alla curva ottenuta tramite
% Ruggeri-Moore)
sigma=sigma_0_interp+(DELTA_SIGMA_0-DELTA_SIGMA);
figure('Name','R_M')
% plot(sigma_riferimento_1_phi_0_053,psi_adimensionale_1_phi_0_053,'pb') hold on
% plot(sigma_riferimento_2_phi_0_053,psi_adimensionale_2_phi_0_053,'or') plot(sigma_riferimento_3_phi_0_053,psi_adimensionale_3_phi_0_053,'^m') plot(sigma,perc,'sg')
xlabel('\sigma') ylabel('\Psi/\Psi_N_C')
legend('T=75°C','T=75°C R-M' ) grid on
axis([0 0.4 0 1.2]) box on