calculate magnetic field from vector potential A at cell edges
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | ixIsmin1 | |||
| integer, | intent(in) | :: | ixIsmin2 | |||
| integer, | intent(in) | :: | ixIsmin3 | |||
| integer, | intent(in) | :: | ixIsmax1 | |||
| integer, | intent(in) | :: | ixIsmax2 | |||
| integer, | intent(in) | :: | ixIsmax3 | |||
| integer, | intent(in) | :: | ixImin1 | |||
| integer, | intent(in) | :: | ixImin2 | |||
| integer, | intent(in) | :: | ixImin3 | |||
| integer, | intent(in) | :: | ixImax1 | |||
| integer, | intent(in) | :: | ixImax2 | |||
| integer, | intent(in) | :: | ixImax3 | |||
| integer, | intent(in) | :: | ixOmin1 | |||
| integer, | intent(in) | :: | ixOmin2 | |||
| integer, | intent(in) | :: | ixOmin3 | |||
| integer, | intent(in) | :: | ixOmax1 | |||
| integer, | intent(in) | :: | ixOmax2 | |||
| integer, | intent(in) | :: | ixOmax3 | |||
| double precision, | intent(inout) | :: | ws(ixIsmin1:ixIsmax1,ixIsmin2:ixIsmax2,ixIsmin3:ixIsmax3,1:nws) | |||
| double precision, | intent(in) | :: | x(ixImin1:ixImax1,ixImin2:ixImax2,ixImin3:ixImax3,1:ndim) | |||
| double precision, | intent(inout) | :: | A(ixIsmin1:ixIsmax1,ixIsmin2:ixIsmax2,ixIsmin3:ixIsmax3,1:3) |
fake advance a step to calculate magnetic field
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer | :: | igrid | ||||
| integer | :: | idimmin | ||||
| integer | :: | idimmax | ||||
| type(state) | :: | s |
fake update magnetic field from vector potential
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer | :: | ixImin1 | ||||
| integer | :: | ixImin2 | ||||
| integer | :: | ixImin3 | ||||
| integer | :: | ixImax1 | ||||
| integer | :: | ixImax2 | ||||
| integer | :: | ixImax3 | ||||
| type(state) | :: | s | ||||
| double precision | :: | fC(ixImin1:ixImax1,ixImin2:ixImax2,ixImin3:ixImax3,1:nwflux,1:ndim) | ||||
| double precision | :: | fE(ixImin1:ixImax1,ixImin2:ixImax2,ixImin3:ixImax3,sdim:3) | ||||
| double precision | :: | dx1 | ||||
| double precision | :: | dx2 | ||||
| double precision | :: | dx3 |
re-calculate the magnetic field from the vector potential in a completely divergency free way
Reconstruct scalar q within ixO^L to 1/2 dx in direction idir Return both left and right reconstructed values
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | ixImin1 | |||
| integer, | intent(in) | :: | ixImin2 | |||
| integer, | intent(in) | :: | ixImin3 | |||
| integer, | intent(in) | :: | ixImax1 | |||
| integer, | intent(in) | :: | ixImax2 | |||
| integer, | intent(in) | :: | ixImax3 | |||
| integer, | intent(in) | :: | ixCmin1 | |||
| integer, | intent(in) | :: | ixCmin2 | |||
| integer, | intent(in) | :: | ixCmin3 | |||
| integer, | intent(in) | :: | ixCmax1 | |||
| integer, | intent(in) | :: | ixCmax2 | |||
| integer, | intent(in) | :: | ixCmax3 | |||
| integer, | intent(in) | :: | idir | |||
| double precision, | intent(in) | :: | q(ixImin1:ixImax1,ixImin2:ixImax2,ixImin3:ixImax3) | |||
| double precision, | intent(out) | :: | qL(ixImin1:ixImax1,ixImin2:ixImax2,ixImin3:ixImax3) | |||
| double precision, | intent(out) | :: | qR(ixImin1:ixImax1,ixImin2:ixImax2,ixImin3:ixImax3) |