13 |
|
|
14 |
USE comgeom, ONLY: fext_2d |
USE comgeom, ONLY: fext_2d |
15 |
USE dimens_m, ONLY: iim, jjm, llm |
USE dimens_m, ONLY: iim, jjm, llm |
16 |
use filtreg_m, only: filtreg |
use filtreg_v_m, only: filtreg_v |
17 |
|
|
18 |
REAL, intent(in):: vcov(:, :, :) ! (iim + 1, jjm, llm) |
REAL, intent(in):: vcov(:, :, :) ! (iim + 1, jjm, llm) |
19 |
REAL, intent(in):: ucov(:, :, :) ! (iim + 1, jjm + 1, llm) |
REAL, intent(in):: ucov(:, :, :) ! (iim + 1, jjm + 1, llm) |
37 |
= vcov(i + 1, j, :) - vcov(i, j, :) + ucov(i, j + 1, :) - ucov(i, j, :) |
= vcov(i + 1, j, :) - vcov(i, j, :) + ucov(i, j + 1, :) - ucov(i, j, :) |
38 |
rot(iim + 1, :, :) = rot(1, :, :) |
rot(iim + 1, :, :) = rot(1, :, :) |
39 |
|
|
40 |
CALL filtreg(rot, direct = .true., intensive = .true.) |
CALL filtreg_v(rot, intensive = .true.) |
41 |
|
|
42 |
forall (l = 1: llm) vorpot(:iim, :, l) & |
forall (l = 1: llm) vorpot(:iim, :, l) & |
43 |
= (rot(:iim, :, l) + fext_2d(:iim, :)) / massebxy(:iim, :, l) |
= (rot(:iim, :, l) + fext_2d(:iim, :)) / massebxy(:iim, :, l) |