เบเบตเปเปเบกเปเบเบเปเบฒเบชเบฑเปเบ r3.gwflowgrass เบเบตเปเบชเบฒเบกเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเปเบเปเปเบ OnWorks เบเบนเปเปเบซเปเบเปเบฅเบดเบเบฒเบเปเบฎเบเบเบดเปเบเบเบฃเบตเปเบเบเปเบเปเบซเบเบถเปเบเปเบเบซเบผเบฒเบเปเบเปเบญเบเปเบฎเบฑเบเบงเบฝเบเบญเบญเบเปเบฅเบเปเบเบญเบเบเบงเบเปเบฎเบปเบฒเปเบเบฑเปเบ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator
เปเบเบเบเบฒเบ:
NAME
r3.gwflow - เปเบเบโเบเบฒเบโเบเบดเบโเปเบฅเปโเบเบปเบงโเปเบฅเบโเบชเปเบฒโเบฅเบฑเบโเบเบฒเบโเปเบซเบผโเบเปเบฒเบโเบเบญเบโเบโเปโเปโเบฒโเปเบเปโเบเบดเบโเบเปเบฒโเบเบฑเบโเปเบโ
เบชเบฒเบกเบกเบดเบเบด.
KEYWORDS
raster3d, เบเบฒเบเปเบซเบผเบเบญเบเบเปเปเบฒเปเบเปเบเบดเบ, voxel, เบญเบธเบเบปเบเบเบฐเบชเบฒเบ
เบชเบฐเบซเบผเบธเบเบชเบฑเบเบฅเบงเบก
r3.gwflow
r3.gwflow - เบเปเบงเบ
r3.gwflow [-mf] เบซเบปเบง=เบเบทเป เบชเบฐเบเบฒเบเบฐเบเบฒเบ=เบเบทเป hc_x=เบเบทเป hc_y=เบเบทเป hc_z=เบเบทเป [เบเบปเบกเบฅเบปเบ=เบเบทเป]
เบเบปเบเบเบฐเบฅเบดเบ=เบเบทเป [recharge=เบเบทเป] output=เบเบทเป [เบเบงเบฒเบกเปเบง_x=เบเบทเป] [เบเบงเบฒเบกเปเบง_y=เบเบทเป]
[เบเบงเบฒเบกเปเบง_z=เบเบทเป] [เบเบปเบเบเบฐเบกเบฒเบ=เบเบทเป] เปเบงเบฅเบฒ=float [เบชเบนเบเบชเบธเบ=integer] [เบเบงเบฒเบกเบเบดเบเบเบฒเบ=float]
[เบเบปเบงเปเบเป=เบเบทเป] [--เบเบฝเบเบเบฑเบ] [--เบเปเบงเบเปเบซเบผเบทเบญ] [--เบเบณเปเบงเบปเปเบฒ] [--เบเบฝเบ] [--ui]
เบเบธเบ:
-m
เปเบเปเปเปเบฒเบเบฒเบ 3D raster (เบเปเบฒเบกเบต)
-f
เปเบเปเบฅเบฐเบเบปเบเบชเบปเบกเบเบปเบเปเบชเบฑเปเบเบชเบตเปเบซเบฅเปเบฝเบกเบเบตเปเปเบเบฑเบกเปเบเปเบเบฑเบกเบเบตเป, เบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบเปเบกเปเบเปเบเบฑเบเปเบชเบฑเปเบเบเบฐเปเบเบเบเบฐเบเบฒเบ
เบฅเบฐเบเบปเบเบชเบปเบกเบเบปเบ.
--เบเบฝเบเบเบฑเบ
เบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบเบฅเปเบเบปเบเบเบฐเบฅเบดเบเบเบฝเบเบเบฑเบเปเบเบฅเปเบเบตเปเบกเบตเบขเบนเปเปเบฅเปเบง
- เบเปเบงเบ
เบเบดเบกเบชเบฐเบซเบผเบธเบเบเบฒเบเบเบณเปเบเป
-- verbose
เบเบปเบเบเบฐเบฅเบดเบเปเบกเบเบนเบ Verbose
--เบเบฝเบ
เบเบปเบเบเบฐเบฅเบดเบเปเบกเบเบนเบเบเบฝเบ
--ui
เบเบฑเบเบเบฑเบเปเบซเปเปเบเบตเบเบเปเบญเบเปเบเปเบเบญเบ GUI
เบเบปเบงเบเปเบฒเบเบปเบเบเบฒเบ:
เบซเบปเบง=เบเบทเป [เบเปเบญเบเบเบฒเบ]
เบเปเบญเบเปเบเบเบเบตเป raster 3D เบเปเบงเบเบซเบปเบง piezometric เปเบเบทเปเบญเบเบเบปเปเบเปเบ [m]
เบชเบฐเบเบฒเบเบฐเบเบฒเบ=เบเบทเป [เบเปเบญเบเบเบฒเบ]
เบเปเบญเบเปเบเบเบเบตเป raster 3D เปเบซเปเบชเบฐเบเบฒเบเบฐเบชเปเบฒเบฅเบฑเบเปเบเปเบฅเบฐเบเบฒเบฅเบฒเบ, = 0 - inactive, 1 - active, 2
- dirichlet
hc_x=เบเบทเป [เบเปเบญเบเบเบฒเบ]
เบเปเบญเบเปเบเบเบเบตเป raster 3D เบเบฑเบเบชเปเบงเบ x เบเบญเบเบเบปเบงเปเบเบเปเบเบตเปเบฎเปเบเบผเบฅเบดเบเปเบ [m/s]
hc_y=เบเบทเป [เบเปเบญเบเบเบฒเบ]
เบเปเบญเบเปเบเบเบเบตเป raster 3D เบเบตเปเบกเบตเบชเปเบงเบ y เบเบญเบเบเบปเบงเปเบเบเปเบเบตเปเบฎเปเบเบผเบฅเบดเบเปเบ [m/s]
hc_z=เบเบทเป [เบเปเบญเบเบเบฒเบ]
เบเปเบญเบเปเบเบเบเบตเป raster 3D เบเบตเปเบกเบตเบชเปเบงเบ z เบเบญเบเบเบปเบงเปเบเบเปเบเบตเปเบฎเปเบเบผเบฅเบดเบเปเบ [m/s]
เบเบปเบกเบฅเบปเบ=เบเบทเป
เบเปเบญเบเปเบเบเบเบตเป raster 3D เบเบฑเบเปเบซเบผเปเบเบเบตเปเบกเบฒ เปเบฅเบฐเบเบปเบกเบขเบนเปเปเบ [m^3/s]
เบเบปเบเบเบฐเบฅเบดเบ=เบเบทเป [เบเปเบญเบเบเบฒเบ]
เบเบปเบเบเบฐเบฅเบดเบเบชเบฐเปเบเบฒเบฐ [1/m] input 3D raster map
recharge=เบเบทเป
เบเบทเปเบกเบเปเปเบกเบนเบเปเบชเปเปเบเบเบเบตเป 3D raster เปเบ m^3/s
output=เบเบทเป [เบเปเบญเบเบเบฒเบ]
เบเบปเบเบเบฐเบฅเบดเบเปเบเบเบเบตเป raster 3D เปเบเบฑเบเบฎเบฑเบเบชเบฒเบเบปเบเปเบเปเบฎเบฑเบเบซเบปเบง piezometric เบเบญเบเบเบฒเบเบเบดเบเปเบฅเปเบเบปเบงเปเบฅเบ
เบเบงเบฒเบกเปเบง_x=เบเบทเป
Output เปเบเบเบเบฑเบ raster 3D เปเบเบฑเบเบฎเบฑเบเบชเบฒเบเบฒเบเบชเปเบงเบ vector velocity เบเบฒเบเบเบฑเปเบเบเบญเบเบเปเปเบฒเปเบเปเปเบ x
เบเบดเบเบเบฒเบ [m/s]
เบเบงเบฒเบกเปเบง_y=เบเบทเป
Output เปเบเบเบเบฑเบ raster 3D เปเบเบฑเบเบฎเบฑเบเบชเบฒเบเบฒเบเบชเปเบงเบ vector velocity เบเบฒเบเบเบฑเปเบเบเบญเบเบเปเปเบฒเปเบเปเปเบ y
เบเบดเบเบเบฒเบ [m/s]
เบเบงเบฒเบกเปเบง_z=เบเบทเป
เบเบปเบเบเบฐเบฅเบดเบเปเบเบเบเบตเป raster 3D เปเบเบฑเบเบฎเบฑเบเบชเบฒเบเบฒเบเบชเปเบงเบ vector velocity เบเบฒเบเบเบฑเปเบเบเบญเบเบเปเปเบฒเปเบเปเปเบ z
เบเบดเบเบเบฒเบ [m/s]
เบเบปเบเบเบฐเบกเบฒเบ=เบเบทเป
เบเบปเบเบเบฐเบฅเบดเบเปเบเบเบเบตเป raster 3D เบเบตเปเปเบเบฑเบเบฎเบฑเบเบชเบฒเบเบปเบเบเบฐเบกเบฒเบเบเปเปเบฒเปเบเปเบเบดเบเบชเปเบฒเบฅเบฑเบเปเบเปเบฅเบฐเบเบฒเบฅเบฒเบ [m^3/s]
เปเบงเบฅเบฒ=float [เบเปเบญเบเบเบฒเบ]
เปเบงเบฅเบฒเบเบดเบเปเบฅเปเปเบเบฑเบเบงเบดเบเบฒเบเบต
เบกเบฒเบเบเบฐเบเบฒเบ: 86400
เบชเบนเบเบชเบธเบ=integer
เบเบณเบเบงเบเบชเบนเบเบชเบธเบเบเบญเบเบเบฒเบเบเปเปเบฒเบเบทเบเบเบตเปเปเบเปเปเบเบทเปเบญเปเบเปเปเบเบฅเบฐเบเบปเบเบชเบปเบกเบเบปเบเปเบชเบฑเปเบเบเบทเป
เบกเบฒเบเบเบฐเบเบฒเบ: 10000
เบเบงเบฒเบกเบเบดเบเบเบฒเบ=float
เบเบฒเบเบฅเบฐเปเบกเบตเบเปเบเบทเปเบญเบเปเบเบชเปเบฒเบฅเบฑเบเบเบปเบงเปเบเปเปเบเบเปเปเบฒเบเบทเบ
เบกเบฒเบเบเบฐเบเบฒเบ: 0.000001
เบเบปเบงเปเบเป=เบเบทเป
เบเบฐเปเบเบเบเบญเบเบเบปเบงเปเบเปเปเบเบเบตเปเบเบงเบเปเบเปเปเบเบฅเบฐเบเบปเบเบชเบปเบกเบเบปเบเปเบชเบฑเปเบ symmetric
เบเบปเบงเปเบฅเบทเบญเบ: cg, pcg, cholesky
เบกเบฒเบเบเบฐเบเบฒเบ: cg
เบฅเบฒเบเบฅเบฐเบญเบฝเบ
เปเบกเบเบนเบเบเบปเบงเปเบฅเบเบเบตเปเบเบดเบเปเบฅเปเบชเบฐเบเบฒเบเบเบปเปเบงเบเบฒเบง เปเบฅเบฐเบชเบฐเบซเบกเปเปเบฒเบชเบฐเปเบซเบกเบต implicit, เบเปเปเบฒเปเบเปเบเบดเบเบเปเบฒเบเบฑเบ
เปเบซเบผเปเบเบชเบฒเบกเบกเบดเบเบดเปเบเบเบญเบตเบเปเบชเปเปเบเบเบเบตเปเบเบฐเบฅเบดเบกเบฒเบเปเบฅเบฐเบเบฒเบเบเบฑเปเบเบเปเบฒเบเบฒเบเบเบทเปเบ 3D เปเบเบเบฑเบเบเบธเบเบฑเบ. เบเบฑเบเปเบปเบ
เปเบเปเบเบทเปเบญเบเบเบปเปเบ- เปเบฅเบฐเปเบเบทเปเบญเบเปเบเปเบเบเปเบเบเบเปเบญเบเบเบทเบเบชเบฐเบซเบเบญเบเปเบซเปเปเบเบฑเบเปเบเบเบเบตเปเบเบฐเบฅเบดเบกเบฒเบ. เบซเบเปเบงเบเบเปเบฅเบดเบเบฒเบเปเบ
เบชเบฐเบเบฒเบเบเบตเปเบเปเบญเบเปเบเบฑเบเปเบกเบฑเบ.
เปเบกเบเบนเบเบเบตเปเบกเบตเบเบงเบฒเบกเบญเปเบญเบเปเบซเบงเบเปเปเบเบฑเบเบเบฒเบเบเบฑเปเบเบเปเบฒเบซเบเปเบฒเบเบฒเบ. เบเบธเบฅเบฑเบเบเบฑเบเบซเบกเบปเบเบเบตเปเบขเบนเปเบเบญเบเบซเบเปเบฒเบเบฒเบเปเบกเปเบ
เบเบทเบเบฅเบฐเปเบฅเบตเบ เปเบฅเบฐเบเบฑเบเบเบฒเบเปเบเบฑเบเบเปเปเบกเบตเบเบญเบเปเบเบเบเบฒเบเปเบซเบผ.
เปเบกเบเบนเบเบเบดเบเปเบฅเปเบซเบปเบง piezometric เปเบฅเบฐเบเบฒเบเปเบฅเบทเบญเบเปเบเบเบฒเบเบเบธเปเบเบเปเบฝเบเบเปเปเบฒเบชเปเบฒเบฅเบฑเบเปเบเปเบฅเบฐเบซเปเบญเบ
เปเบฅเบฐเบเบฒเบเบชเบฐเบซเบเบฒเบกเบเบงเบฒเบกเปเบงเบเปเปเบฒเปเบเปเบเบดเบเปเบ 3 เบกเบดเบเบด. เบญเบปเบเบเบฐเบเบญเบ vector เบชเบฒเบกเบฒเบ
เปเบซเบฑเบเบเบฒเบเบเปเบงเบ ParaView เบเปเบฒเบเบงเบเบกเบฑเบเบเบทเบเบชเบปเปเบเบญเบญเบเบเปเบงเบ r3.out.vtk.
เบเบฒเบเปเบซเบผเบเบญเบเบเปเปเบฒเปเบเปเบเบดเบเบเบฐเบเบทเบเบเบดเบเปเบฅเปเบเบฐเบซเบผเบญเบเบเบปเปเบงเบเบฒเบง. เบชเปเบฒโเบฅเบฑเบโเบเบฒเบโเบเบดเบโเปเบฅเปโเบชเบฐโเบซเบกเปเปเบฒโเบชเบฐโเปเบซเบกเบตโ
เบเบนเปโเปเบเปโเบเบงเบโเบเบฐโเบเปเบฒโเบเบปเบโเปเบงโเบฅเบฒโเปเบเบฑเบโเบเปเบฒโเบเบงเบโเบซเบผเบฒเบ (เบเบฑเบโเบฅเปเบฒเบโเบงเบดโเบเบฒโเบเบตโ) เบซเบผเบทโเบเปเบฒโเบเบปเบโ
เปเบเบเบเบตเป raster เบเบปเบเบเบฐเบฅเบดเบเบชเบฐเปเบเบฒเบฐเปเบเบฑเบเบชเบนเบ.
เบซเบกเบฒเบเปเบซเบ
เบเบฒเบเบเบดเบเปเบฅเปเบเบฒเบเปเบซเบผเบเบญเบเบเปเปเบฒเปเบเปเบเบดเบเปเบกเปเบเบญเบตเบเปเบชเปเบเบปเบเบซเบกเบฒเบเบเบญเบ Darcy เปเบฅเบฐเบเบปเบงเปเบฅเบเบเปเบฒเบเบฑเบ implicit
เบเบฒเบโเบเบฑเบโเบชเบดเบโเปเบโเบเบฐโเบฅเบดโเบกเบฒเบโ. เบเบฒเบโเบเบฑเบโเบชเบดเบโเปเบโเบชเบปเปเบโเบเบปเบโเปเบซเปโเบกเบตโเบเบงเบฒเบกโเบเบดโเบเบฒเบกโเบเบตเปโเบชเบปเบกโเบกเบฒเบโเปเบฅเบฐโเบเบฒเบโเบเบงเบโ
เบฅเบฐเบเบปเบเบชเบปเบกเบเบปเบเปเบชเบฑเปเบเบเบทเปเปเบเบฎเบนเบเปเบเบเบเบญเบ Ax = b, เปเบเบดเปเบเบเปเบญเบเปเบเปเบฎเบฑเบเบเบฒเบเปเบเปเปเบ. เบเบฒเบเปเบซเบผเบเบญเบเบเปเปเบฒเปเบเปเบเบดเบ
เบชเบปเบกเบเบปเบเบเบงเบฒเบกเปเบเบเบเปเบฒเบเบเบฒเบเบชเปเบงเบเบกเบตเบฎเบนเบเปเบเบเบเปเปเปเบเบเบตเป:
(dh/dt)*S = div (K grad h) + q
เบฅเบฒเบโเบฅเบฐโเบญเบฝเบโเบชเปเบฒโเบฅเบฑเบ 3 เบเบฐโเบซเบเบฒเบโ:
(dh/dt)*S = Kxx * (d^2h/dx^2) + Kyy * (d^2h/dy^2) + Kzz * (d^2h/dz^2) + q
ยท h -- เบซเบปเบง piezometric im เปเบกเบฑเบ [m]
ยท dt -- เบเบฑเปเบโเบเบญเบโเบเบตเปโเปเบเปโเปเบงโเบฅเบฒโเบชเปเบฒโเบฅเบฑเบโเบเบฒเบโเบเบดเบโเปเบฅเปโเบเบปเปเบงโเบเบฒเบงโเปเบโเบงเบดโเบเบฒโเบเบต [sโ]
ยท S -- เบเบปเบเบเบฐเบฅเบดเบเบชเบฐเปเบเบฒเบฐ [1/m]
ยท b -- เบเปเบฒเบเบฅเบธเปเบกเบเบญเบเปเบเบทเปเบญเบเบงเบฑเบเปเบเบเบเปเปเบฒ [m]
ยท Kxx -- เบชเปเบงเบ tensor เบเบฒเบ conductivity เปเบฎเปเบเบผเบฅเบดเบเปเบเบเบดเบเบเบฒเบ x เปเบเปเบกเบฑเบเบเปเปเบงเบดเบเบฒเบเบต
[เบเบฒเบโเบชเบฒเบง]
ยท Kyy -- เบชเปเบงเบ tensor เบเบฒเบ conductivity เปเบฎเปเบเบผเบฅเบดเบเปเบเบเบดเบเบเบฒเบ y เปเบเปเบกเบฑเบเบเปเปเบงเบดเบเบฒเบเบต
[เบเบฒเบโเบชเบฒเบง]
ยท Kzz -- เบชเปเบงเบ tensor conductivity เปเบฎเปเบเบผเบฅเบดเบเปเบเบเบดเบเบเบฒเบ z เปเบเปเบกเบฑเบเบเปเปเบงเบดเบเบฒเบเบต
[เบเบฒเบโเบชเบฒเบง]
ยท q - เปเบซเบผเปเบเบเบฒเบเปเบ / sinc เปเบ [1/s]
เบชเบญเบเปเบเบทเปเบญเบเปเบเบเบฒเบเปเบเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบเปเบเปเบเบทเบเบเบฐเบเบดเบเบฑเบ, เปเบเบทเปเบญเบเปเบ Dirichlet เปเบฅเบฐ Neumann.
เปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ, เบเบทเปเบเบเบตเปเบเบฒเบเบเบดเบเปเบฅเปเปเบกเปเบเบญเปเบญเบกเบฎเบญเบเปเบเบเปเบงเบเปเบเบทเปเบญเบเปเบเบเบฒเบเปเบเบ Neumann เบเบตเปเปเบเบฑเบเปเบญเบเบฐเบเบฒเบ.
เบเบฒเบโเบเบดเบโเปเบฅเปโเปเบฅเบฐโเบเบญเบโเปเบเบโเบชเบฐโเบเบฒโเบเบฐโเบเบฒเบโเบเบญเบโเบเบธโเบฅเบฑเบโเบเบฝเบงโเบชเบฒโเบกเบฒเบโเปเบเปโเบฎเบฑเบโเบเบฒเบโเบเปเบฒโเบเบปเบโเบเบฑเบโเปเบเบโเบเบตเปโเบชเบฐโเบเบฒโเบเบฐโเบเบฒเบโ, เปเบเปโ
เบชเบฐโเบเบฒโเบเบฐโเบซเปเบญเบโเบเบฑเปเบโเบเปเปโเปเบโเบเบตเปโเปเบกเปเบโเบชเบฐโเบซเบเบฑเบโเบชเบฐโเบซเบเบนเบโ:
ยท 0 == inactive - เปเบเบเบเบตเปเบกเบตเบชเบฐเบเบฒเบเบฐ 0 เบเบฐเบเปเปเบเบทเบเบเบดเบเปเบฅเป, เบเบธเบฅเบฑเบเบเบตเปเบกเบตเบเบฒเบเปเบเบทเปเบญเบเปเบซเบงเบเบฐ
เบเปเปเบกเบตเบเบญเบเปเบเบเบเบฒเบเปเบซเบผเปเบเบซเบฒเบเบฒเบฅเบฒเบเบเบตเปเบเปเปเปเบเบทเปเบญเบเปเบซเบง
ยท 1 == เบเบฒเบเปเบเบทเปเบญเบเปเบซเบง - เบเบธเบฅเบฑเบเบเบตเปเบเบทเบเบเปเบฒเปเบเปเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบดเบเปเบฅเปเบเปเปเบฒเปเบเปเบเบดเบ, เปเบซเบผเปเบเบเบฒเบเปเบเบชเบฒเบกเบฒเบเปเบเบฑเบ
เบเปเบฒเบเบปเบเบชเปเบฒเบฅเบฑเบเบเบธเบฅเบฑเบเปเบซเบผเบปเปเบฒเบเบฑเปเบ
ยท 2 == Dirichlet - เบเบธเบฅเบฑเบเบเบญเบเบเบฐเปเบเบเบเบตเปเบเบฐเบกเบตเบกเบนเบเบเปเบฒเบซเบปเบง piezometric เบเบปเบเบเบตเป
เบเปเปเบเปเบฝเบเปเบเบเบเบฒเบกเปเบงเบฅเบฒ
เปเบซเปเบชเบฑเบเปเบเบเบงเปเบฒเปเบเบเบเบตเป raster เบเบตเปเบเปเบญเบเบเบฒเบเบเบฑเบเบซเบกเบปเบเบเบฐเบเบทเบเบญเปเบฒเบเปเบเบปเปเบฒเปเบเปเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบเบปเปเบเบเป. เบเบญเบเบเบฒเบเบเบฑเปเบ, เบฎเบนเบเปเบเบ
เบฅเบฐเบเบปเบเบชเบปเบกเบเบปเบเบเบฐเบเบทเบเบเบฑเบเบชเบฑเบ, เบชเบฐเบเบฑเปเบเบเบฒเบเบเปเบฅเบดเปเบเบเบเบงเบฒเบกเบเบปเบเบเปเบฒเบเบญเบเปเบกเบเบนเบเบเบตเปเปเบเบตเบเปเบเบขเปเบฒเบเปเบงเบงเบฒ
เบเบฑเบเบเบฐเบซเบเบฒเบเบเบญเบเปเบเบเบเบตเปเบเปเบญเบเบเปเปเบกเบนเบ.
เบฅเบฐเบเบปเบเบชเบปเบกเบเบปเบเปเบชเบฑเปเบเบเบทเปเบเบปเบเปเบเปเบฎเบฑเบ Ax = b เบชเบฒโเบกเบฒเบโเปเบเปโเปเบโเปเบเปโเบเบฑเบโเบเบฒเบโเปเบเปโเปเบโเบเปเบฒโเบเบงเบโเบซเบเบถเปเบโ. เบญเบฑเบ
เบเบฒเบเปเบเปเปเบเปเบเบเบเปเบณเปเบเบตเปเบกเบตเบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบ matrices sparse เปเบฅเบฐ quadratic เปเบกเปเบเบเบฐเบเบดเบเบฑเบ. เปเบเป
conjugate gradients method เบเปเบงเบ (pcg) เปเบฅเบฐเบเปเปเบกเบต (cg) precondition. เบเบญเบเบเบฒเบเบเบฑเปเบ เบ
เบเบปเบงเปเบเปเปเบ Cholesky เปเบเบเบเบปเบเปเบกเปเบเบกเบตเบขเบนเป. เบเบปเบงเปเบเปเปเบเปเบเบเบเบปเบเบเบตเปเบเบฝเบเปเบเปเปเบฎเบฑเบเบงเบฝเบเบเบฑเบ quadratic เบเบปเบเบเบฐเบเบด
matrices, เบชเบฐเบเบฑเปเบเบฅเบฐเบกเบฑเบเบฅเบฐเบงเบฑเบเบเบฒเบเบเปเบฒเปเบเปเปเบซเปเปเบเบปเบฒเปเบเบปเปเบฒเบเบฑเบเปเบเบเบเบตเปเบเบฐเบซเบเบฒเบเปเบซเบเป (เปเบเบเบเบตเปเบเบฐเบซเบเบฒเบ 10.000 เบเบธเบฅเบฑเบเบเบฐเบเปเบญเบเปเบเป.
เบซเบผเบฒเบเบเปเบงเบฒเบซเบเบถเปเบ Gigabyte เบเบญเบ RAM). เบเบนเปเปเบเปเบเบงเบเบกเบฑเบเปเบเป matrix sparse
เบเบปเบงเปเบเป.
EXAMPLE 1
script เบเบฐเบซเบเบฒเบเบเปเบญเบเบเบตเปเบชเปเบฒเบเบเบทเปเบเบเบตเปเบเปเปเบฒเปเบเปเบเบดเบเบเบตเปเปเบฎเบฑเบเบงเบฝเบเปเบฅเบฐเบเปเปเบกเบนเบ. เบกเบฑเบเบเปเปเบชเบฒเบกเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเปเบ a
lat/lon เบชเบฐเบเบฒเบเบเบตเป.
# เบเปเบฒเบเบปเบเบเบฒเบเบเบทเปเบเบเบฒเบกเบเบงเบฒเบกเปเบซเบกเบฒเบฐเบชเบปเบก
g.region res=25 res3=25 t=100 b=0 n=1000 s=0 w=0 e=1000 -p3
# เบเบญเบเบเบตเปเบชเปเบฒเบเปเบเบเบเบตเป raster เบงเบฑเบเบชเบฐเบเบธเบเปเบญเบเบชเปเบฒเบฅเบฑเบ aquifer เบเปเบฒเบเบฑเบ
r3.mapcalc expression="phead = if(row() == 1 && depth() == 4, 50, 40)"
r3.mapcalc expression="status = if(row() == 1 && depth() == 4, 2, 1)"
r3.mapcalc expression="well = if(row() == 20 && col() == 20 && depth() == 2, -0.25, 0)"
r3.mapcalc expression="hydcond = 0.00025"
r3.mapcalc expression="syield = 0.0001"
r.mapcalc expression="เปเบเบตเบกเปเบเบดเบ = 0.0"
r3.gwflow solver=cg phead=phead statuyield=เบชเบฐเบเบฒเบเบฐ hc_x=hydcond hc_y=hydcond \
hc_z=hydcond sink=เบเบปเบโเบเบฐโเบฅเบดเบโเบเบตเปโเบเบต=syield r=เบเบทเปเบกโเบเปเปโเบกเบนเบโเบเบฐโเบฅเบดเบโเบเบฐโเบเบฑเบ=gwresult dt=8640000 vx=vx vy=vy vz=vz budget=เบเบปเบเบเบฐเบกเบฒเบ
# เบเปเปเบกเบนเบเบชเบฒเบกเบฒเบเปเบเบดเปเบเปเบซเบฑเบเบเปเบงเบ ParaView เปเบกเบทเปเบญเบชเบปเปเบเบญเบญเบเบเปเบงเบ r3.out.vtk
r3.out.vtk -p in=gwresult,status,budget vector=vx,vy,vz out=/tmp/gwdata3d.vtk
# เบเบญเบเบเบตเปเปเบซเบผเบเบเปเปเบกเบนเบเปเบชเป ParaView
paraview --data=/tmp/gwdata3d.vtk
EXAMPLE 2
เบเบตเปเบเบฐเบชเปเบฒเบเบฎเบนเบเปเบเบ 3D เบเบตเปเบชเบงเบเบเบฒเบกเบเบตเปเบกเบตเบเบฑเปเบเบเปเบฅเบฐเบเบตเบชเบฒเบเบเบตเปเบกเบตเปเบฎเปเบเบผเบฅเบดเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบ
เบเบฒเบเบเบฐเบเบถเบ. เปเบซเปเปเบเปเปเบเบงเปเบฒเบเปเบฒเบเบเปเปเปเบเปเบขเบนเปเปเบเบเบฒเบเบเบฒเบเบเบฐเปเบ lat/lon.
# เบเปเบฒเบเบปเบเบเบฒเบเบเบทเปเบเบเบฒเบกเบเบงเบฒเบกเปเบซเบกเบฒเบฐเบชเบปเบก
g.region res=15 res3=15 t=500 b=0 n=1000 s=0 w=0 e=1000
# เบเบญเบเบเบตเปเบชเปเบฒเบเปเบเบเบเบตเป raster เบงเบฑเบเบชเบฐเบเบธเบเปเบญเบเบชเปเบฒเบฅเบฑเบ aquifer เบเปเบฒเบเบฑเบ
r3.mapcalc expression="phead = if(col() == 1 && depth() == 33, 50, 40)"
r3.mapcalc expression="status = if(col() == 1 && depth() == 33, 2, 1)"
r3.mapcalc expression="well = if(row() == 20 && col() == 20 && depth() == 3, -0.25, 0)"
r3.mapcalc expression="well = if(row() == 50 && col() == 50 && depth() == 3, -0.25, เบเบต)"
r3.mapcalc expression="hydcond = 0.0025"
r3.mapcalc expression="hydcond = if(depth() < 30 && depth() > 23 && col() < 60, 0.000025, hydcond)"
r3.mapcalc expression="hydcond = if(depth() < 20 && depth() > 13 && col() > 7, 0.000025, hydcond)"
r3.mapcalc expression="hydcond = if(depth() < 10 && depth() > 7 && col() < 60, 0.000025, hydcond)"
r3.mapcalc expression="syield = 0.0001"
r3.gwflow solver=cg phead=phead statuyield=เบชเบฐเบเบฒเบเบฐ hc_x=hydcond hc_y=hydcond \
hc_z=hydcond sink=เบเบปเบเบเบญเบเปเบเบเบเบตเปเบเบต=syield output=gwresult dt=8640000 vx=vx vy=vy vz=vz budget=เบเบปเบเบเบฐเบกเบฒเบ
# เบเปเปเบกเบนเบเบชเบฒเบกเบฒเบเปเบเบดเปเบเปเบซเบฑเบเบเปเบงเบเบเบฒเบงเบดเบงเปเบกเบทเปเบญเบชเบปเปเบเบญเบญเบเบเปเบงเบ r3.out.vtk
r3.out.vtk -p in=gwresult,เบชเบฐเบเบฒเบเบฐ,เบเบปเบเบเบฐเบกเบฒเบ,hydcond,well vector=vx,vy,vz out=/tmp/gwdata3d.vtk
# เบเบญเบเบเบตเปเปเบซเบผเบเบเปเปเบกเบนเบเปเบชเป paraview
paraview --data=/tmp/gwdata3d.vtk
เปเบเป r3.gwflowgrass เบญเบญเบเปเบฅเบเปเปเบเบเปเบเปเบเปเบฅเบดเบเบฒเบ onworks.net