2D y-face (Cv) fold: north-halo fill + on-line antisymmetric
projection at the fold row. Used for the barotropic bt_vbt
field in the BT fast loop. negate (default .true., see the
u-face twin) selects true-vector (sign flip + self-conjugate
zero) vs. scalar (copy + self-conjugate left unchanged, matching
fold_north_corner_2d’s scalar contract) — a scalar on a v-face
(e.g. visc_rem_v) is the SAME physical attribute of the SAME
face seen from both sides of the seam, so the duplicated DOF at
the fold line must agree, not cancel.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | v(nx_total,ny_face) |
y-face 2D field, shape (nx_total, ny_total+1). |
||
| integer, | intent(in) | :: | nx_total | |||
| integer, | intent(in) | :: | ny_face | |||
| integer, | intent(in) | :: | nx_phys | |||
| integer, | intent(in) | :: | ny_phys | |||
| integer, | intent(in) | :: | nghost | |||
| logical, | intent(in), | optional | :: | negate |
|
3D y-face (Cv) fold: north-halo fill + on-line antisymmetric
projection at the fold row. See the 2D twin for the negate
(vector vs. scalar) contract.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | v(nx_total,ny_face,nz) |
y-face 3D field, shape (nx_total, ny_total+1, nz). |
||
| integer, | intent(in) | :: | nx_total | |||
| integer, | intent(in) | :: | ny_face | |||
| integer, | intent(in) | :: | nz | |||
| integer, | intent(in) | :: | nx_phys | |||
| integer, | intent(in) | :: | ny_phys | |||
| integer, | intent(in) | :: | nghost | |||
| logical, | intent(in), | optional | :: | negate |
|