MOM6
mom_horizontal_regridding::fill_boundaries Interface Reference

Detailed Description

Fill grid edges.

Definition at line 47 of file MOM_horizontal_regridding.F90.

Private functions

real function, dimension(0:size(m, 1)+1, 0:size(m, 2)+1) fill_boundaries_real (m, cyclic_x, tripolar_n)
 Fill grid edges for real data. More...
 
integer function, dimension(0:size(m, 1)+1, 0:size(m, 2)+1) fill_boundaries_int (m, cyclic_x, tripolar_n)
 Fill grid edges for integer data. More...
 

Detailed Description

Fill grid edges.

Definition at line 47 of file MOM_horizontal_regridding.F90.

Functions and subroutines

◆ fill_boundaries_int()

integer function, dimension(0:size(m,1)+1,0:size(m,2)+1) mom_horizontal_regridding::fill_boundaries::fill_boundaries_int ( integer, dimension(:,:), intent(in)  m,
logical, intent(in)  cyclic_x,
logical, intent(in)  tripolar_n 
)
private

Fill grid edges for integer data.

Parameters
[in]minput array (ND)
[in]cyclic_xTrue if domain is zonally re-entrant
[in]tripolar_nTrue if domain has an Arctic fold

Definition at line 950 of file MOM_horizontal_regridding.F90.

951  integer, dimension(:,:), intent(in) :: m !< input array (ND)
952  logical, intent(in) :: cyclic_x !< True if domain is zonally re-entrant
953  logical, intent(in) :: tripolar_n !< True if domain has an Arctic fold
954  integer, dimension(0:size(m,1)+1,0:size(m,2)+1) :: mp
955 
956  real, dimension(size(m,1),size(m,2)) :: m_real
957  real, dimension(0:size(m,1)+1,0:size(m,2)+1) :: mp_real
958 
959  m_real = real(m)
960 
961  mp_real = fill_boundaries_real(m_real,cyclic_x,tripolar_n)
962 
963  mp = int(mp_real)
964 

◆ fill_boundaries_real()

real function, dimension(0:size(m,1)+1,0:size(m,2)+1) mom_horizontal_regridding::fill_boundaries::fill_boundaries_real ( real, dimension(:,:), intent(in)  m,
logical, intent(in)  cyclic_x,
logical, intent(in)  tripolar_n 
)
private

Fill grid edges for real data.

Parameters
[in]minput array (ND)
[in]cyclic_xTrue if domain is zonally re-entrant
[in]tripolar_nTrue if domain has an Arctic fold

Definition at line 968 of file MOM_horizontal_regridding.F90.

969  real, dimension(:,:), intent(in) :: m !< input array (ND)
970  logical, intent(in) :: cyclic_x !< True if domain is zonally re-entrant
971  logical, intent(in) :: tripolar_n !< True if domain has an Arctic fold
972  real, dimension(0:size(m,1)+1,0:size(m,2)+1) :: mp
973 
974  integer :: ni,nj,i,j
975 
976  ni=size(m,1); nj=size(m,2)
977 
978  mp(1:ni,1:nj)=m(:,:)
979 
980  if (cyclic_x) then
981  mp(0,1:nj)=m(ni,1:nj)
982  mp(ni+1,1:nj)=m(1,1:nj)
983  else
984  mp(0,1:nj)=m(1,1:nj)
985  mp(ni+1,1:nj)=m(ni,1:nj)
986  endif
987 
988  mp(1:ni,0)=m(1:ni,1)
989  if (tripolar_n) then
990  do i=1,ni
991  mp(i,nj+1)=m(ni-i+1,nj)
992  enddo
993  else
994  mp(1:ni,nj+1)=m(1:ni,nj)
995  endif
996 

The documentation for this interface was generated from the following file: