2D AMRCLAW
|
Go to the source code of this file.
Functions/Subroutines | |
subroutine | flux2 (ixy, maxm, meqn, maux, mbc, mx, q1d, dtdx1d, aux1, aux2, aux3, faddm, faddp, gaddm, gaddp, cfl1d, wave, s, amdq, apdq, cqxx, bmasdq, bpasdq, rpn2, rpt2) |
Solve Riemann problems based on 1D slice of the 2D grid. More... | |
subroutine flux2 | ( | ixy, | |
maxm, | |||
meqn, | |||
maux, | |||
mbc, | |||
mx, | |||
dimension(meqn,1-mbc:maxm+mbc) | q1d, | ||
dimension(1-mbc:maxm+mbc) | dtdx1d, | ||
dimension(maux,1-mbc:maxm+mbc) | aux1, | ||
dimension(maux,1-mbc:maxm+mbc) | aux2, | ||
dimension(maux,1-mbc:maxm+mbc) | aux3, | ||
dimension(meqn,1-mbc:maxm+mbc) | faddm, | ||
dimension(meqn,1-mbc:maxm+mbc) | faddp, | ||
dimension(meqn,1-mbc:maxm+mbc, 2) | gaddm, | ||
dimension(meqn,1-mbc:maxm+mbc, 2) | gaddp, | ||
cfl1d, | |||
dimension(meqn, mwaves, 1-mbc:maxm+mbc) | wave, | ||
dimension(mwaves, 1-mbc:maxm+mbc) | s, | ||
dimension(meqn,1-mbc:maxm+mbc) | amdq, | ||
dimension(meqn,1-mbc:maxm+mbc) | apdq, | ||
dimension(meqn,1-mbc:maxm+mbc) | cqxx, | ||
dimension(meqn,1-mbc:maxm+mbc) | bmasdq, | ||
dimension(meqn,1-mbc:maxm+mbc) | bpasdq, | ||
external | rpn2, | ||
external | rpt2 | ||
) |
Solve Riemann problems based on 1D slice of the 2D grid.
Return fluxes contributed by this slice.
If ixy = 1, it's a slice in x. If ixy = 2, it's a slice in y.
Suppose it's a slice in x, the subroutine call normal Riemann solver to get fluctuations at edges(i-1/2,j) and store the fluctuations in flux form: faddm, faddp. It also call transverse Riemann soler to get up-goning and down-going transverse waves and store them in gaddm and gaddp.
gaddm is value to be added to gm, which is g flux on the lower side of a cell edge. gaddp is value to be added to gp, which is g flux on the upper side of a cell edge. Here gaddm and gaddp have the same value since g flux on upper side and lower side of a cell edge should be the same (it's not like apdq and amdq at the edge). gaddm(*,i,.,1) or gaddp(*,i,.,1) modifies G below cell i; gaddm(*,i,.,2) or gaddp(*,i,.,2) modifies G above cell i;
Definition at line 29 of file flux2.f.
References limiter(), amr_module::method, amr_module::mthlim, amr_module::mwaves, rpn2(), and amr_module::use_fwaves.
Referenced by step2().