R–5896
Software a metodika pro potřeby optimalizace tvarování lopatek axiálního přetlakového stupně
Mgr. JAN ŠIMÁK Ing. PETR STRAKA, PhD. Mgr. ANDRÁS SZÖLLÖS
VÝZKUMNÝ A ZKUŠEBNÍ LETECKÝ ÚSTAV, a. s. BERANOVÝCH 130, 199 05 PRAHA-LETŇANY c 2013
R–5896
Obsah 1 Úvod
3
2 Teoretický popis metody 2.1 Parametrizace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Výpočet charakteristik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Optimalizační algoritmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 3 5 6
3 Popis programu 3.1 Překlad a instalace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Popis struktury programu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Popis souborů se zdrojovým kódem . . . . . . . . . . . . . . . . . . . . . . . . . .
7 7 8 8
4 Nastavení programu 4.1 Nastavení dat pro optimalizaci . . . . . . . . . . 4.2 Nastavení parametrů pro generování výpočtových 4.3 Nastavení CFD řešiče . . . . . . . . . . . . . . . 4.4 Úprava skriptů . . . . . . . . . . . . . . . . . . .
. . . sítí . . . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
9 9 10 10 11
5 Spuštění programu
12
6 Výstupní data programu
12
7 Závěr
12
7 Literatura
12
Seznam obrázků 2-1 Parametrizace profilu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2 Ukázka výpočtové sítě . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3 Schéma genetického algoritmu . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
-2-
4 6 7
R–5896
1
Úvod
Program popsaný v následujícím textu vznikl jako součást řešení projektu výzkumu a vývoje malorozměrového turbínového stupně, konkrétně při řešení problematiky návrhu nového tvaru profilu turbínové lopatky. Cílem bylo získat nový tvar lopatky, která by vyhovovala zadaným kritériím, ale dosahovala nižších profilových ztrát. Metoda uvažuje návrh prizmatické lopatky, kdy tvar profilu zůstává neměnný po celé její délce. Z tohoto důvodu se optimalizace zaměřuje pouze na dvojrozměrný tvar profilu. Program se snaží navrhovat profily tak, aby měly co nejnižší ztráty kinetické energie a celkového tlaku. Zároveň tyto návrhy splňují podmínku na požadované hodnoty hustoty hmotnostního toku lopatkovým kolem, úhel výstupního proudu a moment setrvačnosti průřezu. Ten zajistí, že nebude docházet ke zbytečným deformacím lopatky z důvodu nevhodného tvaru. Z technologických důvodů je předepsána i osová délka profilu. Protože v konfiguracích typu stator-rotor nabíhá na lopatku proud vzduchu pod různým úhlem náběhu v závislosti na aktuální poloze lopatky, je třeba toto zohlednit i v optimalizaci. Proto jsou jednotlivé charakteristiky návrhů vyhodnocovány pro úhly náběhu ze zadaného intervalu. To vede i ke snížení citlivosti navrženého profilu na zadaný provozní režim. Snahou při vývoji výpočetní metody bylo zachovat i určitou univerzálnost postupu a využít především programy vyvinuté ve VZLÚ.
2
Teoretický popis metody
Řešení uvažovaného problému se skládá ze tří hlavních částí, a to z parametrizace profilu, výpočtu charakteristik lopatky a nakonec z optimalizačního algoritmu.
2.1
Parametrizace
Aby bylo možné provádět optimalizaci tvaru profilu, je nutné zavést jeho vhodnou reprezentaci. Protože rychlost optimalizačních algoritmů je přímo závislá na počtu optimalizovaných parametrů, je vhodné zvolit reprezentaci pomocí co nejméně parametrů. Z tohoto důvodu se jako nejvhodnější jeví popis profilu pomocí parametrických křivek. Použitá parametrizace je založena na metodě ŠKODA AP1 [1], která popisuje tvar pomocí dvojice Bézierových křivek pátého stupně, doplněné o oblouk na odtokové hraně. Původní metoda umožňuje rozšíření popisu i o transsonickou úsečku a rozšiřující oblouk u odtokové hrany, ty však nejsou v tomto programu standardně použity. Celkem využívá k popisu 20 návrhových parametrů. Program pro parametrizaci profilu lopatky je detailněji popsán ve zprávě [2]. Následující tabulka udává přehled návrhových parametrů popisujících tvar profilu. Hvězdičkou jsou označeny optimalizační parametry, tedy hodnoty, které program určuje. parametr z c γ∗ α0 ∗ ϕ∗ ψ∗ LSB T Rz RNB ∗ ROK ∗ LESF ∗ LESS ∗
význam výška profilu nad patou lopatky délka parametrizační tětivy úhel nastavení vstupní úhel úhel osy odtokové hrany úhel rozevření odtokové hrany poměrná délka transsonické úsečky zesílení odtokové hrany na přetlakové straně poloměr zesilující kružnice poloměr náběžné hrany poloměr kružnice odtokové hrany parametr tvaru náběžné hrany tvar podtlakové části u náběžné hrany -3-
možný rozsah hodnot ≥0 >0 −90 ◦ < . ≤ 0 ◦ −90 ◦ < . < 90 ◦ 0 ◦ ≤ . ≤ 90 ◦ 0 ◦ ≤ . ≤ 180 ◦ ≥0 ≥0 ≥0 >0 >0 ≥0 −∞ < . < ∞
R–5896
tvar přetlakové části u náběžné hrany křivost v přechodovém bodě B tvar podtlakové části u odtokové hrany tvar podtlakové části u odtokové hrany křivost v přechodovém bodě C tvar přetlakové části u odtokové hrany tvar přetlakové části u odtokové hrany
LEPS ∗ TESSC ∗ TESS1 ∗ TESS2 ∗ TEPSC ∗ TEPS1 ∗ TEPS2 ∗ dodatečné parametry Nlop Dp
−∞ < . < ∞ ≥0 ≥0 −∞ < . < ∞ −∞ < . < ∞ ≥0 −∞ < . < ∞
počet lopatek patní průměr lopatkového kola
>0 >0
Na obrázku 2-1 je pak znázorněn vztah mezi návrhovými parametry a geometrií profilu. Vztahy mezi jednotlivými parametry a polohou řídících bodů křivek jsou následující: LESF = d11 /RNB = d31 /RNB ,
(1)
LESS = d12 /RNB ,
(2)
LEPS = d32 /RNB ,
(3)
TESS1 = d21 /c,
(4)
TESS2 = d22 /c,
(5)
TEPS1 = d41 /c,
(6)
TEPS2 = d42 /c,
(7) 2
d13 = 5/4 · LESF · RNB ,
d33 = 5/4 · LESF 2 · RNB ,
(8) (9) 2
2
d23 = 5/4 · TESSC · TESS1 · c ,
(10)
d43 = 5/4 · TEPSC · TEPS1 2 · c2 .
P4 d23
d13 P3
d12
(11)
d22
P5
P2 d11
P1=P'1 P' d 32 3
P'4
d31 P'2
α0 d43
LT
-γ
C Rz
d21
d33
c
Ro B
d42
A
D ψ
P'5 d41
P6
L
C
P'6
D A
T φ
Obr. 2-1: Parametrizace profilu V úloze optimalizace se tento program využívá hlavně pro převod parametrické reprezentace na bodovou, která se dále uplatňuje v úloze výpočtu charakteristik profilu. -4-
R–5896
2.2
Výpočet charakteristik
Kvalita jednotlivě navržených profilů se testuje pomocí CFD metody pro výpočet 2D vazkého, stacionárního proudění. Program vychází ze softwaru pro výpočet proudění v lopatkových mřížích [3]. Jedná se o řešení soustavy rovnic RANS (Reynolds Averaged Navier-Stokes), doplněné o k-ω model turbulence, ∂w ∂f (w) ∂g(w) ∂r(w) ∂s(w) + + − − = P (w), ∂t ∂x ∂y ∂x ∂y
(12)
kde w = (ρ, ρu, ρv, e, ρk, ρω)T ,
(13) T
f (w) = ρu, ρu2 + p, ρuv, (e + p)u, ρku, ρωu , T g(w) = ρv, ρuv, ρv 2 + p, (e + p)v, ρkv, ρωv , ∂ω T ∂k , r(w) = 0, τxx , τxy , uτxx + vτxy − qx , (µ + σk µT ) , (µ + σω µT ) ∂x ∂x ∂ω T ∂k , s(w) = 0, τxy , τyy , uτxy + vτyy − qy , (µ + σk µT ) , (µ + σω µT ) ∂y ∂y T P (w) = 0, 0, 0, 0, Pk − βk ρk ω, Pω − βω ρω 2 − σD CD .
(14) (15) (16) (17) (18)
Symbol τ značí tenzor tečného napětí, qx a qy jsou tepelné toky, µ a µT značí molekulární a turbulentní vazkost. Kokův TNT k-ω model turbulence [4] obsahuje členy produkce Pk , Pω , člen příčné difuze CD a dále obsahuje konstanty σk = 2/3, σω = 0,5, σD = 0,5, βk = 0,09, βω = 3/40, αω = √ βω /βk − σω κ2 / βk , kde κ = 0,41 je Kármánova konstanta. Soustava rovnic popisujících proudění (12) je řešena v její bezrozměrné podobě. To vyžaduje zavedení následujících vztahů pro normování stavových veličin pomocí hodnot charakteristické rychlosti c∗ a hustoty ρ∗ : vˆi = vi /c∗ ,
i = 1, 2,
ρˆ = ρ/ρ∗ , pˆ = Tˆ =
p/ ρ∗ c2∗ T /c2∗ .
(19) (20)
,
(21) (22)
Rovnice jsou řešeny metodou konečných objemů na výpočtové síti typu „chiméraÿ [5], jedná se tedy o dva bloky částečně se překrývajících strukturovaných sítí. Prostor mezilopatkového kanálu je diskretizován pomocí kartézské sítě, bezprostřední okolí profilu pak pomocí „oÿ-sítě. V překrývajících se buňkách je zajištěn přenos dat mezi oběma bloky. Na obrázku 2-2 je ukázka této sítě. Okrajové podmínky pro periodicitu umožňují rozvinutí řešení do celého řezu lopatkovým kolem. Z důvodu urychlení výpočtu je řešení počítáno z počáteční podmínky nejprve na zředěných sítích, teprve po dosažení dané přesnosti je proudové pole dopočteno na husté síti. Vyhodnocování profilových ztrát, společně s určováním výstupního úhlu a dalších charakteristik, je prováděno metodou redukce dat. Použitá metodika se shoduje s postupem, který se používá při vyhodnocování experimentálních dat [6]. Součinitelé ztrát kinetické energie a celkového tlaku se určují jako (v2is /a0 )2 − 1, (v2 /a0 )2 p02 , ζ =1− p01 ξ=
-5-
(23) (24)
R–5896
0.005
0
y
blok 1
-0.005
-0.01
blok 0
-0.015 0
0.005
0.01
0.015
0.02
x
Obr. 2-2: Ukázka výpočtové sítě kde v2 /a0 je střední hodnota rychlostního poměru, p02 /p01 je střední hodnota poměrného celkového tlaku na výstupu z lopatkové mříže. Hodnota momentu setrvačnosti průřezu vzhledem k hlavním těžišťovým osám, který popisuje tuhostní vlastnosti profilu, je určován pomocí integrálů Z (˜ y − yt )2 dA, (25) Ix = ZA (˜ x − xt )2 dA, (26) Iy = A
kde A značí průřez lopatky, (xt , yt ) těžiště a x ˜, y˜ značí souřadnice vnitřních bodů v systému hlavních těžišťových os. Pro potřeby numerického integrování je vnitřek profilu pokryt trojúhelníkovou sítí vytvořenou programem ANGENER [7].
2.3
Optimalizační algoritmus
Hledání nejlepších kandidátů pro nový tvar profilu je prováděno pomocí mikrogenetického algoritmu. Jeho princip je v tom, že na množinu (populaci) návrhových kandidátů (jedinců) se aplikují operátory selekce, křížení a mutace. Tím se z každé generace vyberou dva vhodní jedinci, zkříží se spolu a pomocí mutace několika dalších jedinců se do populace vnese nová genetická informace. Postupnou evolucí se dospěje do doby, kdy je nalezeno optimum, tedy návrhový kandidát, který má lepší vlastnosti než původní návrh. Mikrogenetický algoritmus si vystačí na rozdíl od klasických genetických algoritmů s mnohem menší populací, v našem případě populace čítá čtyři jedince. Zmenšení velikosti populace znamená snížení počtu potřebných vyhodnocování jedinců, což je časově velice náročné, a tím se urychluje výpočet. Na druhou stranu je potřeba efektivně prohledat celý návrhový prostor. Oboje zajišťuje multikriteriální mikrogenetický algoritmus s adaptací rozsahu µARMOGA [8, 9]. Schéma tohoto algoritmu je na obr. 2-3. Adaptace rozsahu prohledávání je založena na statistice populace. Na základě střední hodnoty a standardní odchylky ohodnocujících vektorů stávající populace se určí směr, kde se dají očekávat noví slibní jedinci. Uvedený algoritmus je multikriteriální, tzn. optimalita výsledného návrhu se posuzuje podle více optimalizačních kritérií, výsledkem je soubor paretovsky optimálních návrhů. Pro paretovsky optimální návrh x platí, že neexistuje jiný návrhový vektor y takový, že fi (y) ≤ fi (x) ∀i, -6-
(27)
R–5896
inicializace populace aktualizace archivu
konec
každá n-tá generace
selekce
aktualizace populaních statistik
k ížení
adaptace rozsahu
mutace
reinicializace
Obr. 2-3: Schéma genetického algoritmu kde fi jsou jednotlivá optimalizační kritéria a alespoň jedna nerovnost je ostrá. Kromě těchto optimalizačních kritérií lze zadat i jakási slabší kritéria (omezující kritéria), u kterých nepožadujeme přímo dosažení nejlepších hodnot, stačí jen, když budou uvnitř zvoleného intervalu. Počáteční populace může být zadána buď uživatelem, nebo je vytvořena zcela náhodně pomocí generátoru náhodných čísel spolu se vzorkováním pomocí Latinské hyperkrychle. Zadání původního profilu má na optimalizaci jednoznačně pozitivní efekt, protože zpravidla vyhovuje zadaným omezujícím podmínkám nebo je jim alespoň blízko. Z důvodu rozsáhlosti návrhového prostoru tak získáváme dobrou startovní pozici.
3
Popis programu
Výše uvedená metodika byla implementována do počítačového programu OptimTL. Zdrojové kódy jsou napsány v programovacích jazycích „Cÿ a „Fortranÿ. Jednotlivé soubory jsou uloženy v adresáři zdroje/ v příslušných podadresářích. Program je určen pro operační systém Linux. Je třeba mít také nainstalovanou knihovnu Laspack [10], která je přiložena k programu.
3.1
Překlad a instalace
Zdrojové kódy se přeloží na spustitelné programy spuštěním skriptu make.bat ve výchozím adresáři. Skript předpokládá použití překladačů gcc a gfortran a dále umístění knihovny laspack.a v adresáři /usr/local/lib/. Pokud je knihovna umístěna jinde, je třeba změnit cestu v souboru zdroje/solver/make.bat. Poté, co jsou vytvořeny spustitelné soubory, je možné vytvořit adresář pro výpočty. Nejprve je třeba upravit parametry ve skriptu install.bat. Jedná se především o název adresáře pro výpočty (standardně ./vypocty), dále o hodnotu středního úhlu nabíhajícího proudu α společně s rozsahem testovaného intervalu a nakonec o omezující podmínky pro optimalizaci. Ty jsou zadané jako požadované izoentropické Machovo číslo M2,is , úhel výstupního proudu α2 a požadovaná hustota hmotnostního toku q. Před spuštěním skriptu je třeba také nastavit požadované hodnoty v nově vzniklém adresáři set_data/, který obsahuje soubory definující režim proudění. Jejich popis je uveden dále v textu. Spuštěním skriptu se vytvoří adresářová struktura a nakopírují potřebné soubory. Poté je již program možné spustit. Program při svém spuštění využívá pouze soubory, které jsou uloženy v adresáři vypocty/, soubory v adresáři zdroje/ případně set_data/ již nejsou respektovány.
-7-
R–5896
3.2
Popis struktury programu
Po úspěšné instalaci je vytvořena struktura adresářů, zjednodušeně popsána jako: optimTL /set_data /m1 /m2 /vypocty /Archiv /j1 /a1 /m1 /m2 /a2 /a3 /a4 /a5 /momenty /Site /j2 /j3 /j4 /soft /zdroje /data /momenty /site /skript /solver
3.3
výchozí adresář soubory pro nastavení vlastností proudění a CFD řešiče soubory pro zředěné sítě adresář pro výpočty ukládání vypočtených dat adresáře pro výpočet proudění pro jednotlivé profily adresáře pro výpočet proudění pro dané úhly vstupního proudu ze zadaného intervalu adresáře pro výpočet na zředěných sítích
adresář pro výpočet momentu setrvačnosti adresář pro generování sítě
adresář s programy zdrojové soubory programu původní soubory nastavení programu zdrojový kód programu pro výpočet momentů setrvačnosti zdrojové kódy pro generování CFD sítě skripty pro řízení běhu programu zdrojové kódy pro řešení CFD úlohy
Popis souborů se zdrojovým kódem
Zdrojový kód je uložen v následujících souborech: optprofil.f90 - mikrogenetický algoritmus, hlavní řídící program. parametrizace.f - program pro parametrizaci profilu. solver/add2archive.c - přidá proudové pole do archivu (pomocný program). solver/cfd_main.c, ini_finish.c, op.c, set_mini_blk.c, linrek.c, solver_EU.c - program pro řešení CFD úlohy. solver/eval_dvec_to_vstup_txt.c - program, který převede vektor optimalizačních parametrů na soubor návrhových parametrů, čitelných programem parametrizace. solver/kontrola_profilu.c - kontrola, zda je profil odpovídající sadě parametrů v pořádku z hlediska geometrie. solver/najdi_profil.c - nepoužito. solver/prenos.c - přenos proudového pole z hrubé sítě na jemnější. solver/preprenos.c - vytvoří data nutná pro přenos výsledků mezi sítěmi. solver/redukce.c - program pro redukci dat, vypočtení ztrát kinetické energie, ztrát celkového tlaku, relativní odchylky od zadaného izoentropického Machova čísla, relativní odchylky od výstupního úhlu a relativní odchylky od zadané hustoty hmotnostního toku. solver/set_y.c - dopočte vzdálenosti bodů sítě od stěn. solver/testkontroly.c - pomocný program, indikuje, zda výpočet se zdárně ukončil. solver/vyhodnoceni.c - shromáždí vypočtené charakteristiky pro daný profil do vektoru pro -8-
R–5896
optimalizační algoritmus. momenty/msetrvac.f - program pro výpočet momentů setrvačnosti zadaného profilu, používá síťování pomocí programu ANGENER. site/pr2koef.c, sub_prkf.c, pd_pr.c, spoj_profil.c - pomocné programy pro upravení rozložení bodů zadaného profilu (úprava formátu, rozdělení na horní a dolní část, upravení bodů u náběžných hran, spojení částí profilu). site/hgg.c, mvm.c - tvorba „oÿ-sítě okolo profilu, zadána rozteč lopatek. site/rctggrid.c - tvorba obdélníkové kartézské sítě v mezilopatkovém kanálu, parametry dolní levý a dolní pravý bod, poměr rozteče ku délce sítě, počty buněk v jednotlivých směrech. site/set_map_user_01, dira.c, split_msh_map_.c - spojení obou sítí do jedné. site/zredsit.c - vytvoření řidších sítí pro rychlejší výpočet z počáteční podmínky, počet bodů sítě v každém směru musí toto zředění umožňovat.
4
Nastavení programu
Před zahájením výpočtů je nutné zadat do programu požadované údaje. Jedná se především o optimalizační kritéria a definování režimu proudění. Některé změny vyžadují zásahy do zdrojových kódů programu a změnu skriptu, jiné změny vyžadují zadání požadovaných dat do konfiguračních souborů. V případě změn zdrojových kódů nebo skriptů je nutné znovu provést překlad a instalaci programu podle kapitoly 3.1.
4.1
Nastavení dat pro optimalizaci
Optimalizační algoritmus lze ovlivňovat pomocí následujících možností: • Úprava souboru vypocty/bounds1, který obsahuje dolní a horní meze pro jednotlivé optimalizační parametry, které určují tvar profilu (seznam parametrů viz kapitola 2.1). • Úpravou souboru vypocty/xarch77.dat, který obsahuje vektory optimalizačních parametrů pro čtyři výchozí jedince (profily). Doporučuje se jako jeden z nich vzít původní profil a u ostatních tří pozměnit některé parametry. Je možné změnou parametru v kódu optprofil.f90 vynechat tento krok a volit počáteční jedince zcela náhodně. • Úpravou parametrů ve skriptu install.bat, které určují rozsah uvažovaných úhlů vstupního proudu a dále požadavky na výstupní izoentropické Machovo číslo, úhel výstupního proudu a hustotu hmotnostního toku u nově navrhovaných profilů. • Úpravou zdrojového kódu programu optprofil.f90, zejména hodnot parametrů v modulu share. Za důležité lze považovat tyto parametry: (ř. 262) integer, parameter :: PGen(5) = (/n1,n2,n3,n4,n5/) čísla n1 až n4 značí pořadí iterací, kdy bude zapsán mezivýsledek, číslo n5 celkový počet provedených iterací. (ř. 394) real*8, parameter :: bound(3) = (/r1,r2,r3/) kde čísla r1 a r2 znamenají postačující odchylky od výstupního úhlu proudu a hmotnostního toku, které mají navrhované profily splňovat. Hodnota r3 značí požadovaný minimální moment setrvačnosti, kdy u nových profilů může dojít k jeho zmenšení ne o více jak 2 procenta. (ř. 407) real*8,parameter :: fobjub(nobj) = (/r1,r2,r3,r4,r5,r6,r7,r8/) čísla r1 – r8 značí maximální hodnoty kritérií, při jejichž překročení dojde k vyřazení daného profilu z evolučního procesu. Tato kritéria jsou: ztráty kinetické energie (pro pět úhlů náběhu, r1–r5), odchylka úhlu výstupního proudu, odchylka od průtoku a moment setrvačnosti průřezu. Více k ostatním možnostem nastavení programu optprofil lze najít ve zprávě [11]. -9-
R–5896
• Úpravou parametru osdelka v souboru vypocty/solv_para.bat představujícího osovou délku navrhovaných profilů.
4.2
Nastavení parametrů pro generování výpočtových sítí
I když programy generující výpočtové sítě umožňují ovlivnění jejich tvorby pomocí nejrůznějších parametrů, vzájemná provázanost s ostatními programy optimalizačního balíku může vést při nevhodném nastavení k problémům. Je proto doporučeno ponechat výchozí hodnoty. Jedinou výjimkou je nutnost nastavení rozměrů výpočtové oblasti a rozteče profilů. To se provádí změnou parametrů v souboru vypocty/solv_para.bat. Konfigurační soubory řídící tvorbu sítě jsou: • hgg.ini - konfigurační soubor pro „oÿ-síť okolo profilu. • n.map - informace o překrývání sítí, počet řádků udává jednotlivé vrstvy „oÿ-sítě směrem od profilu. Soubory n1.map, n2.map platí pro zředěné sítě, kdy je počet bodů vždy poloviční než u sítě předchozí. • skript zdroje/skript/gen.bat - tento skript řídí tvorbu sítí, argumenty pro jednotlivé programy určují počty bodů sítě, jejich zahuštění směrem k profilu apod. • skript vypocty/solv_para.bat - obsahuje rozměry výpočtové oblasti.
4.3
Nastavení CFD řešiče
Program pro řešení CFD úlohy, stejně jako definování režimu proudění se nastavuje v následujících souborech. Jejich úpravu je třeba provést před spuštěním skriptu install.bat, který soubory zkopíruje na určená místa. • set_data/blk0.ini - konfigurace prvního bloku sítě (kartézská síť v mezilopatkovém kanálu). Řádky souboru začínají vždy klíčovým slovem, následovaným hodnotou. Pokud je vyžadována jedna hodnota a je jich zadáno více, platná je první v pořadí. Mezi důležité parametry patří: op1 M N - typ a varianta okrajové podmínky na pravé hranici daného bloku sítě, op2 M N - typ a varianta okrajové podmínky na horní hranici daného bloku sítě, op3 M N - typ a varianta okrajové podmínky na levé hranici daného bloku sítě, op4 M N - typ a varianta okrajové podmínky na dolní hranici daného bloku sítě, - M=0 - vstupní okrajová podmínka, - N=0 - preference celkových stavových veličin a úhlu náběhu (p0 , T0 , α), - M=1 - výstupní okrajová podmínka, - N=0 - konstantní hodnota statického tlaku, - N=1 - integrální hodnota statického tlaku, - M=2 - podmínka na stěně, - N=0 - adiabatická vazká stěna, - N=1 - nevazká stěna (rovina symetrie), - M=3 - podmínka na vnitřní hranici, N je číslo sousedního bloku (číslováno od nuly), p1 M - M je hodnota statického tlaku na hranici op1 (pro hranici opn by analogicky bylo pn), p03 M - M je hodnota celkového tlaku na hranici op3, T03 M - M je hodnota celkové teploty na hranici op3, al3 M - M je hodnota úhlu vstupujícího proudu na hranici op3. Tato hodnota je přepsána skriptem install.bat tak, aby se řešilo proudění pro úhly ze zadaného intervalu (viz kap. 4.1), kw_k3 M - M je hodnota intenzity turbulentní kinetické energie na hranici op3, kw_w3 M - M je hodnota útlumu turbulentní kinetické energie na hranici op3, - 10 -
R–5896
bl2 M N - M je číslo sousedního bloku k hranici op2, N je číslo hranice sousedního bloku, zmenšené o jedna. Je třeba zmínit, že hodnoty tlaku, teploty apod. se zadávají normované podle vztahů (19)– (22). Při změně souborů je třeba mít na paměti, že je nutné stejně změnit i soubory pro řidší sítě v adresářích m1 a m1. • set_data/mblk.ini - konfigurační soubor s popisem proudění, názvy souborů, nastavení řešiče. Má stejnou strukturu jako výše popsaný soubor blk0.ini. Mezi důležité parametry, které může být třeba změnit, patří: mi M - M udává maximální počet iterací, mi_lin M - M je maximální počet iterací lineárního řešiče, eps M - M udává požadovaný řád přesnosti řešení (pro ukončení výpočtu), it_bat M - M je počet iterací, po kterém se spustí uživatelem definovaný skript (inf.bat, tedy vyhodnocení ztrát a dalších charakteristik), model M - M udává typ fyzikálního modelu (0 - nevazké proudění, 1 - laminární proudění, 2 - turbulentní proudění), time_rad M N - M udává řád přesnosti v čase (0 - první řád, 1 - druhý řád), N udává počet duálních iterací, space_rad M - M udává řád přesnosti v prostoru (0 - první řád, 1 - druhý řád), dt_const - zda se časový krok určuje v každé iteraci (M=0) nebo je konstantní během celého výpočtu (M=1), ka M - M je hodnota Poissonovy adiabatické konstanty, R M - M je hodnota univerzální měrné plynové konstanty, Pr_lam M - M udává hodnotu laminárního Prandtlova čísla, Pr_kw M - M udává hodnotu turbulentního Prandtlova čísla, kw_b_w, kw_b_k, kw_s_w, kw_s_k, kw_s_d, kw_a_w - koeficienty turbulentního modelu, w_n M - M udává hodnotu charakteristické rychlosti (používá se při normování), l_n M - M udává hodnotu charakteristické délky (používá se při normování), r_n M - M udává hodnotu charakteristické hustoty (používá se při normování). • set_data/time - nastavení časového kroku. • inf.bat - skript, který se spouští pravidelně během výpočtu každou n-tou iteraci – redukce dat (je generován automaticky při instalaci programu). • blk0.sav, blk0_wk.sav - proudové pole s počáteční podmínkou pro nejřidší sítě (první blok, obdobně blk1.sav). Soubory již vytvořeny pro přednastavený rozměr sítí.
4.4
Úprava skriptů
Veškerý výpočet je automatizovaný pomocí skriptů. Jejich úpravou je možno ovlivnit chování programu, kromě výše uvedených nastavení lze také ovlivnit vytíženost procesorů použitého stroje. Protože potřebujeme v každé iteraci optimalizačního algoritmu vypočítat charakteristiky čtyř profilů pro pětici různých vstupních úhlů, dostáváme 4 × 5 CFD úloh. Ve skriptu vypocty/solv_para.bat tomu odpovídají řádky echo "vypocet CFD" ./solver.bat j1/a1 ./solver.bat j1/a2 ./solver.bat j1/a3 ./solver.bat j1/a4 ./solver.bat j1/a5 wait ./solver.bat j2/a1 ./solver.bat j2/a2
$roztec $roztec $roztec $roztec $roztec
> > > > >
j1/a1/rez.log j1/a2/rez.log j1/a3/rez.log j1/a4/rez.log j1/a5/rez.log
& & & & &
$roztec > j2/a1/rez.log & $roztec > j2/a2/rez.log &
- 11 -
R–5896
Znak ”‘&”’ na konci řádku značí, že daný příkaz je spuštěn na pozadí a není nutné čekat na jeho ukončení. Příkaz wait pak zajistí pokračování skriptu, až jsou dokončeny všechny předchozí příkazy. Umístěním příkazů wait lze tedy určit počet souběžně probíhajících výpočtů, tedy vytížení procesorů (tento příklad využije 5 procesorů).
5
Spuštění programu
Spuštění programu a jeho průběh je následující: 1. Spuštění programu optprofil. Pro jeho spuštění je třeba soubor xarch77.dat obsahující vektory optimalizačních parametrů výchozích profilů. Dále je třeba soubor bounds1 určující návrhový prostor (viz kap. 4.1). 2. V každé iteraci je vytvořen soubor eval.dvec s vektory optimalizačních parametrů pro čtyři vybrané jedince. 3. Je automaticky spuštěn skript solv_para.bat. (a) Ze souboru eval.dvec jsou vytvořeny soubory s kompletní sadou návrhových parametrů reprezentujících profil. (b) Pro každého jedince se spustí skripty meshgen.bat. Z parametrů se vytvoří bodová reprezentace profilů a k těm se vytvoří sítě. (c) Postupně (a naráz, dle nastavení) se spustí skripty solver.bat. Ty zajistí výpočet proudového pole a vyhodnocení ztrát a dalších požadovaných charakteristik. (d) Vypočtou se momenty setrvačnosti. (e) Zkompletují se získaná data a předají se zpět programu optprofil pomocí souboru eval.res, aby mohl určit novou generaci jedinců.
6
Výstupní data programu
Výsledkem běhu programu jsou datové soubory xarchiv-
.dat a farchiv-.dat, obsahující archiv vektorů optimalizačních parametrů dosud nalezených jedinců z paretovské fronty a jejich charakteristik. Číslo n udává stav k n-té iteraci genetického algoritmu. Současně jsou po každé iteraci ukládány soubory xarchtemp.dat a farchtemp.dat s aktuálním stavem archivu. Optimalizační parametry v souborech xarch... jsou uvedeny v tabulce kapitoly 2.1, označené hvězdičkou. Hodnoty jednotlivých optimalizačních kritérií navržených profilů, uložené v souborech farch... jsou v tomto pořadí: ztráty kinetické energie (pro jednotlivé úhly), odchylka úhlu výstupního proudu, odchylka od průtoku a moment setrvačnosti průřezu. Zároveň jsou do adresáře Archiv ukládány postupně všechny testované profily včetně příslušných proudových polí.
7
Závěr
Uvedená metoda optimalizace využívající mikrogenetický algoritmus vykazuje schopnosti úspěšně řešit problém návrhu optimálního tvaru profilu lopatky. Navržené tvary přitom dosahují snížení ztrát kinetické energie v širokém rozsahu režimů. Poděkování Tento výsledek vznikl za finanční podpory Technické agentury České republiky, v rámci projektu TA02021336 Výzkum a vývoj malorozměrového turbínového stupně.
- 12 -
R–5896
LITERATURA [1] Pacák A., Krivánka D., Synáč J., Šimka Z.: Parametrizace ŠKODA AP1 - nový popis profilových mříží. Sborník Současné trendy při návrhu a výpočtu turbostrojů, Praha, 2009 [2] Šimák J.: Param TL – software pro parametrizaci profilu turbínové lopatky. Zpráva VZLÚ R–5576, 2012 [3] Straka P.: Vývoj software pro výpočet nestacionárního turbulentního proudění v přímých lopatkových mřížích. Zpráva VZLÚ R–4605, 2009 [4] Kok Johan C.: Resolving the Dependence on Free-stream Values for k-ω Turbulence Model. AIAA Journal, Vol. 38, No. 7, July 2000 [5] Straka P.: Higher order chimera grid interface for transonic turbomachinery application. Finite Volumes for Complex Application VI, pp.751-759, Prague, 2011 [6] Němec M., Jelínek T., Mackovič M.: Aerodynamické měření a vyhodnocení přímé lopatkové mříže. Zpráva VZLÚ R–5163, 2011 [7] Dolejší V.: software ANGENER 3.0. Matematicko-fyzikální fakulta, Univerzita Karlova v Praze, (http://www.karlin.mff.cuni.cz/ dolejsi/angen/angen.htm) [8] Sz˝ oll˝os A., Šmíd M., Hájek J.: Aerodynamic Optimization via Multi-objective Micro-genetic Algorithm with Range Adaptation, Knowledge-Based Reinitialization, Crowding and ǫDominance. Advances in Engineering Software, Vol.40, No.6, 2009 [9] Hájek J., Sz˝ oll˝ os A., Šístek J.: A new mechanism of maintaining diversity of Pareto archive in multi-objective optimization. Advances in Engineering Software, Vol.41, No.7-8, pp.10311057, 2010 [10] Skalický T.: LASPack Reference Manual, (http://www.netlib.org/linalg/laspack.tgz) [11] Sz˝ oll˝os A., Lahuta M.: Optimalizace profilů pomocí programu OPTPROFIL v.2012. Zpráva VZLÚ R–5458, 2012, (http://www.vzlu.cz/cz/transfer-vysledku/software-r/software-volneke-stazeni)
- 13 -
R–5896
Výzkumný a zkušební letecký ústav, a. s., Beranových 130, 199 05 Praha – Letňany
DOKUMENTAČNÍ LIST ZPRÁVY 1. Cˇ´ıslo zpra´vy
R–5896
3. Cˇ´ıslo zaka´zky
2. Datum vyda´nı´
prosinec 2013
4. Pocˇet stran
J7R310
14 + CD
5. Ko´d zverˇejneˇnı´
VER
6. Na´zev
Software a metodika pro potrˇeby optimalizace tvarova´nı´ lopatek axia´lnı´ho prˇetlakove´ho stupneˇ 7. Autorsky´ u´tvar (zkratka – cˇ´ıslo – na´zev)
AER – 3100 – Aerodynamika 8. Autor/rˇi (jme´no, podpis)
Mgr. Jan Sˇima´k 9. Odpoveˇdny´ pracovnı´k (jme´no, podpis)
Ing. Toma´sˇ Jelı´nek
Ing. Petr Straka, PhD. 10. Vedoucı´ u´tvaru (jme´no, podpis)
Mgr. Andra´s Sz˝oll˝os 11. Technicky´ rˇeditel (jme´no, podpis)
Ing. Jirˇ´ı Fiala
Ing. Viktor Kucˇera
12. Abstrakt
Tato zpráva popisuje program pro optimalizaci tvaru profilu turbínové lopatky. Jedná se o programový balík, který zahrnuje parametrizační program, genetický optimalizační algoritmus a program pro vyhodnocování jednotlivých návrhů pomocí CFD metod. Program se snaží nalézt návrh profilu, který minimalizuje profilové ztráty kinetické energie a celkového tlaku za současného zachování předepsaných hodnot výstupního úhlu náběhu, hmotnostního toku a momentu setrvačnosti průřezu.
13. Klı´cˇova´ slova
optimalizace, turbínová lopatka, profil, parametrizace, genetický algoritmus
- 14 -