Véges térfogat módszere

A véges térfogat módszere (angolul finite-volume method, FVM) módszer parciális differenciálegyenletek algebrai alakban való kiértékelésére és ábrázolására. Hasonló a véges differencia módszeréhez vagy végeselem módszeréhez az elemeket egy diszkrét helyen hálós térben számoljuk. A véges térfogat utal egy kis térfogatra amely minden hálópontot körülvesz. Ez a módszer könnyen használható strukturálatlan anyagok esetén.

1D példa

Vegyük a következő egyszerű 1D advekciós parciális differenciál egyenletet.

( 1 ) ρ t + f x = 0 , t 0. {\displaystyle \quad (1)\qquad \qquad {\frac {\partial \rho }{\partial t}}+{\frac {\partial f}{\partial x}}=0,\quad t\geq 0.}

Itt, ρ = ρ ( x , t )   {\displaystyle \rho =\rho \left(x,t\right)\ } jelenti az állapotváltozót és f = f ( ρ ( x , t ) )   {\displaystyle f=f\left(\rho \left(x,t\right)\right)\ } jelenti a fluxusát vagy áramlását a ρ   {\displaystyle \rho \ } -nak. Természetesen, a pozitív f   {\displaystyle f\ } jelenti a jobb oldali áramlást míg a negatív f   {\displaystyle f\ } jelenti a bal oldali áramlást. Ha feltételezzük, hogy az (1) egyenlet egy állandó területű áramló közeg akkor tudjuk felosztani az x   {\displaystyle x\ } térbeli területtel véges térfogatokra vagy cellákra i   {\displaystyle i\ } indexű cellaközpontokkal. Bizonyos i   {\displaystyle i\ } indexű cellák esetében meg tudjuk határozni a térfogat szerinti átlagos értékét a ρ i ( t ) = ρ ( x , t )   {\displaystyle {\rho }_{i}\left(t\right)=\rho \left(x,t\right)\ } -nak a t = t 1   {\displaystyle {t=t_{1}}\ } időpillanatba és az x [ x i 1 2 , x i + 1 2 ]   {\displaystyle {x\in \left[x_{i-{\frac {1}{2}}},x_{i+{\frac {1}{2}}}\right]}\ } térfogatelemen, mint

( 2 ) ρ ¯ i ( t 1 ) = 1 x i + 1 2 x i 1 2 x i 1 2 x i + 1 2 ρ ( x , t 1 ) d x , {\displaystyle \quad (2)\qquad \qquad {\bar {\rho }}_{i}\left(t_{1}\right)={\frac {1}{x_{i+{\frac {1}{2}}}-x_{i-{\frac {1}{2}}}}}\int _{x_{i-{\frac {1}{2}}}}^{x_{i+{\frac {1}{2}}}}\rho \left(x,t_{1}\right)\,dx,}

és a t = t 2   {\displaystyle {t=t_{2}}\ } időpillanatba mint,

( 3 ) ρ ¯ i ( t 2 ) = 1 x i + 1 2 x i 1 2 x i 1 2 x i + 1 2 ρ ( x , t 2 ) d x , {\displaystyle \quad (3)\qquad \qquad {\bar {\rho }}_{i}\left(t_{2}\right)={\frac {1}{x_{i+{\frac {1}{2}}}-x_{i-{\frac {1}{2}}}}}\int _{x_{i-{\frac {1}{2}}}}^{x_{i+{\frac {1}{2}}}}\rho \left(x,t_{2}\right)\,dx,}

ahol x i 1 2   {\displaystyle x_{i-{\frac {1}{2}}}\ } és x i + 1 2   {\displaystyle x_{i+{\frac {1}{2}}}\ } jelentik az alsó és felső felületét vagy az éleit a i t h   {\displaystyle i^{th}\ } cellának.

Ha integráljuk az (1) egyenletet idő szerint akkor kapjuk:

( 4 ) ρ ( x , t 2 ) = ρ ( x , t 1 ) t 1 t 2 f x ( x , t ) d t , {\displaystyle \quad (4)\qquad \qquad \rho \left(x,t_{2}\right)=\rho \left(x,t_{1}\right)-\int _{t_{1}}^{t_{2}}f_{x}\left(x,t\right)\,dt,}

ahol f x = f x {\displaystyle f_{x}={\frac {\partial f}{\partial x}}} .

Ahhoz, hogy megkapjuk az átlag térfogatot a ρ ( x , t ) {\displaystyle \rho \left(x,t\right)} a t = t 2   {\displaystyle t=t_{2}\ } időpillanatban, integráljuk a ρ ( x , t 2 ) {\displaystyle \rho \left(x,t_{2}\right)} a [ x i 1 2 , x i + 1 2 ] {\displaystyle \left[x_{i-{\frac {1}{2}}},x_{i+{\frac {1}{2}}}\right]} cellatérfogaton és osszuk az eredményt Δ x i = x i + 1 2 x i 1 2 {\displaystyle \Delta x_{i}=x_{i+{\frac {1}{2}}}-x_{i-{\frac {1}{2}}}} , i.e.

( 5 ) ρ ¯ i ( t 2 ) = 1 Δ x i x i 1 2 x i + 1 2 { ρ ( x , t 1 ) t 1 t 2 f x ( x , t ) d t } d x . {\displaystyle \quad (5)\qquad \qquad {\bar {\rho }}_{i}\left(t_{2}\right)={\frac {1}{\Delta x_{i}}}\int _{x_{i-{\frac {1}{2}}}}^{x_{i+{\frac {1}{2}}}}\left\{\rho \left(x,t_{1}\right)-\int _{t_{1}}^{t_{2}}f_{x}\left(x,t\right)dt\right\}dx.}

Feltételezzük, hogy f   {\displaystyle f\ } jól viselkedik, és meg tudjuk cserélni az integrálás sorrendjét. Továbbá, az áramlás merőleges a sejtelemre. Most, amíg egy dimenziójú az f x f {\displaystyle f_{x}\triangleq \nabla f} , tudjuk alkalmazni a divergenciatételt, azaz v f d v = S f d S {\displaystyle \oint _{v}\nabla \cdot fdv=\oint _{S}f\,dS} és helyettesítjük a térfogati integrált az f ( x )   {\displaystyle f(x)\ } értékeinek divergenciájával a (élek x i 1 2   {\displaystyle x_{i-{\frac {1}{2}}}\ } és x i + 1 2   {\displaystyle x_{i+{\frac {1}{2}}}\ } ) cella felületén úgyhogy a véges térfogat:

( 6 ) ρ ¯ i ( t 2 ) = ρ ¯ i ( t 1 ) 1 Δ x i ( t 1 t 2 f i + 1 2 d t t 1 t 2 f i 1 2 d t ) . {\displaystyle \quad (6)\qquad \qquad {\bar {\rho }}_{i}\left(t_{2}\right)={\bar {\rho }}_{i}\left(t_{1}\right)-{\frac {1}{\Delta x_{i}}}\left(\int _{t_{1}}^{t_{2}}f_{i+{\frac {1}{2}}}dt-\int _{t_{1}}^{t_{2}}f_{i-{\frac {1}{2}}}dt\right).}

ahol f i ± 1 2 = f ( x i ± 1 2 , t ) {\displaystyle f_{i\pm {\frac {1}{2}}}=f\left(x_{i\pm {\frac {1}{2}}},t\right)} .

Tehát származtathatunk egy fél diszkrét numerikus rendszert a fenti cellaközpontú problémát i   {\displaystyle i\ } -vel indexelve és a cella élének fluxusát i ± 1 2 {\displaystyle i\pm {\frac {1}{2}}} indexelve, differenciálva a (6) adott időben kapjuk:

( 7 ) d ρ ¯ i d t + 1 Δ x i [ f i + 1 2 f i 1 2 ] = 0 , {\displaystyle \quad (7)\qquad \qquad {\frac {d{\bar {\rho }}_{i}}{dt}}+{\frac {1}{\Delta x_{i}}}\left[f_{i+{\frac {1}{2}}}-f_{i-{\frac {1}{2}}}\right]=0,}

ahol az élek fluxusa, f i ± 1 2 {\displaystyle f_{i\pm {\frac {1}{2}}}} , rekonstruálható a cella átlagok inter- vagy extrapolációjával. A (7) egyenlet egzakt a térfogatátlagot tekintve; deriválása során nem használtunk approximációt.

Általános megmaradási tétel

Az általános megmaradási tételt a következő parciális differenciálegyenletként is tekinthetjük,

( 8 ) u t + f ( u ) = 0 . {\displaystyle \quad (8)\qquad \qquad {{\partial {\mathbf {u} }} \over {\partial t}}+\nabla \cdot {\mathbf {f} }\left({\mathbf {u} }\right)={\mathbf {0} }.}

Itt az u   {\displaystyle {\mathbf {u} }\ } jelképezi az állapotvektor és f   {\displaystyle \mathbf {f} \ } jelképezi a megfelelő fluxus tenzort. Megint fel tudjuk osztani a térbeli domíniumot véges térfogatelemekre vagy cellákra. Bizonyos i   {\displaystyle i\ } cellákra, elvégezhetjük a térfogat integrálást a cella teljes térfogatára, v i   {\displaystyle v_{i}\ } , amiből kapjuk:

( 9 ) v i u t d v + v i f ( u ) d v = 0 . {\displaystyle \quad (9)\qquad \qquad \int _{v_{i}}{{\partial {\mathbf {u} }} \over {\partial t}}\,dv+\int _{v_{i}}\nabla \cdot {\mathbf {f} }\left({\mathbf {u} }\right)\,dv={\mathbf {0} }.}

Az első kifejezés integrálásával megkapjuk az átlag térfogatot és alkalmazzuk a divergencia tételét a második kifejezésre, így a hozam:

( 10 ) v i d u ¯ i d t + S i f ( u ) n   d S = 0 , {\displaystyle \quad (10)\qquad \qquad v_{i}{{d{\mathbf {\bar {u}} }_{i}} \over {dt}}+\oint _{S_{i}}{\mathbf {f} }\left({\mathbf {u} }\right)\cdot {\mathbf {n} }\ dS={\mathbf {0} },}

ahol S i   {\displaystyle S_{i}\ } jelképezi a teljes felületét a cella területnek és n {\displaystyle {\mathbf {n} }} egy egységvektor normálisa a felületre és kifele mutat. Tehát végül is képesek vagyunk megmutatni egy általános ekvivalens eredményt a (8),

( 11 ) d u ¯ i d t + 1 v i S i f ( u ) n   d S = 0 . {\displaystyle \quad (11)\qquad \qquad {{d{\mathbf {\bar {u}} }_{i}} \over {dt}}+{{1} \over {v_{i}}}\oint _{S_{i}}{\mathbf {f} }\left({\mathbf {u} }\right)\cdot {\mathbf {n} }\ dS={\mathbf {0} }.}

Ismét, az élek fluxusainak értékei rekonstruálhatók a cellák átlagának inter-, extrapolációjával. Az aktuális numerikus rendszer függ az aktuális geometriai problémától és az anyag szerkezetétől.

A véges térfogat rendszerek konzervatívak mint a cella átlagok változása az élek fluxusán keresztül. Más szavakkal, hogy egy cella eltűnik mások megnőnek.

Fordítás

Ez a szócikk részben vagy egészben a Finite volume method című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.

Források

  • Eymard, R. Gallouët, T. R. Herbin, R. (2000) The finite volume method Handbook of Numerical Analysis, Vol. VII, 2000, p. 713–1020. Editors: P.G. Ciarlet and J.L. Lions.
  • LeVeque, Randall (2002), Finite Volume Methods for Hyperbolic Problems, Cambridge University Press.
  • Toro, E. F. (1999), Riemann Solvers and Numerical Methods for Fluid Dynamics, Springer-Verlag.

További információk

  • The finite volume method by R. Eymard, T Gallouët and R. Herbin, update of the article published in Handbook of Numerical Analysis, 2000
  • The Finite Volume Method (FVM) – An introduction by Oliver Rübenkönig of Albert Ludwigs University of Freiburg, available under the GFDL. archív
  • FiPy: A Finite Volume PDE Solver Using Python from NIST.
  • CLAWPACK: a software package designed to compute numerical solutions to hyperbolic partial differential equations using a wave propagation approach
  • matematika Matematikai portál • összefoglaló, színes tartalomajánló lap