You are on page 1of 60

Pagina |APP.

C.GOLIA: Aerodinamica 1

Appendici
Scopo
Disolitolappendiceinlibriearticoliscientifici,unaparteaggiuntachecontiene
dati,tabelleecc..,certamentesecondariarispettoaquellaprincipale.

Loscopodelleappendicidiquestenotealquantodifferente,pichefornirvidati
(trannepoche)voglionosvolgereunazioneditutoraggioperaiutarviacapirechi,
cosa,come,perchequindiadaiutarviafare,acalcolare,edapresentarequanto
riuscite a produrre, autonomamente, a questo stadio di evoluzione del vostro
apprendimento.

Inconclusionequesteappendicinonsonosecondariealtesto,ecertamentesono
pariteticamente principali, come o forse pi del testo perch dovrebbero darvi
quelqualcosadiprofessionalitchevirimarrpialungo.

Indice
Appendice 1 Atmosfera Standard
Appendice 2 Progetto AEROFORCES
Appendice 3 Profili Alari
Appendice 4 Le equazioni del moto di un corpo rigido in un fluido
Appendice 5 Codice NACAPROF
Appendice 6 Codice Pannelli Sorgenti
Appendice 7 Metodo dei Vortici Concentrati
Appendice 8 Metodo Pannelli Portanti
Appendice 9 Ala Finita Lineare Dritta
Appendice 10 Strato Limite Completo
Appendice 11 Schema di rapporto tecnico

Aero_APP_a.docx

23/01/2009

C.GOLIA: Aerodinamica
A
1

Pag
gina |APP. 2

Ap
ppendice 1
Atmosferra Standardd

Unit S.I..

Unit Ingglesi

Ap
ppendice 2
Progetto Aeroforcess
Aero_APP__a.docx

23
3/01/2009
9

Pagina |APP. 3

C.GOLIA: Aerodinamica 1

PROGETTO n 1
Scrivere, ed utilizzare un programma di calcolo scritto in FORTRAN e chiamato
AEROFORCES capace di leggere dati (analitici/numerici/sperimentali) delle velocit e dei
coefficienti di attrito superficiali per ricavarne i coefficienti aerodinamici risultanti.

Il calcolo del sistema di forze che il


fluido genera sul corpo (o viceversa) pu
essere fatto mediante l'integrazione degli
sforzi superficiali (forze su superfici
unitarie), cio mediante integrazione
superficiale
degli
sforzi
normali
(pressione) e degli sforzi tangenziali
(viscosi, sforzi di attrito).

n
p

L
dS

X
xcp

x
V

dS

Mo

Ne derivano, per la forza aerodinamica,


le seguenti componenti:

c = corda

nella direzione dell'asse X:


FX =

( p n x + t x ) dS

FZ =

( p n z + t z ) dS

nella direzione dell'asse Y:


S

per il Momento (componente sull'asse Y), Mo, rispetto al bordo di attacco ( x=0 , z=0)
considerato positivo se cabrante (naso in su):
Mo =

z ( p n x + t x ) x ( p n z + t z ) dS

dove:
n = versore normale, nx ed nz componenti del versore rispetto agli assi x e z,
t = versore tangente, tx ed tz componenti del versore rispetto agli assi x e z,
La forza aerodinamica normalmente decomposta:

nella direzione normale alla velocit asintotica (Portanza):


nella direzione della velocit asintotica
(Resistenza):

L = Fx sin + Fz cos
D = Fx cos + Fz sin

Ovviamente queste forze dipendono dalla forma del corpo, dalla sua posizione rispetto alla corrente
e dal regime del campo di moto [che dipende dalla velocit, dimensioni del corpo e dall'ambiente di
volo (quota dellatmosfera che determina p, , )].
Si preferisce usare una rappresentazione adimensionale di queste forze e del momento; ne
discendono i coefficienti aerodinamici che dipenderanno da altri numeri dimensionali [angolo
dattacco, numeri di Reynolds, Mach] :

Aero_APP_a.docx

23/01/2009

Pagina |APP. 4

C.GOLIA: Aerodinamica 1

Coefficiente di Portanza:

CL

Coefficiente di Resistenza:

CD

L
L
=
V2 S q S

D
D
=
V2 S q S

CM o

Coefficiente di Momento (b.d.a):

x cp c =

Posizione del Centro di Pressione:

Mo
Mo
=
2
V S c q S c

CM o
CL

In estrema sintesi, per la determinazione dei coefficienti aerodinamici si devono effettuare le


seguenti integrazioni che si derivano facilmente dalle formule sopra date:

L
F
F
= x sin + z cos = sin
c p n x + c f t x dS + cos
c p n z + c f t z dS
S

q S
q S
q S
D
F
F
CD
= + x cos + z sin = cos
c p n x + c f t x dS + sin
c p n z + c f t z dS
S

q S
q S
q S
Mo
C Mo
x c p n z + c f t z dS
= z c p n x + c f t x dS
S

q c S S
CL

Suggerimenti per la scrittura del codice


Supponiamo un codice di calcolo in cui i dati vengono letti da un file esterno che fornisce:
i numeri di punti sul dorso (Nd) e sul ventre (Nv)
e successivamente le ascisse del punto, la velocit e il coefficiente di attrito locale:
do i = 1, Nd
xd(i) zd(i) vd(i) cfd(i)

enddo
do j = 1, Nv
xv(i) zv(i) vv(i)

enddo
dove:

cfv(i)

xd(i), zd(i), vd(i), cfd(i) sono rispettivamente le coordinate x e z del punto e la velocit
ed il coefficiente di attrito sul dorso,
xv(i), zv(i), vv(i), cfv(i) sono rispettivamente le coordinate x e z del punto e la velocit
ed il coefficiente di attrito sul ventre.
Ovviamente i coefficienti di pressione sono ricavabili immediatamente dalle velocit superficiali
dalle relazioni:
cpd(i) =1- vd(i)2,

Aero_APP_a.docx

cpv(i) =1- vv(i)2

23/01/2009

Pagina |APP. 5

C.GOLIA: Aerodinamica 1

Riferendoci alla figura:


ds

ds

nz
i+1

i+1

zi+1

zi+1
nx

zi

zi

xi

xi

xi+1

xi+1

facile riscontrare che valgono le seguenti relazioni:


n x = sin ; n z = cos ; x = cos ; z = sin ; tan =

z z (i + 1) z (i )

x x (i + 1) x (i )

e che inoltre, volendo effettuare gli integrali nella sola variabile "x":
ds =

z
dx
sin
; dz = ds sin =
dx = tan dx =
dx
cos
cos
x

da cui:
n x ds = sin ds = tan dx ; x ds = cos ds = dx ; n z ds = cos ds = d ; z ds = sin ds = tan dx

in questo modo le formule di integrazione diventano:


1
C p, dorso + C p, ventre dx +
c
0
c

C FX =

1
z
C p, dorso
c
x
0

CM o =

1 0
= 2
c c

C p, ventre
dorso

z
x

+ C f , ventre
dorso

dx +

ventre

z
x

(C

f , dorso

z
x


dx

ventre

+ C f , ventre ) dx

z ( p n x + t x ) x ( p n z + t z ) dS =
c

z
C f , dorso

(C p,dorso C p, ventre ) x dx

f , dorso

C FZ =

z
C p, dorso

dorso

+ C f , dorso z dorso dx +

C
0

p, ventre

x dx +

ventre

+ C f , ventre z ventre dx

+ C f , ventre
dorso

z
x

ventre

z
x

ed quindi:

C L = C FX sin + C Fz cos
Aero_APP_a.docx

23/01/2009

Pagina |APP. 6

C.GOLIA: Aerodinamica 1

CD =

C FX cos + C Fz sin

L'integrazione pu effettuarsi, in prima


battuta, con la semplicissima regola del
trapezio.

f(x)

f ( x i ) + f ( x i +1 )
( x i +1 x i )
2

f(xi+1)

Per ogni stazione:


x i +1

Int i

xi

x i +1

f ( x i +1 ) + f ( x i )
(x i +1 x1 )
f (x ) dx
2

f (x) dx

f(xi)

xi

l'integrale totale (se N il numero di


punti) sar quindi:

N 1

f ( x ) dx =

Int

xi

i =1

xi+1

! ! ATTENZIONE ! !
Quanto segue una serie di considerazioni primordiali su come si
scrive un codice di calcolo in FORTRAN.
Quanto detto in forma arcaica e per niente ottimizzata.
Se ne sconsiglia la lettura
a quanti hanno esperienza nella programmazione FORTRAN

Facciamo riferimento al FORTRAN in formato fisso (contrapposto al formato libero disponibile


negli ultimi compilatori). In questo formato ogni linea di programma divisa in quattro sezioni.

Le colonne da 1 a 5 sono usate per labels di riferimento (per GOTO, o per FORMATS).
Una C nella prima colonna, far ignorare tutto quanto segue nella riga; questo fatto sar
quindi usato per inserire commenti.
Una qualsiasi lettera nella 6.sta colonna collegher quanto scritto alla riga precedente (i.e.
continuazione).
Gli statements di istruzione devono essere compresi tra la 7ma e la 72.ma colonna.
Tutto quanto compreso dalla 73.ma posizione in poi sar ignorato.

L'uso di un compilatore moderno faciliter il riconoscimento delle quattro zone, in quanto colorer
differentemente quanto ivi inserito. Inoltre tutte le funzioni interne del linguaggio (nomi riservati)
saranno colorati in un modo diverso dagli statements.
Il linguaggio FORTRAN ignora la differenza tra lettere maiuscole e quelle minuscole: per cui le
variabili ICAT, icat, Icat, iCat, ecc saranno considerati come simili.
E' da dire che il codice che stiamo considerando , in effetti, molto semplice, ma approfittiamo di
questa occasione per illustrare l'uso di particolari tecniche (COMMON, SUBROUTINES,
FUNCTIONS, ecc), che saranno usate quindi ad libitum al solo scopo di rendere lo studente
Aero_APP_a.docx

23/01/2009

Pagina |APP. 7

C.GOLIA: Aerodinamica 1

familiare al loro utilizzo [questo causer gonfiamento e complicazione, non necessario, del
programma].
Un programma FORTRAN inizia con una riga del tipo "PROGRAM XYZ" e finisce con una riga
"END"
In genere la sua struttura la seguente:
subito dopo la prima riga occorre mettere le dichiarazioni (singola/doppia precisione, variabili
reali, variabili interi, variabili caratteri, variabili logiche, aree comuni, vettori, matrici, ecc)
(capitolo 0)
dopo mettere gli statement di esecuzione che, in via generale, comprendono una fase di lettura
(input) di informazioni (capitolo 1), una fase di elaborazione delle informazioni (capitolo 2),
ed una fase di scrittura (output) dei risultati (capitolo3).
Anche se non necessario, nello specifico caso usiamo delle subroutine per i vari capitoli.
123456789012345678901234567890123456789012345678901234567890012
3456789012
program AEROFORCES
c-----capitolo 0: dichiarazioni
inserire qui le vostre dichiarazioni

c------capitolo 1
call reading
c------capitolo 2
call calcola
c------capitolo 3
call printout
c------fine
stop
end

Capitolo.0...DICHIARAZIONI
Una variabile se non dichiarata IMPLICITAMENTE considerata dal FORTRAN come
intera se inizia con una lettera che va da I ad N,
reale, a singola precisione, se la variabile inizia con una lettera che va da A ad H ovvero da
O a Z.
Per cui la variabile Icat sar considerata con intera, la Ciat come reale a precisione singola.
Se si volesse la Icat come reale occorrer inserire lo statement:
REAL Icat
analogamente se si volesse la variabile Ciat come intera occorrer inserire lo statement:
INTEGER Ciat
Vettori e matrici devono essere specificati nelle DIMENSION. Nello specifico preferiamo
specificarli nelle aree COMMON etichettate. Nota abbiamo separato le COMMON di variabili
intere da quelle contenenti variabili reali.
Aero_APP_a.docx

23/01/2009

Pagina |APP. 8

C.GOLIA: Aerodinamica 1

Questo non necessario se si usa precisione singola, ma consigliabile/necessario se si usa


precisione doppia.
NOTA: Nella fattispecie, anche se non ve ne bisogno, si usa precisione doppia in modo
implicito (cosa categoricamente sconsigliata da tutti i manuali di programmazione); luso
della doppia precisione invero raccomandato qualora si devono fare calcoli di tipo massivo
(i.e. se, in genere, si devono risolvere sistemi con dimensioni maggiori di 50 ovvero si
devono usare algoritmi iterativi pesanti).
In conclusione il capitolo 0 potrebbe essere come segue:
12345678901234567890123456789012345678901234567890123456789012
c-----capitolo 0: dichiarazioni
implicit double precision (a-h,o-z)
common /main1/ nd,nv,alfa
common /main2/ xd(401),zd(401),vd(401),cpd(401),cfd(401)
& xv(401),zv(404),vv(401),cpv(401),cfv(401),cf(401)

Capitolo.1...LETTURA DATI
Nello specifico i dati saranno letti da un file esterno. A tale scopo si usa una SUBROUTINE
chiamata READING, che comunica alle altre subroutine, tutti i dati tramite le aree COMMON.
Da notare che occorre mantenere la doppia precisione implicita, ed occorre specificare che le
variabili FILEIN e FILEHEAD sono delle stringhe di caratteri.
Nel seguito il nome del file da leggere viene richiesto su video (unit *), e si dovr immettere da
tastiera (unit *).
Dopo di che si apre una unit di lettura (nella fattispecie 1), si legge quanto dovuto, dopo di che la si
chiude.
Nota si usa una funzione PAUSE che blocca la esecuzione, questa continuer dopo che si preme il
tasto della tastiera indicato sullo schermo. L'uso della pause pu essere importante nella fase di
debugging del programma, nella quale si fanno delle stampe per verificare la correttezza
dell'esecuzione di casi extra-semplici.
In conclusione il capitolo 1 dovrebbe contenere una SUBROUTINE come quella che segue
SUBROUTINE READING
implicit double precision (a-h,o-z)
character*64 filein, filehead
common /main1/ nd,nv,alfa
common /main2/ xd(401),zd(401),vd(401),cpd(401),cfd(401),
& xv(401),zv(404),vv(401),cpv(401),cfv(401),cp(401),cf(401)
common/filenames/ filein,filehead
c.....leggi dati da file esterno
print*,' Inputta percorso e nome file di uscita'
read*, filein
open(1,file=filein,status='unknown')
c.....leggi/stampa titolo del file
read (1,'(a)') filehead
print*, ' '
write(*,'(a)') filehead
Aero_APP_a.docx

23/01/2009

Pagina |APP. 9

C.GOLIA: Aerodinamica 1

c.....leggi numeri di punti (sul dorso e sul ventre) et angolo alfa


READ(1,*) np,nv, alfa
c
print*,np,nv,alfar,alfa
c.....leggi dati sul dorso
do
i=1,np
read(1,*) xd(i),zd(i),vd(i),cfd(i)
print*,i,xd(i),zd(i),vd(i),cfd(i)
end do
print*,' sopra i dati ventre dorso'
pause
c.....leggi dati sul ventre
do
i=1,nv
read(1,*) xv(i),zv(i),vv(i),cfv(i)
print*,i,xv(i),zv(i),vv(i),cfv(i)
end do
print*,' sopra i dati sul ventre'
close(1)
RETURN
END
c================fine capitolo di lettura
dati========================
Capitolo 2: questa fase contiene le fasi di calcolo.
Nella fattispecie si fatta la scelta (pessima!) di mettere tutti i calcoli in una SUBROUTINE
SUBROUTINE CALCOLA
implicit double precision (a-h,o-z)
common /main1/ nd,nv,alfar,alfa
common /main2/ xd(401),zd(401),vd(401),cpd(401),cfd(401),
& xv(401),zv(404),vv(401),cpv(401),cfv(401),cp(401),cf(401)
common/prnt/CL,CD,CM
c
pig
= DATAN(1.d0)*4.
Alfar
= alfa*pig/180
print*, 'angolo di attacco (in radiante)=', alfar
print*, 'angolo di attacco (in gradi )=', alfa
pause
c
c....converti velocitat in cp:
do i=1,nd
cpd(i)=
1.-vd(i)*vd(i)
end do
c
do i=1,nv
cpv(i)=
1.-vv(i)*vv(i)
end do
c
xo=
xd(1)
Aero_APP_a.docx

23/01/2009

Pagina |APP. 10

C.GOLIA: Aerodinamica 1

zo=
zd(1)
corda=
xd(np) - xd(1)
c.....inizializza
Fzd=
0.
Fxd=
0.
CMod=
0.
Fzv=
0.
Fxv=
0.
CMov=
0.
c:::::::::::::::::::::DORSO:::::::::::::::::::
print*,' valori medi i dati dorso: dzdx,x,z,cp,cf'
do i=1,nd-1
dxd=
xd(i+1)-xd(i)
dzd=
zd(i+1)-zd(i)
xmd=
DMEDIA(xd(i+1),x(i))
zmd=
DMEDIA(zd(i+1),z(i))
cpdm=
DMEDIA (cpd(i+1),cpd(i))
cfdm=
DMEDIA (cfd(i+1),cfd(i))
dzdxd=
dzd/dxd
c
Fzd= Fzd +(-cpdm + cfdm*dzdxz)*dxd/corda
Fxd= Fxd +(+cpdm*dzdxd + cfdm)*dxd/corda
CModp= CModp + (cpdm*(xmd + zmd*dzdxd)+
&
cfdm*(zmd - xmd*dzdxd))*dxd/corda/corda
end do
c
pause
C::::::::::::::::::::VENTRE:::::::::::::::
do i=1,nv-1
dxv=
xv(i+1)-xv(i)
dzv=
zv(i+1)-zv(i)
xmv=
DMEDIA(xv(i),xv(i+1))
zmv=
DMEDIA(zv(i),zv(i+1))
cpvm=
DMEDIA(cpv(i+1),cpv(i))
cfvm=
DMEDIA(cfv(i+1),cfv(i))
dzdxv=
dzv/dxv
c
Fzv=
Fzv + (cpvm+ cfvm*dzdxv)*dxv/corda
c
Fxv=
Fxv +(- cpvm*dzdxv + cfvm)*dxv/corda
c
CMovp= CMovp (cpvm*(xmv+zmv*dzdxv)+
&
cfvm*(zmv-xmv*dzdxv))dxv/corda/corda
end do
c------componi le forze
Fx=
Fxd+Fxv
Fz=
Fzd+Fzv
CL=
-Fx*sin(alfar)+Fz*cos(alfar)
CD=
Fx*cos(alfar)+Fz*sin(alfar)
Aero_APP_a.docx

23/01/2009

Pagina |APP. 11

C.GOLIA: Aerodinamica 1

c
RETURN
END
c============fine calcoli==================
Capitolo 3: Outputs
L'output di stampa [su video (*) e su file (5)] viene realizzato (pessimamente) mediante questa
subroutine:
SUBROUTINE PRINTOUT
implicit double precision (a-h,o-z)
character*64 filein, filehead, fileout
common/filenames/ filein,filehead
common/prnt/CL,CD,CM
c
print*,' vuoi output su file ? (0=NO) (1=SI)'
read*, intprint
if(intprint .eq. 1) then
c
print*,' Inputta percorso e nome file di uscita dati es. dati.txt'
read*, fileout
open(5,file=fileout,status='unknown')
c
write(5,'(a)') 'file di lettura: ','filein'
write(5,'(a)') 'intestazione file: ','filehead'
write(5,1000) np,nv,alfa
1000 FORMAT(1x,'np = ',I3,1x,' nv = ',I3,2x,' alfa = ',f7.3)
write(5,*)' '
write(5,*)' coefficiente di portanza =', CL
write(5,*)' '
write(5,*)'coeff.resist. =', CD,CDd,CDv
write(5,*)' '
write(5,*)'coeff.mom.(bda)=', CMo,CMod,CMov
write(5,*)' '
write(5,*)'xcp/c= ', CMo/CL
close(5)
c
end if
c
write(*,'(a)') 'file di lettura: ','filein'
write(*,'(a)') 'intestazione file: ','filehead'
write(*,1000) np,nv,alfa
write(*,*)' '
write(*,*)' coefficiente di portanza =', CL
write(*,*)' '
write(*,*)'coeff.resist. =', CD,CDd,CDv
write(*,*)' '
write(*,*)'coeff.mom.(bda)=', CMo,CMod,CMov
Aero_APP_a.docx

23/01/2009

Pagina |APP. 12

C.GOLIA: Aerodinamica 1

write(*,*)' '
write(*,*)'xcp/c= ', CMo/CL
RETURN
END
c=======fine capitolo 3==================
Per ragioni squallidamente dimostrative si fa (squallido) uso di una funzione esterna che fa la media
di due costanti:
c========== funzione MEDIA=========
FUNCTION DMEDIA(f1,f2)
implicit double precision (a-h,o-z)
DMEDIA= (f1+f2)/2.d0
RETURN
END
c==== fine funzione MEDIA========
Ne approfittiamo per chiederci:
perch la funzione dichiarata DMEDIA invece che MEDIA?
ATTENZIONE
Quanto riportato in grassetto pu essere copiato in un listato di programma FORTRAN con
copia/incolla.
Ma bada che:
il FORTRAN accetta file text e non doc!
vi sono nascosti degli errori (alcuni diabolicamente voluti altri sciaguratamente presenti) che il
vostro compilatore dovrebbe rilevarvi,
cos avrete la possibilit di esercitarVi al debugging del codice, i.e. a trovare gli errori ed a
correggerli (niente di pi istruttivo il capire gli errori che si fanno!)
Buon lavoro

Dopo che il programma funziona ricordate di:


testarlo
riscriverlo in modo semplice e pulito, eliminando tutte le astrusit messe soltanto per
dimostrazione
Il testing (validazione) di un codice fondamentale per il suo uso professionale.
Per il testing si usano diverse tecniche (alternative e/o consecutive):
run di casi semplici per cui sono evidenti soluzioni elementari algebriche, che vengono
concepiti in modo da isolare logicamente alcune particolarit (geometriche ovvero
qualitative)
re-run di casi complicati di cui si ha soluzione certa, per confrontarne i dati.
Nel primo caso potrebbe essere di utilit considerare un file dati molto semplice a 5+5 punti,
facilmente modificabile, come quello che segue:
Aero_APP_a.docx

23/01/2009

Pagina |APP. 13

C.GOLIA: Aerodinamica 1

file: aeroforces_valid_01.dat
file di validazione del codice aeroforces : lastra piana CL=1, CD=2 ?
5
5
0.
0.
0.
1.
1.
0.25 0.
1.
1.
0.5 0.
1.
1.
0.75 0.
1.
1.
1.0 0.
1.
1.
0.
0.
0.
1.
0.25 0.
0.
1.
0.5 0.
0.
1.
0.75 0.
0.
1.
1.0 0.
0.
1.
Secondo Voi,
questo file cosa rappresenta?
usando il cervello corretto prevedere CL=1, CD=2?
Provate ad usare il vostro codice per vedere cosa esce per CL e CD!
Cos avrete fatto un primo passo di validazione!
Sbizzarritevi a creare, in modo intelligente, altri casi che significativamente possono testare tutte le
particolarit del vostro codice.
Nel secondo caso potrete modificare il file di cui
sopra per simulare il caso di un cilindro con
circolazione la cui velocit periferica sia
[cap.2.3.5.1]:
V= 2 sin() + K/2

cf=0.

V=1

Per cui si dovrebbe verificare:


CL=2 k

CD=0

Provate a fare questa validazione!


D=1

Aero_APP_a.docx

23/01/2009

Pagina |APP. 14

C.GOLIA: Aerodinamica 1

Appendice 3
Profili Alari
NACA-0006
NACA-0009
NACA-0012
NACA-2412
NACA-4412
NACA-23012
NACA-651-012
GA(W)-1

Aero_APP_a.docx

23/01/2009

Pagina |APP. 15

C.GOLIA: Aerodinamica 1

Aero_APP_a.docx

23/01/2009

Paginaa |APP. 16

C.GOLIA: Aeerodinamica 1

Naca 0006

Aero
o_APP_a.docx

23/01/2009
9

Pagina |APP. 17

C.GOLIA: Aerodinamica 1

Aero_APP_a.docx

23/01/2009

Paginaa |APP. 18

C.GOLIA: Aeerodinamica 1

Nacaa 0009

Aero
o_APP_a.docx

23/01/2009
9

Paginaa |APP. 19

C.GOLIA: Aeerodinamica 1

Naca 00012

Aero
o_APP_a.docx

23/01/2009
9

Paginaa |APP. 20

C.GOLIA: Aeerodinamica 1

Nacca 2412

Aero
o_APP_a.docx

23/01/2009
9

Paginaa |APP. 21

C.GOLIA: Aeerodinamica 1

Naca 44412

Aero
o_APP_a.docx

23/01/2009
9

Paginaa |APP. 22

C.GOLIA: Aeerodinamica 1

Nacaa 23012

Aero
o_APP_a.docx

23/01/2009
9

Pagina |APP. 23

C.GOLIA: Aerodinamica 1

Aero_APP_a.docx

23/01/2009

Paginaa |APP. 24

C.GOLIA: Aeerodinamica 1

Nacca 651-012

Aero
o_APP_a.docx

23/01/2009
9

Paginaa |APP. 25

C.GOLIA: Aeerodinamica 1

GA(W)-1

Aero
o_APP_a.docx

23/01/2009
9

Pagina |APP. 26

C.GOLIA: Aerodinamica 1

Appendice 4
Le equazioni del moto di corpi rigidi in un fluido
Consideriamo un corpo in moto in un fluido viscoso, e che la estensione della sua traiettoria risulti
trascurabile rispetto al raggio della Terra. In tale caso si potr assumere la terra piatta e che quindi il
vettore gravit sia costante (non cambia intensit e direzione) agendo sempre secondo lasse
verticale (in un riferimento cartesiano).
Per semplificazioni didattiche considereremo campi di moto piani, e usiamo un riferimento
cartesiano con gli assi x e z nel piano del moto.
Non considereremo quindi le componenti (delle forze, delle accelerazioni, delle velocit e degli
spostamenti) nella direzione (y) normale a tale piano.
Ovviamente quanto detto sar facilmente estensibile a moti non planari, con opportune
implementazioni che non altereranno per i concetti fondamenti per le equazioni alla traslazione,
ma che richiederanno una dinamica pi complicata per le equazioni alla rotazione.
Considereremo inoltre corpi rigidi, in tal caso le equazioni del moto del baricentro del corpo e
quelle del moto attorno al baricentro (rotazione) saranno indipendenti.
Nel caso di corpi a massa variabile (ma configurazione
rigida) faremo ulteriormente lipotesi semplificativa che il I CG = m A 2 (A costante, m variabile)
momento dinerzia ICG attorno al baricentro (CG) sia
rappresentabile mediante un raggio di girazione costante .
E abbastanza ovvio che conviene porre lorigine degli assi nel baricentro del corpo.
Per lorientazione degli assi (fermo restando che lasse delle y costante e normale (entrante) al
piano delle figure che elaboreremo, abbiamo delle scelte (tutti riferimenti orto-normali):
Assi vento (s,n)

Assi terra (x,z)

In realt se non si considera il moto


attorno al baricentro (dinamica alla
rotazione, i.e. solo il moto del punto
massa) luna scelta equivale alle altre.
Nellaltro caso luso degli assi corpo
porta a semplificazioni, anche notevoli, in
quanto abbastanza ovvio che
preferibile scegliere gli assi principali
dinerzia, rispetto ai quali il tensore
dinerzia diagonale.

Assi corpo (,)


n

B
l

MCG
V

x
D

Gli angoli sono:

mg

= angolo dattacco;
= angolo di assetto;
=angolo di spinta
MCG il momento delle forze aerodinamiche rispetto al baricentro

LE EQUAZIONI DEL MOTO RISPETTO AGLI ASSI VENTO [VARIABILI


INDIPENDENTI V, ]:
Aero_APP_a.docx

23/01/2009

Pagina |APP. 27

C.GOLIA: Aerodinamica 1

lungo la traiettoria (asse s):


( m + m app )

dV
= S cos( + ) D (m g B) sin
dt

lungo la normale alla traiettoria (asse n):


( m + m app ) V

d
= S sin( + ) + L (m g B) cos
dt
d
d
rot
( m + m app
) = l S sin + M CG

dt
dt

equilibrio alla rotazione (nel piano del moto):

A2

equazione dello spazio percorso:

ds
=V
dt
dx
= V cos
dt

equazione della traiettoria:

dz
= V sin
dt

NOTA: sviluppando le derivate temporali dell'equazione alla rotazione si ricava:


rot
A 2 ( m + m app
)

d2
dt 2

+ A2

rot
d( m + m app
) d
dt = l S sin + M CG
dt

compare cos un termine proporzionale alla velocit di rotazione ed alla velocit di


variazione della massa (termine negativo, pari alla portata di propellente) che genera
uno smorzamento alla rotazione (fenomeno del Jet damping)

LE EQUAZIONI DEL MOTO RISPETTO AGLI ASSI TERRA [VARIABILI


INDIPENDENTI U,W: U=VCOS , W=VSIN ] SONO:
( m + m app )

lungo la orizzontale (asse x):


lungo la verticale (asse z):
angolo di assetto:
equilibrio alla rotazione:
equazione dello spazio percorso:
equazione della traiettoria:

du
= S cos( + + ) D cos L sin
dt

dw
= S sin( + + ) D sin + L cos (mg B)
dt
w
= tan 1
u
d
rot d
A 2 m + m app
= l S sin + M CG
dt
dt
ds
= V = u2 + w2
dt
dx
dz
= u = V cos ;
= w = V sin
dt
dt

( m + m app )

LE EQUAZIONI DEL MOTO RISPETTO AGLI ASSI CORPO (,) [VARIABILI


INDIPENDENTI V,]:

lungo lasse ):
lungo lasse ):
equilibrio alla rotazione:
Aero_APP_a.docx

(m + m app ) d[Vdtcos ] = S cos D cos + L sin (m g B) sin( + )


]
(m + m app ) d[Vsin
= S sin + D sin + L cos (m g B) cos( + )
dt
A2

d
rot d
m + m app
= l S sin + M CG
dt
dt

23/01/2009

Pagina |APP. 28

C.GOLIA: Aerodinamica 1

ds
=V
dt

equazione dello spazio percorso:

dx
= V cos
dt

equazione della traiettoria:

dz
= Vsin
dt

EQUAZIONE DELL'ENERGIA (TERMICA DEL CORPO)


.
m c equv
corpo

dT
equv. dm
= Tscarico c scarico
+ S convettiva
h (T To ) + S irradiante
o T 4 + D V
corpo
corpo
dt
dt

dove:
T
= temperatura media del corpo
h
= coefficiente globale di scambio termico (funzione della forma, del regime di moto
e quindi
dei numeri di Re, Gr, Mach)
cequiv = calori specifici equivalenti, rispettivamente per il corpo e per i gas di scarico
o
= 5.67 108 [W/(m2K4)]
costante di Stefan-Boltzman

= coefficiente di emissione del corpo (=1 per corpo nero)


D
= resistenza aerodinamica
V
= modulo della velocit
Per lintegrazione del sistema di equazioni differenziali occorre, ovviamente, fornire le equazioni
ausiliarie:
Portanza:
L=0.5 V2 A CL
Resistenza:
L=0.5 V2 A CD
Momento aerodinamico:
MCG=0.5 V2 A L CMCG
Forma di galleggiamento: B= fluido Volumecorpo ggravit
Massa apparente alla traslazione: mapp = K fluido Volumecorpo
(K costante che dipende dalla forma e dall'asse di traslazione)
Massa apparente alla rotazione: mrotapp = Krot fluido Volumecorpo
(Krot costante che dipende dalla forma e dall'asse di rotazione)

Nota: le masse apparenti e la forza di galleggiamento sono in genere trascurabili se


la densit del corpo molto maggiore di quella del fluido in cui si muove
I valori dei coefficienti aerodinamici:
CL, CD e CM = funzioni di (, Re, Mach, eventualmente Fr)
Le leggi di controllo (variazioni con il tempo):
=(t) ;

S=S(t) ;

m=m(t)

Nota che nel caso di propulsione a razzo si verifica:

Aero_APP_a.docx

23/01/2009

Pagina |APP. 29

C.GOLIA: Aerodinamica 1

S = m p c jet + A exit p jet p

m p = portata gas di scarico (possibile funzione del tempo, di solito costante in propulsione solida)
c jet = velocit di scarico
t

in tale caso sar

m = m iniziale - m p dt
0

I parametri termodinamici del fluido (ambiente):


=(z)

p=p(z)

T=T(z)

Risoluzione delle equazioni


Una volta assegnati i valori iniziali le equazioni possono essere agevolmente integrate
numericamente con una qualsiasi routine (ad es. RungeKutta del 4 ordine).

Esercizi che consentono una soluzione analitica

Esercizio A.4. 1
Un miscelatore composto da due coppe (semi-sfere) di diametro
10 cm, poste ad una distanza di 0.6 m dall'asse di rotazione.
Stimare la potenza necessaria per miscelare una sostanza acquosa,
con una velocit di rotazione di 60 rpm

Esercizio A. 4. 2
Un miscelatore composto da due semi-tubi di diametro 10 cm e
lunghi 30 cm, posti ad una distanza di 0.6 m dall'asse di rotazione.
Stimare la potenza necessaria per miscelare una sostanza acquosa,
con una velocit di rotazione di 60 rpm

Esercizio A. 4. 3
Si vuole dimensionare un paracadute capace di rallentare un corpo del peso di 120 kg ad una
velocit di discesa terminale di 5 m/s.
Determinare il diametro in condizioni di atmosfera standard.

Esercizio A. 4. 4
Un viscosimetro basato sul fatto che il coefficiente di resistenza di una sfera, per Re<1 ,
CD=24/ReD .

Aero_APP_a.docx

23/01/2009

Pagina |APP. 30

C.GOLIA: Aerodinamica 1

Una sfera di acciaio (sfera = 7800 kg/m3) con diametro D = 6 mm, lasciata cadere in un olio
lubrificante (olio SAE 30: olio = 933 kg/m3), ha una velocit terminale di 70 cm/s ad una certa
temperatura.
Determinare la viscosit dinamica () dell'olio a quella temperatura.
Verificare se l'ipotesi ReD<1 verificata.
SE l'ipotesi non fosse verificata cosa fareste per misuare la ?
Esercizio A. 4. 5
Un anemometro composto da due coppe (semi-sfere) aventi diametro di 5 cm, poste a 15 cm di
distanza da un asse di rotazione collegato ad una generatore elettrico a tensione costante (12 Volts)
che opera con un rendimento di 0.85.
Calcolare la curva caratteristica V-Ampere

Esercizio A.4. 6
Un fumaiolo di forma cilindrica , diametro 1 m , altezza 25 m, investito da un vento uniforme di
50 km/h (assenza di turbolenza e raffiche).
Assumendo condizioni di atmosfera standard e trascurando gli effetti di bordo, determinare:
La forza resistente,
Il momento flettente alla base,
La frequenza (rad/s) delle vibrazioni indotte dal vento sul fumaiolo.
Esercizio A. 4. 7
Su di un'isola deserta un discendente di R.Crusoe, con i potenti mezzi a
sua disposizione, costruisce un rudimentale generatore eolico per
alimentare l'impianto stereo che riuscito a salvare dal naufragio della
sua nave.
Ha trovato un cassa rettangolare (lato 0.80 m, H=1.20 m), ed ha
pensato di tagliarla diagonalmente, e di accoppiare, con un
moltiplicatore, i due pezzi ad un asse ruotante verticale posto
sull'alternatore che ha recuperato dal motore della scialuppa di salvataggio (ovviamente naufragata).
Assumendo un rendimento globale meccanico pari a 0.8, quanto deve essere la velocit del vento
per poter alimentare lo stereo al massimo (150 w) della potenza per ascoltare il suo CD preferito,
fortunatamente trovato sulla spiaggia?
In tali condizioni a che velocit gira la macchina?
Quale deve essere il rapporto di moltiplicazione (stabilizzato) se l'alternatore (a 12Volts) ha una
caratteristica Ampere=.010 x Nrpm

Esercizio A. 4. 8
Un aereo ultra leggero acquistato in USA, ha le seguenti caratteristiche:
massa a vuoto =3000 lb , superficie alare 300 ft2 , velocit di decollo 100 ft/s , potenza installata
45 Hp
Polare sperimentale: CL= 0.35 (0.2 +1) CD=0.008 (2+1)

( in gradi)

Con due persone a bordo (160 kg) e pieno di carburante (30 kg) l'aereo riesce a decollare?
Quanto vale la potenza minima al decollo?
Aero_APP_a.docx

23/01/2009

Pagina |APP. 31

C.GOLIA: Aerodinamica 1

Esercizio A. 4. 9
La vostra automobile ha un peso a vuoto di 800 kg, un'area frontale di 1.8 m2 , un coefficiente di
resistenza (finestrini e prese d'aria chiusi) Cx=0.5 ed un coefficiente di attrito al rotolamento di
0.015 [(forza resistente)/(forza peso)]
La potenza massima del motore 110 HP, il consumo (medio) 300 gr/(HP ora), rendimento di
trasmissione 0.85.
In condizioni standard ( 2 passeggeri + 40 litri di combustibile), e senza aria condizionata:
determinare la velocit massima (supponendo che il rapporto al ponte ottimale)
determinare il consumo di carburante (litri/100km) per la crociera (in piano) , a 70 km/h, a 130
km/h ed alla velocit massima
quale la velocit per cui la resistenza aerodinamica pari a quella di attrito al rotolamento
Quindi:
ripetere l'analisi in condizione di massimo carico (5 x (passeggeri +15 kg di bagaglio), pieno di
carburante=80 litri)
Quindi bis:
ripetere le due analisi su di un falsopiano in salita
10%.

Esercizio A. 4. 10
600 ton.

Progetto preliminare delle superfici alari di un aliscafo.


Dati di progetto:
8
12
Velocit di splash off 15 nodi
velocit di crociera =
40 nodi.
peso totale 600 tonnellate
larghezza 7 metri
Determinare le potenze necessarie in condizioni di splash-off e quelle di crociera, determinare le
superfici aerodinamiche, i profili, i calettamenti e discutere i criteri per la scelta del/dei flap di
controllo
Esercizio A. 4. 11
Una schiera di palette di un compressore assiale usa profili NACA 66-212 con una corda di 10 cm,
ed un passo pari a 5 cm.
Le palette sono poste a =20 e la schiera investita da una corrente con velocit V=400 m/s,
1=30.
Assumendo Rrif=0.8 m e che tali condizioni si realizzano con una velocit angolare =250 rad/s,
determinare il momento torcente, la potenza e la spinta assiale sulla schiera usando la polare del
profilo.

Aero_APP_a.docx

23/01/2009

Pagina |APP. 32

C.GOLIA: Aerodinamica 1

Esercizi che richiedono una soluzione numerica


Esercizio A. 4. 12
Un corpo di forma sferica, densit 8000 kg/m3, volume 0.1 m3, area frontale 0.25 m2, CD=1.1
accelerato in acqua ad una velocit iniziale di 13 m/s.
Determina la traiettoria.
Esercizio A. 4. 13
Un rais di un paese sottosviluppato vuole
acquistare un cannone gasdinamico capace di
sparare proiettili di 30 cm di diametro e peso
fino a 200 kg ad una velocit iniziale di Mach
= 4, i.e. Vo = 4 RT
Supponendo che il peso del proiettile sia 150
kg , che non vi sia portanza, e che il
coefficiente di resistenza del proiettile vari
con Mach secondo la formula:

Vo
zmax
o

x
s

M+6
C D = 0.04 + 250 M 2 exp

determinare le gittate e la massima quota (S ed zmax) al variare dell'angolo di alzata o.


Assumere per semplicit atmosfera isoterma [T=288 k], per cui discende che

p
h
=
= exp ,
p0 o
H

dove h l'altezza dal suolo (metri) e per l'atmosfera terrestre H=7050 (metri).
Esercizio A. 4. 14
Un aereo d'attacco al suolo vola orizzontalmente ad una quota 10000 m. con una velocit di 800
km/h, e sgancia una bomba sferica da 300 Kg avente un diametro di 20 cm, ed un CD=0.08.
Assumendo atmosfera isoterma ed assenza
V

di vento, determinare la traiettoria della


traiettoria
bomba (i.e. dove va a sbattere relativamente
L
al punto di sgancio?)

Esercizio A. 4. 15
Il solito rais del problema precedente si
esaltato e vuole costruire un razzo ICBM per
festeggiare il Capodanno lanciando su
un'isola lontana una bomba di carta (sic!).
Il razzo pesa alla partenza, 2 tonnellate il cui
90 % costituito da propellente.
Il propellente solido usa una camera di
combustione ed un ugello che realizza una
velocit di scarico di cjet=3000 m/s,.

mg
D
S

Memo: trascurando la contro-pressione allo


scarico, la spinta del motore a razzo S = cjet (dm/dt).

[di solito in un razzo a propellente solido dm/dt costante dall'accensione allo spegnimento]
Aero_APP_a.docx

23/01/2009

Pagina |APP. 33

C.GOLIA: Aerodinamica 1

Data la rudimentalit della tecnologia disponibile, il razzo segue una traiettoria a gravit, cio una
traiettoria per cui sia portanza nulla e la spinta allineata con la direzione della velocit.
Per questo caso le equazioni generali del moto di possono semplificare:
nella direzione della velocit:

dV
= (S D ) M g sin
dt

nella direzione normale alla traiettoria:

MV

d
= Mg cos
dt

dy
= Vsin
dt

Equazioni della traiettoria:

dx
= V cos
dt

Trascurando l'inerzia alla rotazione, determinare le traiettorie y(t), x(t) , y(x) per diversi valori
dell'angolo di lancio o=80,60,40.
Assumere che
il coefficiente

di

resistenza

del

missile

vari

con

Mach

secondo

la

formula:

M+6
C D = 0.04 + 250 M 2 exp

atmosfera isoterma [T=288 k], per cui discende che

p
h
=
= exp , dove h l'altezza dal
p0 o
H

suolo (metri) e per l'atmosfera terrestre H=7050 (metri).

P.S. non seguite l'esempio e non sparate i botti n a Capodanno, n quando vince il Napoli.

Valori del CD per vari corpi BIDIMENSIONALI semplici (profondit unitaria)

forma del Corpo

Cilindro
105

Cilindro ellittico:
4 104

Rapporti di forma

CD

circolare:

104

1.2

a:b=2:1

0.6
0.46

4:1
Aero_APP_a.docx

Numero di
Reynolds

0.32

105

2.5 104 105


23/01/2009

Pagina |APP. 34

C.GOLIA: Aerodinamica 1

Forme aerodinamiche:

8:1

0.29
0.20

2.5 104
2.5 104

1:2

1.8
0.5

< 5 105
>1 106

c/t=1
1.5
2
3
4
5
6
7
8

quadrati:

Cilindri

120

triangolari:

107
107
107
107
107
107
107
107
107

2.0

3.5 104

3.5 104

1.6

Cilindri

0.35
0.12
0.06
0.04
0.04
0.04
0.045
0.048
0.052

104

2.0

120

104

1.72

90

2.15

104

1.60

104

90

60

Aero_APP_a.docx

23/01/2009

Pagina |APP. 35

C.GOLIA: Aerodinamica 1

104

2.20

60

30

30

Cilindri semi-

1.39

104

1.80

104

1.0

104

tubolari
2.3

104

1.12

104

Valori del CD per corpi TRI-DIMENSIONALI semplici

forma del Corpo

Rapporti di forma

1.1

Cubo:

Coni:

60

Numero di
Reynolds
104

104

0.5

1.7

Emisfere:

Aero_APP_a.docx

CD

104

23/01/2009

Pagina |APP. 36

C.GOLIA: Aerodinamica 1

104

0.4

b/h=1
5
10
20

Piastre rettangolari:
h

104
104
104
104

1.15
1.2
1.3
1.5

104

1.28

Disco:

Cilindri allineati:

h/D=0.5
1
2
4
8

0.050

Fusi: b/h=1
1.5
2
3
4

104

1.15
0.9
0.85
0.87
0.99

104
104
104
104

0.070
0.032
0.030
0.033
0.041

107
107
107
107
107

0.060
0.068
0.078

107
107
107

107
6
7
8

Listato di un codice in FORTRAN che integra un sistema di 4 equazioni differenziali del primo
ordine con un metodo Runge Kutta 4.to ordine
C
C

PROGRAM PROVARK01
demo di un programma di prova tipico per un'integrazione
alla Runge Kutta del 4.to ordine
DIMENSION Y(15),F(15)

c
print*,'****************************************************
**'
print*,'*
print*,'*
print*,'*
print*,'*
Aero_APP_a.docx

Fludodinamica
*'
programma di prova per integrazione ODE
*'
RUNGE KUTTA 4.o ordine
*'
alunno Mormile Luigi a.a. 2000/2001
*'

23/01/2009

Pagina |APP. 37

C.GOLIA: Aerodinamica 1

print*,'****************************************************
**'
C

condizioni iniziali
X=0.0
XLIM=30.0
H=0.1
ISTEP=20
ICOUNT=0
M=0
N=4
Y(1)=0.0
Y(2)=0.0
Y(3)=100.0
Y(4)=100.0
open(1,file='Dati.dat')
print*,' Tempo
x
z
dx/dt
dz/dt '
WRITE(1,1000) X,(Y(I),I=1,N)
WRITE(*,1000) X,(Y(I),I=1,N)
C
inizia l'integrazione
C
verifica se est superato il limite
8
IF (X-XLIM) 6,6,7
C
si incrementa il contatore
6
ICOUNT=ICOUNT+1
9
CALL RUNGE(N,Y,F,X,H,M,K)
GO TO (10,20),K
C
K=1 calcola il valore delle derivate
10
CALL FNC(N,Y,F,X)
C
ritorna a RUNGE
GO TO 9
C
K=2 completato il passo di integrazione
20
CONTINUE
c
verifica se si vuole stampare
IF(ICOUNT/ISTEP*ISTEP.EQ.ICOUNT) THEN
write(1,1000) x,(y(i),i=1,n)
write(*,1000) x,(y(i),i=1,n)
END IF
C
continua integrazione
GOTO 8
CLOSE(1)
7
STOP
1000 FORMAT(1X,F8.2,1x,5(E10.4,1X))
END
C....sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
SUBROUTINE RUNGE(N,Y,F,X,H,M,K)
C
usa Runge-Kutta del 4.to ordine con i coefficienti'd Gill
C
C
integra il sistema di N equazioni ordinarie del prima ordine:
Aero_APP_a.docx

23/01/2009

Pagina |APP. 38

C.GOLIA: Aerodinamica 1

C
C
C

dY(i)/dx=F(i) ; i=1, ... N ; con passo dx=H


M deve essere impostato alla prima chiamata pari a zero
K un interruttore di switch,per K=2 l'integrazione completa
DIMENSION Y(15),F(15),Q(15)
M= M+1
GOTO (1,4,5,3,7), M
1
DO 2 I= 1,N
2
Q(I)= 0.
A= 0.5
GOTO 9
3
A=1.707107
4
X= X + 0.5*H
5
DO 6 I=1,N
Y(I)=Y(I)+A*(F(I)*H-Q(I))
6
Q(I)=2.*A*H *F(I)+(1.0-3.0*A)*Q(I)
A= 0.2928932
GOTO 9
7
DO 8 I=1,N
8
Y(I)=Y(I)+H*F(I)/6.-Q(I)/3.
M=0
K=2
GOTO 10
9
K=1
10
RETURN
END
C.....FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
SUBROUTINE FNC(N,Y,F,X)
DIMENSION Y(15),F(15)
c
Definisce il sistema di 2 equazioni del secondo ordine
c
come un sistema di 4 equazioni del primo ordine
c
Y(1)=x
c
Y(2)=z
dove x l'ascissa, z la profondit
c
Y(3)=u
mentre le u,w sono rispettivamente le
c
Y(4)=w
componenti della velocit lungo x e z
g=9.81
Massa=800.0
Rho=1000.0
A=0.25
CL=0.0
CD=0.01
F(1)= Y(3)
F(2)= Y(4)
F(3)=(-0.5*Rho*A*CD*Y(3)*sqrt(Y(3)**2+Y(4)**2)
&
+0.5*Rho*A*CL*Y(4)*sqrt(Y(3)**2+Y(4)**2))/Massa
F(4)=(-0.5*Rho*A*CD*Y(4)*sqrt(Y(3)**2+Y(4)**2)
&
+0.5*Rho*A*CL*Y(3)*sqrt(Y(3)**2+Y(4)**2))/Massa - g
RETURN
END
Aero_APP_a.docx

23/01/2009

Pagina |APP. 39

C.GOLIA: Aerodinamica 1

C===================================
Esercizio A. 4. 16
capire questo codice cosa sta integrando (back-engineering: a volta serve!)
..
Esercizio A. 4. 17
vedere se il codice sopra riportato vi funziona
Esercizio A. 4. 18
adattare il codice ad un altro problema vedi esercizi da A.4.12 a A.4.15

Aero_APP_a.docx

23/01/2009

C.GOLIA: Aerodinamica
A
1

Pagiina |APP. 400

Consideraa il seguentee file in MA


APLE:

Esercizio A.
A 4. 19
Capire il liistato di cui sopra che problema
p
rissolve

Esercizio A.
A 4. 20
Prova ad inntegrare lo stesso
s
probllema dellessercizio 4.16 con MAP
PLE

..

Aero_APP__a.docx

23
3/01/2009
9

Pagina |APP. 41

C.GOLIA: Aerodinamica 1

Appendice 5
Codice NACAPROF
Il codice NACAPROF genera i dati delle superfici per i profili NACA a 4 e 5 cifre.
Alla partenza il codice chiede limmissione
del numero di nodi: sul ventre Nventre e sul dorso Ndorso, ovviamente il numero di
nodi totali sar pari a Nventre+Ndorso
del codice del profilo NACA (4 o 5 cifre) che viene letto come intero: nacan= abc d e
del percorso e del nome del file di uscita (ad es. n4412.dat)
Sfruttando il fatto che nacan un numero intero (la divisione tra interi genera un intero, si scartano
gli eventuali decimali), con divisioni successive si estraggono i parametri del profilo:

Si tratta di un profilo della famiglia a 5 cifre se


[nacan/1000] > 10
Spessore:
{nacan-1000*[nacan/1000]-100*[nacan/100-10* nacan/1000]}*0.1

Se della famiglia a 4 cifre:

Posizione max camber:


Camber:

Se della famiglia a 5 cifre:


Posizione max camber:
Camber:

[nacan/100-10* nacan/1000]*0.1
[nacan/1000]*0.01

0.2025
2.6595*(0.2025)3

I punti sulla corda sono individuati usando la legge del coseno:

x 1 + cos
=
per = 0,...2 con
c
2

lanomalia equamente ripartita.


Sicch la numerazione dei punti avviene in senso orario:
Inclinazione
Linea media

=dcamber/dx

thick(zz)/c

y/c

camber(zz)/c

Nventre+
Ndorso
x/c

Nventre
1
zz

Linea media

inizia da 1 nel bordo di uscita,

Aero_APP_a.docx

23/01/2009

Pagina |APP. 42

C.GOLIA: Aerodinamica 1

prosegue (sul ventre) fino ad Nventre (nel bordo di uscita) ,


successivamente prosegue sul dorso fino ad arrivare a Ntot=Nventre+Ndorso nuovamente sul
bordo di uscita.

In tale modo si realizza un addensamento dei nodi sui bordi.


Su video appaiono i seguenti dati:
x(i)/c
z(i)/c
....ecc....
dove
alla corda.

csl(i)/c

csl(i)/c

lo sviluppo del profilo a partire dal b.d.u adimensionalizzato rispetto

Nel file di uscita vengono stampati i seguenti dati:


Ntot
x(i)/c
z(i)/c
....ecc....
Il codice genera, nella presente versione, un profilo chiuso: i.e. z(1) = z(Ntot) = 0.0
Nota in genere per molti profili i punti del bordo di uscita sono distinti per il ventre e per il dorso,
per tenere conto dello spessore del lamierino usato per costruire, in pratica, lala.
I dati del profilo vengono generati costruendo prima la linea media, e riportando successivamente
su di essa la distribuzione degli spessori inclinata dellinclinazione locale della linea media.
Per ogni ascissa zz, i dati di spessore, camber ed angolo sono generati dalla
subroutine NACA45 (zz,thick,camber,beta,nacan.tau,epsmax,ptmax)
che accetta in ingresso:
e fornisce in uscita:

zz, nacan,tau,epsmax,ptmax
thick, camber, beta

Ovviamente il codice permette di trattare famiglie diverse da quelle NACA cambiando


semplicemente questa subroutine.

Aero_APP_a.docx

23/01/2009

Pagina |APP. 43

C.GOLIA: Aerodinamica 1

Appendice 6
Codice Pannelli Sorgenti

Nel paragrafo 3.12.3, avevamo


sottolineato che una delle
metodologie pi semplici per
determinare il campo di moto non
portante attorno a corpi simmetrici
(e posti ad angolo dattacco nullo)
di ricorrere ad un metodo a pannelli
lineari con distribuzioni di sorgenti
costanti su ogni pannello.

P(x,y)

pannello j-esimo

o
o
estremi
pannello

o
ni

punti di controllo

pannello i-esimo
A tale scopo si suddivide il
contorno del corpo in N pannelli, che di solito, per successive implementazioni portanti, si fanno
iniziare dal bordo duscita e si numerano in senso orario.

Le N incognite i=dQi/ds (che sono di per s, funzioni Laplaciane) vengono determinate imponendo
che il corpo sia linea di corrente.
In una formulazione alla Neumann, questo viene fatto imponendo lannullamento delle velocit
normali al corpo in N punti di controllo, assunti essere medi degli N pannelli.
n

Ponendo

Vn = V ,n + Vn = U cos i +

N ij

(X i ,Yi )
(X j+1 ,Y

j=1

j+1

ne segue un sistema di equazioni lineari del


tipo: N i j j = b i

Sj

ni

nj

o
(x i ,yi )

Dove:

sj

(X i+1 ,Yi+1 )

R ij

dsj

se i = j
1 / 2

d ln R ji
Ni j = 1
ds j se i j
2
dn i
pannello
j

pannello i-esimo
y

(Xj ,Yj )
pannello j-esimo

b i = U cos i

Nij detto coefficiente di influenza del pannello j sul pannello i e rappresenta la velocit indotta
dal pannello j nel punto di controllo del pannello i e normalmente al pannello stesso,
Rji il raggio vettore dal generico punto del pannello j al punto di controllo del pannello i,
ni la normale al pannello i,
i langolo orientato della normale al pannello i rispetto alla corrente asintotica (asse X).
Una volta risolto il sistema di equazioni lineari per le j , le velocit tangenziali negli N punti di
controllo i sono calcolate tramite la:
n

Vt = V ,t + Vs = V sin i +

Tij

j=1
(i j)

dove Tij che rappresenta il coefficiente di influenza del pannello j sulla velocit tangenziale
del punto di controllo del pannello i dato da:
Aero_APP_a.docx

23/01/2009

Pagina |APP. 44

C.GOLIA: Aerodinamica 1

Tij =

1 ln R ij
ds j
2
s i

Da notare che scomparso il contributo alla velocit tangenziale di un pannello su se stesso. A parte
la prova matematica (3.12.3) , si pu facilmente intuire, da un punto di vista fisico, che un pannello
sorgente emette flusso di volume dalla sua superficie verso l'esterno e verso l'interno del corpo, in
direzione perpendicolare alla tangente al pannello stesso e che quindi il contributo nella direzione
tangenziale nullo.
Una volta calcolate le velocit superficiali, il coefficiente di pressione superficiale, per ogni
pannello, si determina facilmente come:

V
c p,i = 1 i
V

Un codice di calcolo, rudimentalmente semplice, capace di realizzare tale formulazione il


PANSOR
Il codice composto da un main e da 5 subroutines chiamate di seguito dal main.
La subroutine INDATA(N) provvede a leggere o generare i nodi estremi dei pannelli del corpo che
sono conservati nei vettori XP(i) e YP(i), posti nellarea COMMON.
A tal fine chiede un input per tre modalit:
1. lettura da file esterno
in questo caso chiede di immettere il percorso ed il nome del file di input che deve essere
strutturato in modo tale da contenere in prima linea il numero N dei nodi totali (<400) e
successivamente N linee che riportano la X(i) e la Z(i) del i-esimo nodo che rappresenta una
delle estremit dei pannelli
2. generazione automatica di ellissi/cilindro
in questo casi chiede di immettere il rapporto degli assi b/a dellellisse (1 per cilindro) e
successivamente il numero totale dei nodi dei pannelli (<400) i cui nodi vengono generati
con la legge del coseno con anomalie costanti
3. generazione automatica di profili NACA simmetrici
in questo caso chiede di immettere il valore dello spessore percentuale (i.e. 12 per NACA
0012) e quindi in ) e successivamente il numero totale dei nodi dei pannelli (<400) i cui nodi
vengono generati con la legge del coseno con anomalie costanti
La subroutine COEFF rappresenta il cuore del programma in quanto provvede a generare i
coefficienti di influenza Nij e Tij che per ragioni di linguaggio sono contenuti nelle matrici AN(i,j) e
AT(i,j).
Alluopo:
genera i punti di controllo come mezzerie dei pannelli e li conserva nei vettori XC(i), YC(i)
calcola la lunghezza di ogni pannello che viene conservata nel vettore S(i) ed il perimetro
del profilo SUP
calcola i coseni direttori dei versori normali [ DTXY(i,1-2) ] e tangenziali [ DNxy(i,1-2) ] ai
pannelli
(1 componente asse x, 2 componente asse y)
Poich questo codice risolve lequazione di campo moltiplicando entrambe i termini per 2:
2 N i j j = 2 b i

ne risulta, per i termini diagonali delle matrici di influenza:


T(i,i)=0

Aero_APP_a.docx

A(i,i)= * 2 =

23/01/2009

Pagina |APP. 45

C.GOLIA: Aerodinamica 1

Le altre componenti delle matrici di influenza sono calcolate, facendo riferimento alla figura, come
segue:
Si vogliono usare le formule di integrazione delle distribuzioni di sorgenti (2.2.6.1) per le
componenti della velocit indotta in un punto,
u sorg ( x, z) =

1 (x + A / 2)2 + z 2
ln

2 2 (x A / 2 )2 + z 2

w sorg ( x, z ) =

poich tali componenti sono relative ad un


sistema di riferimento solidale al pannello
inducente, le x,z delle formule devono essere le
xq e yq della figura e le u e w delle formule
diventano la Vx e Vy della figura.

zA

tan 1 2
2
2
2
x + z ( A / 2)

Vy

(2.1)

Pannello i

n(j)
Vx

y
xq

t(i)
yq

R ji
DY

Le DX e DY, calcolabili nel sistema assoluto


sono le componenti del vettore Rji che pu
essere proiettato sugli assi locali del pannello j
per ottenere:

x
n(j
)

t(j)

Pannello j

xq = R ji t(j)
yq = R ji n(j)

X
DX

e quindi ( (j) intensit unitaria)

Vx =

(
(

)
)

2
2
1 x q + s( j) / 2 + y q

ln
2 x q s( j) / 2 2 + y q 2

y q s( j)

Vy = tan 1 2
2
2
x q + z q (s( j) / 2)

che sono le velocit (unitarie) indotte dal pannello j nel punto di controllo del pannello i ma
orientate secondo gli assi del pannello j.
Per ottenere le componenti di velocit nelle direzioni tangenziale e normali al pannello i, occorre
ripassare per il sistema assoluto:
prima calcolare la velocit nel sistema assoluto:
V ji,ass=Vx t(j)+Vy n(j)
e proiettare questa sul pannello i :
= V ji,ass n(i)
ovvero:

V ji,tangente al pannelli i = V ji,ass t(i)

AT(i, j) = Vt ,i = Vx [t ( j) t (i)]+ VY n ( j) t (i)


TTIJ
TNIJ

V ji,normale al pannelli i

AN(i, j) Vn , i = Vx [t ( j) n (i)]+ VY n ( j) n (i)


DTIJ
DNIJ

Poich si assume sempre velocit asintotica unitaria il termine noto semplicemente b(i)= - n(i) i
A( I , N+1)
La subroutine assembla il sistema nella matrice aumentata a destra A = [AN(I, J) | A(I, N + 1)]
Subroutine GAUSS(1) risolve il sistema di equazioni algebriche e pone la soluzione il A( I , N+1)

Aero_APP_a.docx

23/01/2009

Pagina |APP. 46

C.GOLIA: Aerodinamica 1

Subroutine AEROCOF(N) calcola le velocit tangenziale nei punti di controllo secondo la


n

Vt =

Tij V sin i

j=1
( i j)

Do i=1,N
VT(i)=0.
Do j=1,N
VT(i)=VT(i)+A(j,Nplus)*AT(I,J)
Enddo
VT(i)=VT(i)+DTXY(I,1)
Enddo
La Subroutine OUTDATA(N) provvede alloutput. Chiede se si vuole un output su file:
se si (input1) chiede il percorso ed il nome del file di output in cui scrive (su file e su video) in
prima linea il perimetro del profilo e quindi di seguito I,XC(i),YC(i),VT(i),CP(i)
se NO (input 0) scrive solo su video

Aero_APP_a.docx

23/01/2009

Pagina |APP. 47

C.GOLIA: Aerodinamica 1

Appendice 7
Metodo dei Vortici Concentrati

La risoluzione numerica di linee medie con una metodologia vorticosa porterebbe naturalmente a
discretizzare il corpo con N pannelli lineari su cui disporre una distribuzione di vorticit (i).
Tale metodologia, possibile, per ostacolata da due problematiche: limposizione della condizione
di Kutta al bordo di uscita e il non buon condizionamento nel sistema algebrico che ne deriva per la
determinazione delle incognite (i), derivante dal fatto che la velocit normale indotta da un
pannello vorticoso su se stesso nulla (2.x.x.), sicch la diagonale principale della matrice
identicamente nulla.
Ovviamente luso di vortici concentrati risolve entrambi i problemi: pannelli lineari sono da
considerarsi come tante lastre piane, per le quali il loro valore della vorticit , se concentrata nel
punto neutro anteriore (1/4 della corda del pannello), stimabile esattamente imponendo
lannullarsi della velocit totale (asintotica + indotta) normalmente al pannello nel punto neutro
posteriore (3/4 della corda del pannello). E dimostrato [vedi paragrafo 4.8] che tale metodologia
soddisfa la condizione di Kutta per il pannello. Inoltre facilmente intuibile che linfluenza del
pannello su se stesso senzaltro maggiore delle influenze degli altri pannelli, sicch la matrice
risultante certamente diagonale dominante.
Limplementazione di tale metodo particolarmente semplice in quanto se il corpo discretizzato
in N pannelli, per ognuno di questi si conoscono:

le coordinate del fuoco XP(i),ZP(i) e quelle del punto di controllo XC(j),ZC(j),


i coseni direttori della normale al pannello nel punto di controllo DNX(j),DNZ(j) misurati
rispetto ad una corda di riferimento di lunghezza CRIF,
langolo di attacco della velocit asintotica misurato rispetto alla stessa corda di
riferimento,
e quindi le componenti RXij ed RZij del vettore Rij che va dal fuoco del generico pannello i al
punto di controllo del generico pannello j,

Le vorticit incognite concentrate nei punti focali GAMMA(j) sono soluzione del sistema:
A ij j = b i
dove:

i coefficienti di influenza Aij (velocit indotta da un vortice unitario nel fuoco di j, nel punto di
controllo del pannello "i" nella direzione normalmente al pannello stesso) sono dati da
A ij =

1 R ij n i
2 R ij2

il termine noto (componente della velocit asintotica nella direzione normale al pannello i)
dato da: b i = V n i

ovvero pi semplicemente:
2 A ij = (RX ij * DNZ i Rz ij * DNX i ) / R IJ 2

-2 b i = 2 * (VX * DNX i + VZ * DNZ i )

laddove:
Rxij = XP(j)-XC(i)
Aero_APP_a.docx

Rzij = ZP(j)-ZC(i)

Rij2 = RXij2+RZij2
23/01/2009

Pagina |APP. 48

C.GOLIA: Aerodinamica 1

VX = cosTETA

VZ = sinTETA

Una volta note le intensit dei vortici e la loro collocazione immediato ricavare i coefficienti del
sistema di forze:
N

Cl = 2

i =1

Crif

C M0 = 2

xp i i

i =1

Crif

x cp

Crif

C M0
Cl

C M (1 / 4) = C M 0 + C l * 0.25

Tale metodologia usata dal programma VORCON, che consiste da un MAIN e da una
SUBROUTINE e da una FUNCTION.
Il MAIN chiede in input:
1. leggere dati da un file esterno
in questo caso chiede di digitare il percorso ed il nome del file dati che deve contenere nella
prima linea:
il numero di pannelli N ed il valore della corda di riferimento Crif
e su ognuna delle N righe successive
XP(i), ZP(i), XC(i), ZC(i), DNX(i), DNZ(i)
2. generare una linea media NACA
in questo caso si assume corda unitaria (Crif=1) e si chiede di immettere nellordine:
numero dei pannelli (N)
camber massimo (RM) (ex. per NACA 2412 immettere 0.02)
posizione del camber massimo RP (ex. per NACA 2412 immettere 0.40)
il programma generer automaticamente N pannelli di pari lunghezza di cui calcoler i
parametri necessari allalgoritmo richiamando la FUNCTION ZNACA(X,RM,RP). E ovvio
che se si volessero esaminare linee medie di famiglie diverse da quelle della NACA basta
sostituire questa function.
Il programma richiede quindi di immettere langolo di attacco (in gradi)
e ad abbundantiam fa una stampa su video per la verifica dei dati immessi, dopo di che chiede di
immettere un numero qualsiasi se i dati vanno bene o di immettere ESC se si vuole uscire.
Il programma forma il sistema di equazioni (matrice aumentata con il termine noto) che viene
risolto con la solita subroutine GAUSS, con soluzione nella colonna N+1.
La soluzione XP(i), ZP(i), G(i) viene stampata su video e su di un file di output (per eventuali
plottaggi) di cui il programma chiede limmissione del percorso e del nome.
Il programma quindi calcola i parametri aerodinamici sopra descritti che vengono stampati
solamente su video.

Aero_APP_a.docx

23/01/2009

Pagina |APP. 49

C.GOLIA: Aerodinamica 1

Appendice 8
Metodo Pannelli Portanti

Il metodo pi semplice per la risoluzione di problemi portanti attorno a profili arbitrari (senza la
limitazione dei piccoli disturbi) senza dubbio quello ideato in casa DOUGLAS e dovuto a Smith
& Hess.
Basato sulla idea di discretizzare il profilo (di qualsiasi forma, anche non simmetrici) con N
pannelli, e volendo mantenere una metodologia alla Neumann, lidea si basa sulla estensione dei
metodi a pannelli sorgenti (di cui in App. 6) a problemi portanti mediante la introduzione di
vorticit.
Poich il problema non portante determinato dalle condizioni di tangenza nei punti di controllo
degli N pannelli e quello portante determinato dalla condizione di Kutta, vi sono a disposizione
N+1 equazioni.
La soluzione pi semplice, per chiudere il problema, di introdurre una sola incognita per la
vorticit, che Smith&Hess pensarono di distribuire uniformemente su tutto il contorno.
Quindi su ogni pannello del profilo sussiste sia una distribuzione di sorgenti, i , che varia da
pannello a pannello, sia una distribuzione di vorticit che la stessa per tutti i pannelli.
Ne deriva che le velocit, nei punti di controllo, delli-esimo pannello possono porsi come:

.
vort.
Vn ,i = Vn,i + Vnsorg
,i + Vn ,i = V n i +

componente normale:

.
AN sorg
i, j j +

j=1

.
.
Vt ,i = Vt,i + Vtsorg
+ Vtvort
= V ti +
,i
,i

componente tangenziale:

AN

vort.
i, j

j=1

AT

sorg.
i, j

j +

j=1

AT

vort.
i, j

j=1

dove:

ANsorg, ATsorg sono rispettivamente i coefficienti di influenza normale e tangenziale delle


distribuzioni di sorgenti
ANvort, ATvort sono rispettivamente i coefficienti di influenza normale e tangenziale delle
distribuzioni di vortici

La condizione di parete impermeabile porta ad N equazioni:


N

j=1

Vn,i=0 , i=1, .. ,N

ovvero:

.
AN sorg
i, j j +

AN

vort.
i, j

= V ni

i = 1, .. , N

(A8.1)

j=1

La condizione di Kutta, che teoricamente dovrebbe essere imposta nel bordo di uscita, non pu
essere implementata in modo esatto, e viene approssimata imponendo eguale pressione nella parte
del ventre e del dorso immediatamente adiacente al bordo di uscita, cio imponendo [teorema di
Bernoulli] che le velocit tangenziali nei punti di controllo dei due pannelli di coda (nella nostra
notazione il primo e lN-esimo) siano uguali.
Questa approssimazione tanto pi valida quanto pi prossimi sono i due punti di controllo al
bordo di uscita, e soprattutto quanto pi simile sia la loro distanza dal b.d.u (questo richiede che il
pannello 1 ed il pannello N abbiano la stessa lunghezza e che questa sia quanto pi piccola
possibile).
Aero_APP_a.docx

23/01/2009

Pagina |APP. 50

C.GOLIA: Aerodinamica 1

Ovviamente a causa della numerazione


(oraria a partire dal b.d.u.) nel primo
pannello la tangente sar diretta verso il
bordo di attacco, cio avr direzione
contraria alla corrente asintotica, nel
mentre quella dellennesimo pannello sar
concorde alla corrente asintotica.
Ne segue che limposizione di isobaricit nei pressi del b.d.u risulta
approssimata dallimposizione di

VtN>0
N-1

N
1
Vt1>0

bordo
duscita

Vt ,1 = Vt , N

ovvero
Vt ,1 + Vt , N = 0

ovvero:
N

V t1 +

.
AT1sorg
j +
,j

j=1

.
AT1vort
,j + V t N +

j=1

.
ATNsorg
,j j +

j=1

AT

vort.
N, j

=0

j=1

ovvero:
N
.

AT1sorg
+
,j
j=1

j=1

N
.
.

ATNsorg

AT1vort
j
,j +
,j
j=1

j=1

.
ATNvort
, j = V [t 1 + t N ]

(A8.2 )

Le (A8.1 e A8.2) rappresentano un sistema di N+1 equazioni delle N+1 incognite j + , che pu
rappresentarsi in forma matriciale-partizionata come segue:
A 11
A
21

A b 1
12
=
22
b 2

dove:
A11 una matrice quadrata di dimensioni N x N simile a quella del programma PANSOR

11

AN1sorg
,1

#
=
#

sorg
AN1, N

" " AN1sorg


,N

" "
#
" "
#

" " AN sorg


N,N

A12 una matrice-vettore colonna di dimensioni N x 1

N
AN1vort

,j

j=1

#
=

N
vort
AN N, j

j=1

12

Aero_APP_a.docx

23/01/2009

Pagina |APP. 51

C.GOLIA: Aerodinamica 1

A21 una matrice-vettore riga di dimensioni 1 x N avente componenti non nulle solo nelle
posizioni 1 ed N
N
sorg.
A 21 =
AT1sorg
, j + ATN , j
j=1

[AT
N

0 0

sorg
1, j

j =1

+ ATNsorg
,j

A22 una matrice scalare di dimensioni 1x1 (un sol componente)


N
vort
A 22 =
AN1vort
, j + AN N , j
j=1

b1 un vettore colonna di dimensioni N x 1


V n1

b1 =

V n N

b2 un vettore scalare di dimensioni 1x1 (un solo componente)


b1 = [ V [t 1 + t 1 ]]

Nota che a causa della simmetria tra sorgenti (campi radiali) e vortici (campi circonferenziali)
ANvort =- ATsorg

ATvort=ANsorg

e che quindi non occorre determinare niente di nuovo rispetto al caso del PANSOR.
In pratica, quindi, per implementare un codice portante occorre soltanto portare alcune
modificazioni al codice a pannelli sorgente di cui allAppendice 6.
Il codice SMITH_HESS composta da un main e da 8 subroutines.
Il Main provvede a chiamare nellordine le varie subroutines e a richiedere al momento giusto
limmissione dellangolo dattacco ALFA (in gradi); Nota che se si immette un valore maggiore di
90 il programma si chiude.
La Subroutine INDATA chiede di inserire separatamente il numero di punti sul ventre (Nventre) e
poi quello sul dorso (Ndorso) con lavvertenza che la loro somma deve essere minore di 400.
Chiede successivamente di immettere la sigla del profilo naca, da cui deriva i dati del profilo
secondo la classificazione della Naca (idem Appendice 5)
La subroutine SETUP fissa le coordinate dei punti sulla corda (unitaria) con la legge del coseno e i
punti del dorso/ventre che vengono generati chiamando la subroutine BODY(Z,SIGN,X(I),Y(I)).
Calcola le pendenze dei pannelli e conserva i seni [SINTHE(I)]ed i coseni [COSTHE(I)] degli
angoli orientati dei pannelli rispetto alla corda, stampa su video il numero del pannello e le sue
coordinate [I,X(I),Y(I)]
La subroutine BODY(Z,SIGN,X(I),Y(I)) genera automaticamente le coordinate dei punti dei profili
NACA chiamando la subroutine NACA45(Z,THICK,CAMBER,BETA)
Aero_APP_a.docx

23/01/2009

Pagina |APP. 52

C.GOLIA: Aerodinamica 1

La Subroutine COFISH(SINALFA,COSALFA) definisce le matrici del metodo e forma la matrice


di risoluzione del problema A(N+1,N+2) aumentata del termine noto.
La Subroutine GAUSS(1) risolve il sistema e pone la soluzione nella N+2-esima colonna di A
La Subroutine VELDIS(SINALFA,COSALFA) rileva la soluzione dalla N+2-esima colonna di A
e la stampa su video [I,Q(I)], calcola, nel punto mediano di ogni pannello, la velocit tangenziale
(che coincide con la velocit totale essendo sul corpo la componente normale nulla) e il coefficiente
di pressione e li stampa su video [XMID(I),VEL(I),CP(I)]
La Subroutine FANDM(SINALFA,COSALFA,alfa) calcola e stampa su video i dati aerodinamici: i
coefficienti di portanza, resistenza indotta e momento (rispetto al bordo dattacco): [CL,CD.CM]
e poi, se CL0, stampa su video la posizione del centro di pressione [Xcp/c], e poi il coefficiente di
momento a c/4 (molto prossimo al coefficiente di momento focale) [CM(c/4)] e chiede se si vuole
una stampa su file:
in caso positivo chiede percorso e nome del file, in cui scrive [NODTOT,ALFA], e poi
[XMID(I),YMID(I),CP(I),VEL(I)]
chiede poi se si vuole un output per file per analisi di Strato Limite
in caso positivo richiede percorso e nome del file, cerca il punto di ristagno, separa i dati
del dorso aerodinamico e quelli del ventre aerodinamico e stampa nel file indicato prima
[Ndorso, Nventre,ALFA] e poi successivamente Ndorso righe che, iniziando dal punto
di ristagno, riportano i dati del dorso aerodinamico, [X(i),Y(i),VEL(i)] seguiti da
Nventre righe che iniziando dal punto di ristagno, riportano i dati del ventre
aerodinamico [X(i),Y(i),VEL(i)].
infine chiede se si vuole anche un file di output per la geometria del profilo
in caso positivo chiede percorso e nome del file, in cui stampa [NODTOT] e poi [X(i),Y(i)]
dopo di che si torna al main che chiede, per un nuovo caso, di immettere il valore dellangolo
dattacco ALFA (in gradi): se ALFA > 90 il programma viene terminato.
Nota il programma, anche se non lo sembra, molto semplice ed orientato alla determinazione
della polare di profili NACA.
Nel caso si debbano usare altri profili occorre variare la subroutine NACA45, ovvero implementare
il programma con una opzione per permettere di leggere i dati del profilo da un file esterno
Appendice 9
Ala Finita Lineare Dritta

Le ali lineari a grande allungamento e senza freccia in pianta (rispetto alla linea dei fuochi) sono
modellate da teorie vorticose che usano un segmento vorticoso aderente alla linea retta dei fuochi
dellala e da una superficie vorticosa di vortici liberi che si estende nella direzione dellasse delle x
(ali poco caricate!). Ne deriva che la distribuzione di vorticit aderente e quindi libera, deve
soddisfare lequazione integro-differenziale di Lanchester-Prandtl.
La risoluzione di tale equazione viene fatta seguendo lanalisi di Glauert :
Aero_APP_a.docx

23/01/2009

Pagina |APP. 53

C.GOLIA: Aerodinamica 1

a) scambiando lascissa di apertura y con una anomalia ,

[0, ]:

y=

b
cos
2

b) rappresentando la Vorticit aderente con uno sviluppo in serie di Fourier di solo seni
dellanomalia,
() = 2bV

n sin

(n)

n =1

c) usando le formule di Glauert per eliminare gli integrali impropri presenti,


d) per arrivare ad una equazione per gli infiniti coefficienti An della serie che deve valere per
tutti i punti dellapertura [-b/2yb/2, i.e. per tutti i valori dellanomalia , [0, ] ]

L,0 sin =

[A

n sin ( n)

{ n + sin}]

(A9.1)

n =1

dove:

caass
= ( )
4b
aass il coefficiente della retta di portanza del tronco di ala in esame, considerato operare nel
tratto lineare:

si posto:

dC
dC
C L = aass ( eff i ) = L ( eff i ) = L ( L 0 i )
d ass
d ass
La risoluzione dellequazione (A9,1) viene fatta con la tecnica della collocazione: assumendo un
numero finito N* di armoniche ovvero di An , [i.e. n=1,..,N* ] e imponendo che lequazione
(approssimata) sia verificata in N* punti dellapertura dellala.
In parole povere, dovreste aver capito che
lo scopo di tutta lingegneria di
riuscire ad avere N* equazioni per le N* incognite
con una matrice di sistema ben condizionata.
Questo processo di troncamento/collocamento chiamato nella letteratura inglese, risoluzione dell
equazione del monoplano.
Ovviamente se si considera unala simmetrica (in forma e carico, i.e. senza imbardata e rollio)
baster considerare soltanto i termini dispari [i.e. n=1,3,5,7,....] e una sola semiala [0, ] e
raddoppiare i valori dei coefficienti trovati:

( ) = 2 bU A 1sin( ) + A 3 sin( 3) + A 5 sin( 5) + A 7 sin( 7) +........

Una volta noti i valori dei coefficienti della serie ( An ) si possono calcolare tutti i parametri di
interesse:
L = b 2 ( 21 U )A 1 C L ( 21 U )S
b2
= A 1
S
sin ( 3 )
sin (5 )
sin ( 7 )
i ( ) = A 1 + 3A 3
+ 5A 5
+ 7A 7
+ .....
sin
sin
sin
C L = A 1

Aero_APP_a.docx

23/01/2009

Pagina |APP. 54

C.GOLIA: Aerodinamica 1

C D ,i

2
N

A n C 2L A 23 A 25 A 27

=
= A 1 + n
1 + 3 2 + 5 2 + 7 2 + .......
n = 2 A 1 A 1 A 1 A 1

2
1

Il codice MONOPLANcf risolve ali lineari, a grande allungamento, senza freccia in pianta, con
rastremazione, svergolamento (geometrico ed aerodinamico) e con flaps.
Consiste da un main che chiama, di volta in volta, quattro subroutines.
La subroutine GEOMONOP legge o genera la geometria e langolo dattacco, alluopo propone
lopzione:
1. di immettere da tastiera i dati geometrici. In questo caso chiede di immettere da tastiera:
lapertura alare B (in metri),
la corda alla radice CR (in metri),
la corda allestremit CE (in metri),
langolo di svergolamento alla radice ASVR (in gradi),
langolo di svergolamento allestremit ASVE (in gradi),
per la sezione di radice: il coefficiente delle retta di portanza (1/rad) e langolo di
portanza nulla (in gradi positivo verso il basso) CLAR,ALOGR
per la sezione di estremit: il coefficiente delle retta di portanza (1/rad) e langolo di
portanza nulla (in gradi positivo verso il basso) CLAE,ALOGE
2. di leggerli da un file. In questo caso chiede di immettere da tastiera il percorso ed il nome di un
file che deve contenere 9 righe:
1. lapertura alare B (in metri),
2. la corda alla radice CR (in metri),
3. la corda allestremit CE (in metri),
4. langolo di svergolamento alla radice ASVR (in gradi positivo verso il basso),
5. langolo di svergolamento allestremit ASVE (in gradi positivo verso il basso),
6. langolo di portanza nulla (in gradi positivo verso il basso) per la sezione di radice ALOGR,
7. langolo di portanza nulla (in gradi positivo verso il basso) per la sezione di radice ALOGE,
8. il coefficiente delle retta di portanza (1/rad) per la sezione di radice CLAR,
9. il coefficiente delle retta di portanza (1/rad) per la sezione di estremit CLAE,
Successivamente:
chiede di immettere lestensione del flap in % della semiapertura alare PFALP (se 0 no flap)
se PFLAP 0 chiede di immettere lincremento dellangolo di portanza nulla causato
dallabbassamento del flap nelle sezioni (in gradi, negativo se flap down) DFALO
chiede di immettere:
il numero di punti lungo la semi-apertura N, che posizione con la regola del coseno,
langolo di attacco ALFAG (in gradi misurata rispetto alla corda di riferimento (di solito la
corda media dellala).
Essendo unala lineare, i dati delle N sezioni alle varie stazioni intermedie vengono interpolati
linearmente tra quelli di radice ed estremit e stampati su video: I,
TETA(I),Y(I),C(I),SVERG(gradi), Clalfa,Alfa0(gradi)

Aero_APP_a.docx

23/01/2009

Pagina |APP. 55

C.GOLIA: Aerodinamica 1

La subroutine COFINMONOP genera i coefficienti del sistema di equazioni del monoplan, ne


deriva una matrice:
A(I,J)= SIN(Jdispari*TETA(I))+(RMU*Jdispari+SIN(TET(I))
ed un termine noto che viene collocato nella matrice A aumentata a destra:
A(I,N+1)=RMU*(ALFAR-ASV(i)-ALO(I)*SIN(TET(I))

La subroutine GAUSS(NRHS) risolve il sistema e restituisce la soluzione nella (n+1)-esima


colonna di A:
An(i)=A(I,N+1)
La subroutine COEFFMONOP calcola i coefficienti aerodinamici dellala (raddoppia quelli
calcolati per la semiala) e le distribuzioni lungo lapertura e provvede alle stampe su video e su file.
Alluopo:
recupera la soluzione dalloutput di GAUSS
per ogni stazione Jdispari, calcola:
il coefficiente di portanza locale CL(I) come somma rispetto a Jdispari di
AN(j)*SIN(J*TET(I)*2*4*BH/C(I),
langolo di incidenza indotta locale AI(I) come somma rispetto a Jdispari di
J*AN(j)*SIN(J*TET(I) /SIN(TET(I)),
il coefficiente di resistenza indotta locale CD(I) come prodotto di AI(I)*CL(I),
il parametro di resistenza indotta locale SCDT come somma rispetto a Jdispari di
J*(AN(j)/AN(1))**2
e ne stampa su video la distribuzione lungo lapertura: Y(I), CL(I), Y(I)/BH,
CL(I)/CLradice, CD(i)
calcola i coefficienti totali:
di portanza
CLT= PIG*AR*AN(1)
di resistenza indotta
CDT=PIG*AR*AN(1)**2*SCDT
quindi stampa su video
Apertura alare
Angolo dattacco, alfa(gradi)
Estensione del flap, Delta(alfal0) derivante dallabbassamento del flap
rastremazione di corde
angoli di svergolamenti (radice et estremit)
Angoli di portanza nulla (radice et estremit)
coefficienti totali di Portanza e di resistenza indotta
chiede se si vuole output su file?
se si chiede di immettere percorso e nome del file su cui stampa:
eventualmente il nome del file di input usato per lala
angolo dattacco (in grado) e coefficienti totali di Portanza e di resistenza indotta
le distribuzioni lungo lapertura Y(I), CL(I), Y(I)/BH, CL(I)/CLradice,
CD(i)
Aero_APP_a.docx

23/01/2009

Pagina |APP. 56

C.GOLIA: Aerodinamica 1

Aero_APP_a.docx

23/01/2009

Pagina |APP. 57

C.GOLIA: Aerodinamica 1

USO DEL PROGRAMMA MONOPLAN PER LANALISI (di primissimo livello)


DELLALA.
Tutti questi casi prevedono lutilizzo di molti run del programma, per cui preferibile usare input
mediante un file esterno (dal nome preferibilmente corto e posto nella stessa directory
delleseguibile).
Sia ala0.txt il file che contiene i dati dellala, proveniente dagli aerodinamici.

1. CALATTAMENTO DELLALA
Lufficio di progetto deve calettare (posizionare con un dato angolo) lala su di un velivolo e vuole
farlo con qualche criterio, ad esempio; se si tratta di un velivolo civile, pensabile che per la
stragrande maggioranza del tempo il velivolo (di massa nota) voler ad una certa quota, con una
certa velocit.
Da questi dati facile ricavare il CLalare di regime. Infatti dalleguaglianza PESO=PORTANZA:
PESO = (massa a vuoto + carburante e fluidi + carico) * g = Portanza = CL alare * 12 (alla quota )V 2 S rif .ala

si deriva:
CL alare =

(massa a vuoto + carburante e fluidi + carico) * g


1
2

(alla quota )V 2 S rif .ala

Ne esce un valore che generalmente compreso tra 0.4 e 0.5, assumiamo ad esempio CLalare=0.45.
Ora abbastanza ovvio che in questo caso si vuole che lala sia posizionata rispetto al velivolo in
modo tale che quando lala genera CLalare=0.45, la fusoliera sia posizionata rispetto alla direzione
della corrente ad angolo dattacco nullo (per fare in modo che la fusoliera generi una resistenza
minima!).
Il problema quindi di calettare opportunamente la corda di riferimento dellala rispetto
allasse di fusoliera.
Molto semplice:
Fare vari runs del codice MONOPLAN usando il file ala0.txt a vari angoli dattacco (che
saranno rispetto alla corda di riferimento dellala) e trovare quello per cui si raggiunge
CLalare=0.45; sia ad esempio:

corda rif ala=+1.5() che rappresenta langolo di calettamento

Andare nel file alfa0.txt e sottrarre ad entrambi gli angoli di svergolamento , di radice
ASVR e di estremit ASVE, il valore trovato di corda rif ala=+1.5().
Salvare il file con un altro nome, ad es. ala0_calettato_1.5.txt
Controllare con un nuovo run che usando questo file e ponendo =0 risulti CLalare=0.45.

Se ci avviene abbiamo trovato langolo di calettamento dellala sul nostro velivolo.


Evidentemente questo solo la stima di primo tentativo, dovrete in seguito considerare altri fattori
quali: le interferenze, i down-wash le condizioni di off-design.eccetera.
Aero_APP_a.docx

23/01/2009

Pagina |APP. 58

C.GOLIA: Aerodinamica 1

2. POLARE DELLALA
Gli aerodinamici avranno certamente generato, si suppone seriamente, le curve di polare dellala.
Da buon seguaci di S.Tommaso, potrebbe venirvi voglia di ri-calcolarle, diciamo per sfizio o per
una verifica semplicistica, a volo duccello, sfruttando il codice MONOPLAN.
Usate il file dellala calatteta, ed assumete che lala continui ad avere comportamento scalabile
linearmente, sezione per sezione, ad ogni angolo dattacco, fino allo stallo.
Dovete avere a disposizione:
le polari dei profili di radice ( R ) e di estremit ( E ), i.e. dovrete, per ogni valore dei
rispettivi coefficienti di portanza CLR e CLE, conoscere i valori dei coefficienti di
resistenza parassita CDpR, CDpE ed i valori dei coefficienti di momento focale
CMFR,CMFE,
le corde dei profili di radice CR e di estremit CE e la corda media Cm,
Fate diversi run con il codice MONOPLAN, facendo incrementare langolo dattacco e per ogni
run abbiate cura di creare una tabella come quella che segue:
alfa
CL_ala
CDind_ala
CLR
CLE
CDpR = f(CLR)
CDpR = f(CLR)
CMFR = f(CLR)
CMFE = f(CLR)
CDp_ala=(CDpR*CR
CDpE*CE)/CM
CD_ala = CDp_ala + CDind_ala
CMF_ala
=
(CMFR*CR
CMFE*CE)/Cm

10

NOTA :
le caselle bianche sono riempite direttamente dagli outputs del codice MONOPLAN
le caselle grigio chiare devono essere calcolate, sfruttando le polari dei profili di radice e di
estremit per determinare i coefficienti di resistenza di profilo e di momento focale in
funzione dei coefficienti di portanza locali,
le caselle grigio pi scuro forniscono la prima grossolana valutazione del coefficiente di
resistenza parassita CDp_ala e quindi del coefficiente di resistenza totale CD_ala e del
Momento focale CMF_ala (MEMO per lala diritta tutte le sezioni hanno lo stesso fuoco!)
in funzione di CL_ala e di alfa
Ergo: da questa tabella si pu tracciare una prima grossolana stima delle curve polari
dellala!
Aero_APP_a.docx

23/01/2009

Pagina |APP. 59

C.GOLIA: Aerodinamica 1

3. INIZIO E CAMMINO DI STALLO


Dovrete plottare landamento del
CLmax dei profili significativi
della vostra ala, lungo l apertura
(y).
Questo semplice per profili non
flappati.

Curva CLmax
lungo lapertura

CLmax,radice
CLmax,estremit

Infatti nello spirito della linearit


basta individuare dai data-base
y = b/2
y=0
aerodinamici
disponibili
(in
funzione dei numeri di Reynolds
calcolati in base alle corde locali) il CLmax del profilo di radice, il CLmax del profilo di estremit e
unirli con una linea retta.

Aero_APP_a.docx

23/01/2009

Pagina |APP. 60

C.GOLIA: Aerodinamica 1

Curva CLmax
lungo lapertura
con flap azionati

CLmax,radice
con flap

CLmax,estremit
con flap

CLmax,radice
CLmax,estremit

y=0

zona di estensione
dei flap

Pi complicato il caso di unala


flappata, in questo caso dovrete
individuare anche il CLmax del
profilo di radice flappato ed il
CLmax del profilo di estremit
flappato, unire i dati dei CL con
flap e dei CL senza flap, ed, in
funzione della reale estensione del
flap, assumere luna o laltra linea.
Spiegazione troppo complicata,
meglio vedere lesempio in
figura.

y = b/2

Aumentando ad ogni run langolo


dattacco dellala, avrete distribuzioni di carico CL(y) lungo lapertura che variano con , che
plotterete idealmente su questi diagrammi, per verificare se la curva disegnabile dai dati di output
del codice CL(y), tocca la curva CLmax che avete ricavato dai dati aerodinamici dei profili di
radice e di estremit.
Quando ci accade avrete fatto una prima stima:

dellangolo dattacco di inizio stallo, ed il corrispondente valore di CLstallo dellala


la stazione di inizio stallo.

Bada Bene:
in queste condizioni
il
comportamento

Curva CLMAX
lungo lapertura

stazione di
inizio stallo

aerodinamico dellala
fortemente non-lineare,
CLmax,radice
quindi quella fatta solo
5 >4
una stima preliminare.
Ad
assetti
ancora
4= angolo
CLmax,estremit
inizio stallo
maggiori
lo
stallo
per ogni :
interesser altre sezioni, si
3
curve CL(y)
potr cos stimare la
e un valore
2
di CLala
forma del cammino dello
stallo.
1
Ma non illudetevi, sar
solo una stima qualitativa,
y = b/2
y=0
non sostenuta da alcuna
razionalit (dopo linizio
stallo dovreste escludere le zone stallate altrimenti potrebbe accadere che il CLala continui ad aumentare!).

Aero_APP_a.docx

23/01/2009

You might also like