FV3 Bundle
advect_pv.f90 File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine advect_pv (qnew, q, q_north, q_south, u, v, nx, ny, deltax, deltay, dt)
 Advect potential vorticity. More...
 

Function/Subroutine Documentation

◆ advect_pv()

subroutine advect_pv ( real(kind_real), dimension(nx,ny,2), intent(out)  qnew,
real(kind_real), dimension(nx,ny,2), intent(in)  q,
real(kind_real), dimension(nx,2), intent(in)  q_north,
real(kind_real), dimension(nx,2), intent(in)  q_south,
real(kind_real), dimension(nx,ny,2), intent(in)  u,
real(kind_real), dimension(nx,ny,2), intent(in)  v,
integer, intent(in)  nx,
integer, intent(in)  ny,
real(kind_real), intent(in)  deltax,
real(kind_real), intent(in)  deltay,
real(kind_real), intent(in)  dt 
)

Advect potential vorticity.

Potential vorticity is advected using cubic Lagrange interpolation in the zonal direction, and then the meridional direction.

Note that this is a first-order scheme. The upstream point is determined solely from the wind at the arrival point.

Parameters
[out]qnewOutput potential vorticity
[in]qInput potential vorticity
[in]q_northPV on northern wall
[in]q_southPV on southern wall
[in]uAdvecting zonal wind
[in]vAdvecting meridional wind
[in]nxZonal grid dimensions
[in]nyMeridional grid dimensions
[in]deltaxZonal grid spacing (non-dimensional)
[in]deltayMeridional grid spacing (non-dimensional)
[in]dtTimestep (non-dimensional)

Definition at line 18 of file advect_pv.f90.

Here is the caller graph for this function: