=Paper= {{Paper |id=Vol-1482/521 |storemode=property |title=Численное решение кинетических уравнений для высокоскоростных течений разреженного газа (Numerical solution of kinetic equations for high-speed rarefied gas flows) |pdfUrl=https://ceur-ws.org/Vol-1482/521.pdf |volume=Vol-1482 }} ==Численное решение кинетических уравнений для высокоскоростных течений разреженного газа (Numerical solution of kinetic equations for high-speed rarefied gas flows)== https://ceur-ws.org/Vol-1482/521.pdf
      Суперкомпьютерные дни в России 2015 // Russian Supercomputing Days 2015 // RussianSCDays.org


      ×èñëåííîå ðåøåíèå êèíåòè÷åñêèõ óðàâíåíèé äëÿ
       âûñîêîñêîðîñòíûõ òå÷åíèé ðàçðåæåííîãî ãàçà∗
                                                                    1,2
                                                   Â.À. Òèòàðåâ

                                                                1              2
                                            ÔÈÖ ÈÓ ÀÍ , ÌÔÒÈ



           Àíàëèç îáòåêàíèÿ ñïóñêàåìûõ àïïàðàòîâ ïðîèçâîëüíîé (ðåàëèñòè÷íîé) îðìû
           òðåáóþò ñîçäàíèÿ ìåòîäîâ êîìïüþòåðíîãî ìîäåëèðîâàíèÿ ïðîñòðàíñòâåííûõ òå-
           ÷åíèé ðàçðåæåííîãî ãàçà.  íàñòîÿùåé ðàáîòå ðàññìàòðèâàåòñÿ çàäà÷à ïîñòðî-
           åíèÿ ýåêòèâíîãî ïàðàëëåëüíîãî ÷èñëåííîãî ìåòîäà è ïàêåòà ïðîãðàìì äëÿ
           ðåøåíèÿ êèíåòè÷åñêîãî óðàâíåíèÿ ñ ìîäåëüíûì èíòåãðàëîì ñòîëêíîâåíèé Å.Ì.
           Øàõîâà íà ñîâðåìåííûõ ìíîãîÿäåðíûõ ÖÏÓ â ïðèëîæåíèè ê àýðîäèíàìèêå ñïóñ-
           êàåìûõ àïïàðàòîâ.  êà÷åñòâå ìîäåëüíîé çàäà÷è ðàññìàòðèâàåòñÿ ðàñ÷åò îáòå-
           êàíèÿ Âîçäóøíî-êîñìè÷åñêîãî àïïàðàòà ÖÀ È.


1. Ââåäåíèå

    Ñîçäàíèå ëåòàòåëüíûõ êîñìè÷åñêèõ àïïàðàòîâ, äâèæóùèõñÿ â âåðõíèõ ñëîÿõ àòìîñå-
ðû, òåñíî ñâÿçàíî ñ çàäà÷àìè ðàñ÷åòà èõ äèíàìè÷åñêîãî è òåïëîâîãî âçàèìîäåéñòâèÿ ñ
âîçäóøíîé ñðåäîé. Îäíèì èç ñïîñîáîâ ðåøåíèÿ ýòèõ çàäà÷ ÿâëÿåòñÿ ÷èñëåííîå ðåøåíèå
êèíåòè÷åñêîãî óðàâíåíèÿ Áîëüöìàíà äëÿ óíêöèè ðàñïðåäåëåíèÿ ìîëåêóë ïî ñêîðîñòÿì ñ
òî÷íûì ëèáî ìîäåëüíûì èíòåãðàëîì ñòîëêíîâåíèé.  íàñòîÿùåé ðàáîòå áóäåò ïðåäñòàâëåíî
îáîáùåíèå ðàçðàáàòûâàåìîãî àâòîðîì ÷èñëåííîãî ìåòîäà ðåøåíèÿ êèíåòè÷åñêîãî óðàâíå-
íèÿ [13℄ íà ñëó÷àé âûñîêîñêîðîñòíûõ òå÷åíèé ðàçðåæåííîãî ãàçà íà íåñòðóêòóðèðîâàííîé
è äâóõóðîâíåâîé ìîäåëè MPI+OpenMP .  êà÷åñòâå ïðèìåðà ïðèìåíåíèÿ ìåòîäà ïðåäñòàâ-
ëåíû ðàñ÷åòû îáòåêàíèÿ ìîäåëè Âîçäóøíî-Êîñìè÷åñêîãî Àïïàðàòà (ÂÊÀ) ÖÀ È.

2. àñ÷åòíûå óðàâíåíèÿ

    Ñîñòîÿíèå ðàçðåæåííîãî ãàçà â òî÷êå x = (x1 , x2 , x3 ) îïðåäåëÿåòñÿ óíêöèåé ðàñïðå-
äåëåíèÿ ìîëåêóë ïî ñêîðîñòÿì f = f (x, ξ), ãäå ξ = (ξ1 , ξ2 , ξ3 )  êîìïîíåíòû âåêòîðà ìî-
ëåêóëÿðíîé ñêîðîñòè ïî íàïðàâëåíèÿì (x1 , x2 , x3 ) ñîîòâåòñòâåííî. Ìàêðîñêîïè÷åñêèå ïå-
ðåìåííûå, òàêèå êàê ÷èñëîâàÿ ïëîòíîñòü n, òåìïåðàòóðà T , äàâëåíèå p, ñðåäíÿÿ ñêîðîñòü
ãàçà u = (u1 , u2 , u3 ) è ïîòîê òåïëà q = (q1 , q2 , q3 ), âûðàæàþòñÿ ÷åðåç óíêöèþ ðàñïðåäåëå-
íèÿ â âèäå èíòåãðàëîâ ïî ïðîñòðàíñòâó ìîëåêóëÿðíûõ ñêîðîñòåé. Äëÿ ïðîâåäåíèÿ ðàñ÷åòîâ
óäîáíåå èñïîëüçîâàòü áåçðàçìåðíûå ïåðåìåííûå. Ïóñòü n∗ , T∗ , l∗  íåêîòîðûå õàðàêòåð-
íûå çíà÷åíèÿ ÷èñëîâîé ïëîòíîñòè, òåìïåðàòóðû è ëèíåéíîãî             ðàçìåðà. Ââåäåì õàðàêòåðíûå
çíà÷åíèÿ äàâëåíèÿ è ñêîðîñòè p∗ = mn∗ Rg T∗ , v∗ = 2Rg T∗ . Ïåðåéäåì ê áåçðàçìåðíûì
                                                                p

ïåðåìåííûì ïî îðìóëàì
         x             n             p             T             u                 ξ              q                  f
 x′ =       ,   n′ =      ,   p′ =      ,   T′ =      ,   u′ =      ,     ξ′ =        ,   q′ =           ,   f′ =          .
         l∗            n∗            p∗            T∗            v∗                v∗            mn∗ v∗3            n∗ v∗3
Ñòåïåíü ðàçðåæåííîñòè ãàçà õàðàêòåðèçóåòñÿ ïàðàìåòðîì ðàçðåæåííîñòè δ , êîòîðûé îá-
ðàòíî ïðîïîðöèîíàëåí ÷èñëó Êíóäñåíà Kn, îïðåäåëåííîìó ïî äëèíå ñâîáîäíîãî ïðîáåãà λ∗ :
                                             l ∗ p∗   8 1                        λ∗
                                        δ=          = √     ,           Kn =        .
                                             µ∗ v ∗  5 π Kn                      l∗
    Äàëåå áóäåì îáîçíà÷àòü áåçðàçìåðíûå âåëè÷èíû òåìè æå áóêâàìè, ÷òî è ðàçìåðíûå,
ïîñêîëüêó ýòî íå ïðèâîäèò ê íåîäíîçíà÷íîñòè. Êèíåòè÷åñêîå óðàâíåíèå Áîëüöìàíà äëÿ
  ∗
      àáîòà ïîääåðæàíà ïðîåêòàìè ÔÔÈ 15-01-07911, 15-07-02986 è ãðàíòîì Ïðàâèòåëüñòâà Ô ïî ïîñòà-

íîâëåíèþ N 220 ïî äîãîâîðó N 11.G34.31.0072, çàêëþ÷åííîãî ìåæäó Ìèíèñòåðñòâîì îáðàçîâàíèÿ è íàóêè

Ô, âåäóùèì ó÷åíûì è ÌÔÒÈ.




                                                          521
   Суперкомпьютерные дни в России 2015 // Russian Supercomputing Days 2015 // RussianSCDays.org


óíêöèè ðàñïðåäåëåíèÿ f ìîëåêóë ïî ñêîðîñòÿì ñ S - ìîäåëüíûì èíòåãðàëîì ñòîëêíîâå-
íèé [4℄ èìååò âèä

                                     ∂f                                              δp
                                ξα       = J,        J = ν(f + − f ),         ν=        ,
                                     ∂xα                                             µ
                          8                   5                            q                   n
                                                     
    f   +
            = fM       1 + (1 − Pr)Sα cα c2 −                  ,   S=           ,    fM =             exp (−c2 ),   (1)
                          5                   2                          nT 3/2             (πT ) 3/2

                       3                                     1                          v
                                            Z                     
                 n, nu, nT + nu2 , q =                     2
                                                    1, ξ, ξ , vv 2 f dξ,            c= √ ,     v = ξ − u.
                       2                                     2                           T
Çäåñü ïðåäïîëàãàåòñÿ ñóììèðîâàíèå ïî ïîâòîðÿþùèìñÿ ãðå÷åñêèì èíäåêñàì â ïðåäåëàõ îò 1
äî 3. Íà ïîâåðõíîñòè òåëÿ èñïîëüçóåòñÿ ãðàíè÷íîå óñëîâèå äèóçíîãî
                                                                √ îòðàæåíèÿ ìîëåêóë
ñ ïîëíîé òåïëîâîé àêêîìîäàöèåé. Â äàëüíåéøåì ïðèíèìàëîñü µ ∼ T , ÷òî ñîîòâåòñòâóåò
ìåæìîëåêóëÿðíîìó âçàèìîäåéñòâèþ ïî çàêîíó æåñòêèõ ñåð.

3. ×èñëåííûé ìåòîä

    Ñòàöèîíàðíîå ðåøåíèå êèíåòè÷åñêîãî óðàâíåíèÿ (1) íàõîäèì ìåòîäîì óñòàíîâëåíèÿ ïî
âðåìåíè êàê ïðåäåë ïðè t → ∞. Â ïðîñòðàíñòâå ìîëåêóëÿðíûõ ñêîðîñòåé íåñîáñòâåííûå
èíòåãðàëû îò óíêöèè ðàñïðåäåëåíèÿ çàìåíèì ñîáñòâåííûìè èíòåãðàëàìè ïî íåêîòîðîé
îãðàíè÷åííîé îáëàñòè, â êîòîðîé ââåäåì íåñòðóêòóðèðîâàííóþ êîíå÷íî-îáúåìíóþ ñåòêó
ñ öåíòðàìè ÿ÷ååê ξj = (ξ1j , ξ2j , ξ3j ). Îáùåå êîëè÷åñòâî óçëîâ ñåòêè îáîçíà÷èì ÷åðåç Nξ .
Ïóñòü Ξk  âåêòîð, êîìïîíåíòàìè êîòîðîãî ÿâëÿþòñÿ k -êîìïîíåíòà ìîëåêóëÿðíîé ñêîðî-
ñòè âî âñåõ óçëàõ ñåòêè Ξk = (ξk1 , ξk2 , ξk3 , . . . ξkNξ )T . Ôóíêöèè f , f (S) áóäåì çàäàâàòü â
öåíòðàõ ÿ÷ååê ñêîðîñòíîé ñåòêè, èíòåðïðåòèðóÿ èõ êàê âåêòîðû äëèíû Nξ ñ êîìïîíåíòàìè
                     (S)
fj = f (t, x, ξj ), fj = f (S) (t, x, ξj ). Êèíåòè÷åñêîå óðàâíåíèå (1) â íåñòàöèîíàðíîé îðìå
ïåðåïèñûâàåòñÿ â âèäå ñèñòåìû èç Nξ óðàâíåíèé:

                               ∂      ∂
                                  f+     (Ξα ◦ f ) = J ,                J = ν(f (S) − f ).                          (2)
                               ∂t    ∂xα
Çäåñü ÷åðåç ◦ îáîçíà÷åíà îïåðàöèÿ ïîêîìïîíåíòíîãî óìíîæåíèÿ äâóõ âåêòîðîâ: c = a ◦ b
 âåêòîð ñ êîìïîíåíòàìè ci = ai bi . àñ÷åòíàÿ îáëàñòü â èçè÷åñêèõ ïåðåìåííûõ ðàçáèâà-
åòñÿ íà êîíòðîëüíûå îáúåìû (ÿ÷åéêè) Vi òåòðàýäàëüíîé, ïèðàìèäàëüíîé, ãåêñàýäðàëüíîé
èëè ïðèçìàòè÷åñêîé îðìû. Èíòåãðèðóÿ óðàâíåíèå (2) èíòåãðèðóåòñÿ ïî ÷åòûðåõìåðíîìó
êîíòðîëüíîìó îáúåìó îáëàñòè Vi × [tn , tn+1 ], ïîëó÷àåì íåÿâíóþ îäíîøàãîâóþ ñõåìó âèäà

                   ∆fi                               1 X n+1
                       = Rin+1 ,     Rin+1 = −               Φ   + Jin+1 ,            ∆fi = fin+1 − fin ,
                   ∆t                               |Vi | l=1 li
                                     Z                                                                              (3)
                           Φn+1
                            li  =         (ξnil ◦ f )ds,    ξnil = n1l Ξ1 + n2l Ξ2 + n3l Ξ3 .
                                    Ail


    ×èñëåííûé ïîòîê Φn+1li  âû÷èñëÿåòñÿ ïî îáû÷íîé îðìóëå ðåøåíèÿ çàäà÷è î ðàñïàäå
ðàçðûâà, èñïîëüçóþùåé çíà÷åíèÿ óíêöèè ðàñïðåäåëåíèÿ, ýêñòðàïîëèðîâàííûå íà ãðàíè
ÿ÷åéêè íàõîäÿòñÿ ñ ïîìîùüþ ïðîöåäóðû ðåêîíñòðóêöèè. Äëÿ ÿ÷ååê ïðîèçâîëüíîé îðìû
èñïîëüçóåòñÿ êóñî÷íî-ëèíåéíîå ïðåäñòàâëåíèå óíêöèè ðàñïðåäåëåíèÿ â ïðîñòðàíñòâåííîé
ÿ÷åéêå, îáåñïå÷èâàþùåå âòîðîé ïîðÿäîê àïïðîêñèìàöèè ïî ïðîñòðàíñòâó. Êîýèöèåí-
òû äàííîãî ïðåäñòàâëåíèÿ âû÷èñëÿþòñÿ ìåòîäîì íàèìåíüøèõ êâàäðàòîâ ñ èñïîëüçîâàíèåì
çíà÷åíèé f â ÿ÷åéêàõ øàáëîíà ðåêîíñòðóêöèè, êîòîðûé îðìèðóåòñÿ ïóòåì ðåêóðñèâíîãî
äîáàâëåíèÿ ê ÿ÷åéêå Vi íåîáõîäèìîãî ÷èñëà åå íåïîñðåäñòâåííûõ ñîñåäåé. Äëÿ ãåêñàýäðàëü-
íûõ ÿ÷ååê ïðåäóñìîòðåíà âîçìîæíîñòü ïåðåêëþ÷åíèÿ íà âû÷èñëåíèå çíà÷åíèé íà ãðàíÿõ


                                                               522
    Суперкомпьютерные дни в России 2015 // Russian Supercomputing Days 2015 // RussianSCDays.org


ÿ÷ååê ïóòåì îäíîìåðíîé èíòåðïîëÿöèè â íàïðàâëåíèè íîðìàëè ê ãðàíè. Äëÿ ïîäàâëåíèÿ
ïàðàçèòíûõ îñöèëëÿöèé íà ðàçðûâàõ äëÿ îáîèõ òèïîâ ðåêîíñòðóêöèè îáû÷íûì îáðàçîì
ââîäèòñÿ îãðàíè÷èòåëü íàêëîíîâ.
    Äëÿ ïîñòðîåíèÿ êîíñåðâàòèâíîé àïïðîêñèìàöèè S-ìîäåëüíîãî èíòåãðàëà ñòîëêíîâåíèé
èñïîëüçóåòñÿ ìåòîä [5℄, â êîòîðîì óðàâíåíèÿ äëÿ ìàêðîñêîïè÷åñêèõ âåëè÷èí âêëþ÷àþò â
ñåáÿ íå òîëüêî çàêîíû ñîõðàíåíèÿ, íî è âåêòîðíîå óðàâíåíèå äëÿ ðåëàêñàöèè âåêòîðà ïîòîêà
òåïëà:
                                                                                                         
                                   1                                   0                        n 
                                                                                                  
                                                                                                  
                     Nξ 
                    X             ξj      
                                            (S)
                                                              
                                                                         0      
                                                                                 
                                                                                                    u 
                                                                                                      
            H(W ) =     
                        
                                            (f
                                            j   − f j )ω j + 
                                                              
                                                                                  = 0,
                                                                                               W =
                                                                                                   
                                                                                                       .
                                                                                                                 (4)
                    j=1 
                                  ξj2     
                                           
                                                              
                                                                         0      
                                                                                 
                                                                                                    T 
                                                                                                      
                                                                                                  
                                                                                                  
                                  vj vj2                                2 Pr q                            q

Äëÿ êàæäîé ÿ÷åéêè i ñèñòåìà èç âîñüìè óðàâíåíèé (4) ðåøàåòñÿ ìåòîäîì Íüþòîíà

                                                                                                       ∂H
               M (W s−1 )(W s − W s−1 ) = −H(W s−1 ),                     s = 1, 2, . . . ,      M=       .       (5)
                                                                                                       ∂W
    Ïðîâîäÿ ïðèáëèæåííóþ ëèíåàðèçàöèþ (3) ïî âðåìåíè è ãðóïïèðóÿ ÷ëåíû, ïîëó÷àåì
                                                    !                                      !
                               ∆t X ∂Φnil                         ∆t X ∂Φnil
              (1 + ∆tνin )Iξ +                            ◦ ∆fi +                              ◦ ∆fil = ∆tRin .   (6)
                               |Vi | l=1 ∂fin                     |Vi | l=1 ∂finl

Çäåñü Iξ = diag(1, . . . , 1)
                                T  åäèíè÷íàÿ ìàòðèöà ðàçìåðíîñòè N . Ïðè ðåøåíèè ñèñòåìû (6)
                                                                   ξ
ïîëàãàåì, ÷òî â ëåâîé ÷àñòè ÷èñëåííûé ïîòîê àïïðîêñèìèðóåòñÿ ïðîòèâîïîòî÷íîé ñõåìîé
ïåðâîãî ïîðÿäêà. Äàëåå ïðîèçâîäèòñÿ ïðèáëèæåííàÿ àêòîðèçàöèÿ ðàçðåæåííîé ìàòðèöû
ñèñòåìû íà îñíîâå ïîäõîäà, ïðåäëîæåííîãî â [6℄, òàê ÷òî ñèñòåìà ëåãêî ðåøàåòñÿ â äâà
ïðîõîäà.  êà÷åñòâå êðèòåðèÿ ñõîäèìîñòè ê ñòàöèîíàðíîìó ðåøåíèþ èñïîëüçóåòñÿ óñëî-
âèå ìàëîñòè íåâÿçêè â äèñêðåòíûõ çàêîíàõ ñîõðàíåíèÿ ìàññû, èìïóëüñà è ýíåðãèè ãàçà â
èíòåãðàëüíîé íîðìå:

                                                                    X                T
                                |eni | · |Vi | ≤ 10−5 ,     eni =         1, ξ, ξ 2         n
                          X
                                                                                           Rij ωα .               (7)
                                                                                       j
                           i                                        j

    Ïðÿìîå ïðèìåíåíèå îïèñàííîé ðàçíîñòíîé ñõåìû äëÿ âûñîêîñêîðîñòíûõ òå÷åíèé çà-
òðóäíåíî â ñâÿçè ñ áûñòðûì ðîñòîì ÷èñëà ÿ÷ååê ñêîðîñòíîé ñåòêè êàê óíöèè ÷èñëà Ìàõà
                                                                                 3
íàáåãàþùåãî ïîòîêà. Äëÿ òèïè÷íîãî ðàñ÷åòà Nξ ≈ (5M∞ ) .  èìåþùåéñÿ ëèòåðàòóðå ïðåä-
ëàãàåòñÿ èñïîëüçîâàòü àäàïòèâíóþ ñåòêó òèïà âîñüìåðè÷íîãî äåðåâà [7, 8℄.  íàñòîÿùåé
ðàáîòå äëÿ ðàñ÷åòîâ ïîä íóëåâûì óãëîì àòàêè ïðåäëàãàåòñÿ èñïîëüçîâàòü áîëåå ïðîñòîé ìå-
òîä, ïîäõîäÿùèé äëÿ èíæåíåðíûõ ðàñ÷åòîâ.  ïðîñòðàíñòâå ñêîðîñòåé îêîëî òî÷åê ξ = U∞
(íàáåãàþùèé ïîòîê) è ξ = 0 (ïîâåðõíîñòü òåëà) ââîäÿòñÿ êóáè÷åñêèå îáëàñòè ñ øàãîì ñåòêè
∆ξ =√0.5. Â îñòàëüíîé îáëàñòè èñïîëüçóþòñÿ òåòðàýäðû, ðàçìåð êîòîðûõ ïëàâíî ðàñòåò äî
≈ 0.5 T0 , ãäå T0 - òåìïåðàòóðà òîðìîæåíèÿ.

4. Ïðîãðàììíûé êîìïëåêñ  Íåñâåòàé-3Ä

    Îïèñàííûé ÷èñëåííûé ìåòîä ðåøåíèÿ êèíåòè÷åñêîãî óðàâíåíèÿ ðåàëèçîâàí â ïàêåòå
ïðîãðàìì  Íåñâåòàé-3Ä [1, 9℄, ñòðóêòóðà êîòîðîãî ïðåäñòàâëåíà íà èã. 1. Ïàêåò ñîñòîèò
èç âû÷èñëèòåëüíîãî ÿäðà (áàçîâîé áèáëèîòåêè), íåïîñðåäñòâåííî êèíåòè÷åñêîãî ðåøàòåëÿ
è ïðåïðîöåññîðîâ ïðîñòðàíñòâåííîé è ñêîðîñòíîé ñåòîê. Èñõîäíûé êîä ïàêåòà íàïèñàí íà
ÿçûêå Fortran 2008 ñ ýëåìåíòàìè îáúåêòíî-îðèåíòèðîâàííîãî ïðîãðàììèðîâàíèÿ. ßäðî ïà-
êåòà ïðåäñòàâëÿåò ñîáîé íàáîð ìîäóëåé, ðåàëèçóþùèõ áàçîâûå îïåðàöèè, íåîáõîäèìûå äëÿ



                                                            523
   Суперкомпьютерные дни в России 2015 // Russian Supercomputing Days 2015 // RussianSCDays.org



                                                           Препроцессор пространственной сетки
                                             •Чтение сетки в форматах Neutral и StarCD 3.2.0
                                             •Разбиение сетки на блоки для проведения расчетов
                                             •Специальный формат сеток




                                                                Вычислительное ядро
                                    •Чтение сетки в форматах Neutral & StarCD, построение графов связности
                                    •Процедуры реконструкции функций
                                    •Процедуры для использования MPI и OpenMP
                                    •Вывод поверхностных и пространственных данных
                                    •Параллельный ввод/вывод с использованием MPI 2.0




                              Кинетический решатель                                             Препроцессор скоростной сетки
                 •Модели Крука и Шахова для одноатомного газа                        •Чтение сетки в форматах Neutral и StarCD 3.2.0
                 •Неявная   схема     типа    LU-SGS/явная    схема   типа           •Учет плоскостей симметрии
                 предиктор-корректор                                                 •Вывод сетки и квадратурных весов
                 •Вычисление макроскопических величин
                 •Обработка данных




                            èñ. 1. Ñòðóêòóðà ïàêåòà ïðîãðàìì  Íåñâåòàé-3Ä.




ïðîâåäåíèÿ ðàñ÷åòîâ. Ïðåïðîöåññîð ïàêåòà èñïîëüçóåòñÿ äëÿ ðàçáèåíèÿ ïðîñòðàíñòâåííûõ
ñåòîê íà áëîêè äëÿ ïðîâåäåíèÿ ïàðàëëåëüíûõ âû÷èñëåíèé íà ìíîãîáëî÷íûõ ñåòêàõ. Êè-
íåòè÷åñêèé ðåøàòåëü ÿâëÿåòñÿ íàäñòðîéêîé íàä ÿäðîì è ðåàëèçóåò íåÿâíóþ ðàçíîñòíóþ
ñõåìó (3) ðåøåíèÿ êèíåòè÷åñêîãî óðàâíåíèÿ. Ïðåïðîöåññîð ñêîðîñòíîé ñåòêè îáðàáàòûâàåò
âõîäíûå àéëû ñ ó÷åòîì ïëîñêîñòåé ñèììåòðèè è âûâîä â àéë îêîí÷àòåëüíûå óçëû è âåñà
êâàäðàòóðíîé îðìóëû.


                                                                                                      Z




                                                                                            X                  Y




                                                                                        0


                                                                                       -5


                                                                                      -10
                                                                                      z




                                                                                      -15

                                                                                                                                                          -20
                                                                                      -20
                                                                                                                                                    -10

                                                                                      -25
                                                                                                                                                0
                                                                                         -25
                                                                                                -20                                         x
                                                                                                                                       10
                                                                                                      -15
                                                                                                          y   -10                 20
                                                                                                                    -5
                                                                                                                         0   30




èñ. 2. àñ÷åòíûå ñåòêè â èçè÷åñêîì (ñëåâà) è ñêîðîñòíîì (ñïðàâà, ïîêàçàíà ÷åòâåðòü îáëàñòè)
ïðîñòðàíñòâàõ.



    Äëÿ óñêîðåíèÿ âû÷èñëåíèé ìåòîä ðåøåíèÿ ðåàëèçîâàí íà ìíîãîïðîöåññîðíûõ ÝÂÌ ñ
ðàçáèåíèåì ðàñ÷åòíîé ñåòêè íà áëîêè â àçîâîì ïðîñòðàíñòâå äâóìÿ ñïîñîáàìè. Ïðè èñ-
ïîëüçîâàíèè ïàðàëëåëüíîãî àëãîðèòìà                                   ðàçáèåíèåì ñåòêè â ñêîðîñòíîì ïðîñòðàíñòâå êàæ-
äûé MPI ïðîöåññ ñòðîèò ðåøåíèå óðàâíåíèÿ íà îäíîì øàãå ïî âðåìåíè äëÿ ñâîåãî íàáîðà
ñêîðîñòíûõ òî÷åê äëÿ âñåé ïðîñòðàíñòâåííîé ñåòêå è íàõîäèò âêëàäû â èíòåãðàëüíûå ñóì-
ìû äëÿ âû÷èñëåíèÿ ìàêðîñêîïè÷åñêèõ âåëè÷èí (5) è íåâÿçêè (7), êîòîðûå ñêëàäûâàþòñÿ
ïîìîùüþ MPI_AllRedu e. Âòîðîé ïîäõîä ê ïîñòðîåíèþ ïàðàëëåëüíûõ àëãîðèòìîâ èñïîëü-
çóåò äåêîìïîçèöèþ ñåòêè â èçè÷åñêîì ïðîñòðàíñòâå; ïðè ýòîì ñêëàäûâàíèå ÷àñòè÷íûõ
èíòåãðàëüíûõ ñóì íå òðåáóåòñÿ. Cðàâíåíèå äàííûõ ïîäõîäîâ ê îðãàíèçàöèè ïàðàëëåëüíûõ
âû÷èñëåíèé       ïîìîùüþ íåÿâíîé îäíîøàãîâîé ñõåìû âòîðîãî ïîðÿäêà àïïðîêñèìàöèè ïî


                                                                          524
   Суперкомпьютерные дни в России 2015 // Russian Supercomputing Days 2015 // RussianSCDays.org


ïðîñòðàíñòâó (6) ñ èñïîëüçîâàíèåì MPI ïðîâîäèëîñü â [2, 3℄. Ïîêàçàíà õîðîøàÿ ìàñøòàáè-
ðóåìîñòü êîäà íà 4-õ ÿäåðíûõ ïðîöåññîðàõ Intel Xeon äî 512 âû÷èñëèòåëüíûõ ÿäåð.
    Â íàñòîÿùåé ðàáîòå èñïîëüçóåòñÿ ðàçáèåíèå ñêîðîñòíîé ñåòêè êàê áîëåå óäîáíîå äëÿ
ñòàöèîíàðíûõ ðàñ÷åòîâ.  [2, 3℄ ïîêàçàíî, ÷òî òàêàÿ îðãàíèçàöèÿ âû÷èñëåíèé ìîæåò ïðè-
âîäèòü ê ïîòåðå ìàñøòàáèðóåìîñòè íà áîëüøîì ÷èñëå ÿäåð èç-çà èñïîëüçîâàíèÿ êîëëåê-
òèâíûõ îïåðàöèé â (5), (7). Òàêæå ñóùåñòâóþò ñóùåñòâåííûå îãðàíè÷åíèÿ íà ðàçìåð ïðî-
ñòðàíñòâåííîé ñåòêè, ïîñêîëüêó âñå ñòðóêòóðà ñâÿçíîñòè õðàíèòñÿ íà êàæäîì ÿäðå. ×òîáû
îáîéòè óïîìÿíóòûå ïðîáëåìû ïðè îðãàíèçàöèè ïàðàëëåëüíûõ âû÷èñëåíèé íà ñîâðåìåííûõ
ïðîöåññîðàõ ñ áîëüøèì ÷èñëîì èçè÷åñêèõ ÿäåð, â ïðîãðàììíîì êîìïëåêñå èñïîëüçóåòñÿ
ìíîãîóðîâíåâîå ðàñïàðàëëåëèâàíèå, êîòîðîå àêòèâíî ðàçâèâàåòñÿ â ïîñëåäíèå ãîäû â ïðè-
ëîæåíèè ê ãàçîäèíàìè÷åñêèì ðàñ÷åòàì [10, 11℄.  äâóõóðîâíåâîé ìîäåëè ÷èñëî MPI ïðî-
öåññîâ Nmpi ðàâíÿåòñÿ ÷èñëó èñïîëüçóåìûõ óçëîâ, ëèáî ïðîöåññîðîâ; ÷èñëî OpenMP íèòåé
íà 1 MPI ïðîöåññ Nomp = Ncore /Nmpi . Ïðåäâàðèòåëüíûå ðàñ÷åòû ïîêàçûâàþò, ÷òî íà ñîâðå-
ìåííûõ ìíîãîÿäåðíûõ ïðîöåññîðàõ Intel Xeon (12-18 èçè÷åñêèõ ÿäåð) ãèáðèäíàÿ âåðñèÿ
ñ÷èòàåò ïðèìåðíî â 1.5 ðàçà áûñòðåå âåðñèè êîäà ñ èñïîëüçîâàíèåì òîëüêî MPI.




èñ. 3. àñïðåäåëåíèå äàâëåíèÿ â ïëîñêîñòè ñèììåòðèè è íà ïîâåðõíîñòè òåëà (ñëåâà) è ïîòîêà
òåïëà ïî ïîâåðõíîñòè (ñïðàâà).




5. Òåñòîâàÿ çàäà÷à

     êà÷åñòâå èëëþñòðàöèè ïðèìåíåíèÿ ïàêåòà ïðîãðàìì ê çàäà÷àì âíåøíåé àýðîäèíàìè-
êè ïîñòðîèì ãèïåðçâóêîâîå ïîëå òå÷åíèÿ âîêðóã Âîçäóøíî-Êîñìè÷åñêîãî Àïïàðàòà (ÂÊÀ)
ÖÀ È. Ìîäåëü ÂÊÀ èìååò ñëîæíóþ îðìó è ñîñòîèò èç þçåëÿæà ñ çàòóïëåííûì íîñêîì,
äâóõ êðûëüåâ, âåðòèêàëüíîãî êèëÿ è ùèòêà. Îáùàÿ äëèíà òåëà ñî ùèòêîì - 10 ìåòðîâ.
Îáùàÿ äëèíà ÂÊÀ è çíà÷åíèÿ äàâëåíèÿ è òåìïåðàòóðû â íàáåãàþùåì ïîòîêå âûáèðàþò-
ñÿ â êà÷åñòâå ìàñøòàáîâ äëèíû l∗ , p∗ , T∗ . Òåìïåðàòóðà ïîâåðõíîñòè ïðèíèìàëàñü ðàâíîé
òåìïåðàòóðå íàáåãàþùåãî ïîòîêà (õîëîäíîå òåëî).
    Äëÿ ðàñ÷åòîâ èñïîëüçîâàëèñü ñóïåðêîìïüþòåðû ÍÈÂÖ Ì Ó èì. Ì.Â. Ëîìîíîñîâà è
Ëàáîðàòîðèè ìàòåìàòè÷åñêîãî ìîäåëèðîâàíèÿ íåëèíåéíûõ ïðîöåññîâ â ãàçîâûõ ñðåäàõ ÌÔ-
ÒÈ.  ðàáîòå [3℄ ïîñòðîåíî îáòåêàíèå ÂÊÀ äëÿ ÷èñëà Ìàõà íàáåãàþùåãî ïîòîêà M∞ = 2.2.
Äâóõóðîâíåâûé MPI+OpenMP ìåòîä è àäàïòèâíàÿ ñêîðîñòíàÿ ñåòêà ïîçâîëèëè ïîñòðîèòü
ðåøåíèå äëÿ áåçðàçìåðíîé ñêîðîñòè íàáåãàþùåãî ïîòîêà U∞ = 10, ÷òî ñîîòâåòñòâóåò ÷èñëó
Ìàõà M∞ = 10.95. Ïàðàìåòð ðàçðåæåííîñòè ïðèíèìàëñÿ ðàâíûì δ = 100. àñ÷åòíàÿ ãåê-
ñàýäðàëüíàÿ ñåòêà â èçè÷åñêîì ïðîñòðàíñòâå èñïîëüçîâàëà ñèììåòðèþ ÂÊÀ è ñîñòîÿëà
èç 305 òûñÿ÷ ÿ÷ååê. Ñêîðîñòíàÿ ñåòêà ñîñòîÿëà èç 26 òûñÿ÷ ÿ÷ååê. Òàêèì îáðàçîì, îáùåå
÷èñëî ðàñ÷åòíûõ ÿ÷ååê â øåñòèìåðíîì ïðîñòðàíñòâå ðàâíÿëîñü 7.8 ìèëëèàðäàì, ñì èã. 2.
    ×èñëåííûé àëãîðèòì ñîøåëñÿ ê ñòàöèîíàðíîìó ðåøåíèþ çà 24 ÷àñà ïðè èñïîëüçîâà-


                                               525
   Суперкомпьютерные дни в России 2015 // Russian Supercomputing Days 2015 // RussianSCDays.org


íèè ñõåìû âòîðîãî ïîðÿäêà àïïðîêñèìàöèè è 144 ÿäåð. Ôèã. 3 èëëþñòðèðóåò ðàñïðåäåëåíèå
äàâëåíèÿ è ïîòîêà òåïëà â ïëîñêîñòè ñèììåòðèè è íà ïîâåðõíîñòè ìîäåëè. Âèäíà òèïè÷-
íàÿ êàðòèíà ñâåðõçâóêîâîãî òå÷åíèÿ âîêðóã çàòóïëåííîãî õîëîäíîãî òåëà. Âáëèçè íîñêà
òåëà íà÷èíàåò îðìèðîâàòüñÿ îòîøåäøàÿ óäàðíàÿ âîëíà. Ïîñêîëüêó ëîêàëüíûé ïàðàìåòð
ðàçðåæåííîñòè, ïîñ÷èòàííûé ïî ðàäèóñó çàêðóãëåíèÿ íîñêà äîñòàòî÷íî ìàë, ðîíò âîëíû
ñèëüíî ðàçìûò. Äëÿ âûáðàííîãî ðåæèìà îáòåêàíèÿ çà òåëîì îáðàçóåòñÿ çîíà âîçâðàòíîãî
òå÷åíèÿ (íå ïîêàçàíà).


6. Âûâîäû

   Ïðåäñòàâëåíû ïåðâûå ðåçóëüòàòû ìîäåëèðîâàíèå ñâåðõçâóêîâîãî îáòåêàíèÿ ñïóñêàå-
ìîãî àïïàðàòà íà îñíîâå ÷èñëåííîãî ðåøåíèÿ êèíåòè÷åñêîãî óðàâíåíèÿ ñ èñïîëüçîâàíè-
åì äâóõóðîâíåâîãî ðàñïàðàëëåëèâàíèÿ MPI+OpenMP . Ïîêàçàíà ïðèíöèïèàëüíàÿ âîçìîæ-
íîñòü ïðîâåäåíèÿ òàêèõ ðàñ÷åòîâ ïðîãðàììíûì êîìïëåêñîì  Íåñâåòàé-3Ä.  íàñòîÿùåå
âðåìÿ âåäåòñÿ ðàáîòà ïî ðåàëèçàöèè ìåòîäà íà óñêîðèòåëÿõ Intel Xeon Phi.


Ëèòåðàòóðà

 1. Â.À. Òèòàðåâ. Íåÿâíûé ÷èñëåííûé ìåòîä ðàñ÷åòà ïðîñòðàíñòâåííûõ òå÷åíèé
   ðàçðåæåííîãî ãàçà íà íåñòðóêòóðèðîâàííûõ ñåòêàõ.           Æ. âû÷èñë. ìàòåì. è ìàòåì.
   èç., 50(10):18111826, 2010.
 2. Ì. Äóìáñåð, Â.À. Òèòàðåâ, Ñ.Â. Óòþæíèêîâ. Íåÿâíûé ìíîãîáëî÷íûé ìåòîä ðåøåíèÿ
   êèíåòè÷åñêîãî óðàâíåíèÿ íà íåñòðóêòóðèðîâàííûõ ñåòêàõ.            Æ. âû÷èñë. ìàòåì. è
   ìàòåì. èç., 53(5):762782, 2013.
 3. V.A. Titarev, M. Dumbser, S.V. Utyuzhnikov. Constru tion and        omparison of parallel
   impli it kineti                                   J. Comput. Phys., 256:1733, 2014.
                     solvers in three spatial dimensions.


 4. Å.Ì. Øàõîâ. Îá îáîáùåíèè ðåëàêñàöèîííîãî êèíåòè÷åñêîãî óðàâíåíèÿ Êðóêà. Èçâ.
    ÀÍ ÑÑÑ. ÌÆ , (5):142145, 1968.
 5. V.A. Titarev. Conservative numeri al methods for model kineti equations. Computers &
    Fluids, 36(9):1446  1459, 2007.
 6. I.S. Men'shov and Y. Nakamura. An impli it adve tion upwind splitting s heme for
   hypersoni   air ows in thermo hemi al nonequilibrium. In A Colle tion of Te hni al Papers
   of 6th Int. Symp. on CFD, volume 2, page 815. Lake Tahoe, Nevada, 1995.
 7. R.R. Arslanbekov, V.I. Kolobov, A.A. Frolova. Kineti      solvers with adaptive mesh in phase
   spa e.   Physi al Review E, 88:063301, 2013.
 8. C. Baranger, J. Claudel, N. Herouard, and L. Mieussens. Lo ally rened dis rete velo ity
   grids for stationary rareed ow simulations.     J. Comput. Phys., 257:572593, 2014.
 9. Â.À. Òèòàðåâ. Ïðîãðàììíûé êîìïëåêñ Íåñâåòàé-3Ä ìîäåëèðîâàíèÿ ïðîñòðàíñòâåííûõ
   òå÷åíèé îäíîàòîìíîãî ðàçðåæåííîãî ãàçà.         Íàóêà è îáðàçîâàíèå. Ì ÒÓ èì. Í.Ý.
   Áàóìàíà. Ýëåêò. æóðíàë, (6):124154, 2014.
10. È. Â. Àáàëàêèí, Ï.À. Áàõâàëîâ, À.Â.        îðîáåö, À.Ï. Äóáåíü, Ò.Ê. Êîçóáñêàÿ.
   Ïàðàëëåëüíûé ïðîãðàììíûé êîìïëåêñ NOISETTE äëÿ êðóïíîìàñøòàáíûõ ðàñ÷åòîâ
   çàäà÷ àýðîäèíàìèêè è àýðîàêóñòèêè.        Âû÷. ìåò. ïðîãðàììèðîâàíèå, 13(3):110125,
   2012.




                                               526
   Суперкомпьютерные дни в России 2015 // Russian Supercomputing Days 2015 // RussianSCDays.org


11. À.Â. îðîáåö. Ïàðàëëåëüíàÿ òåõíîëîãèÿ ÷èñëåííîãî ìîäåëèðîâàíèÿ çàäà÷ ãàçîâîé
    äèíàìèêè àëãîðèòìàìè ïîâûøåííîé òî÷íîñòè. Æóðíàë âû÷. ìàòåìàòèêè è ìàòåì.
    èç., 4(55):641652, 2015.




                                               527
   Суперкомпьютерные дни в России 2015 // Russian Supercomputing Days 2015 // RussianSCDays.org



Numerical solution of kinetic equations for high-speed rarefied
gas flows
Vladimir Titarev
Keywords: kinetic equations, unstructured mesh, parallel computing
Analysis of aerodynamics of re-entry vehicles of realistic shape requires the development of
computational methods for rarefied gas flow modeling. The present work is devoted to the
problem of creating efficient parallel method and parallel software to solve the kinetic
equation with the model collision integral of E.M. Shakhov on modern multi-core CPU as
applied to such problems. As a test calculation, the high speed rarefied gas flow over the
reentry space vehicle model of TsAGI is considered.