These subroutines, called by z_ghost_int,dp,cmplx), are used to create top and bottom ghost layers. t2b and b2t are used with array datn and manipulate data that are 2 bytes long. Calls to t2b or b2t look like:
| call t2b(bot,top,nx,ny) |
| call b2t(bot,top,nx,ny) |
This sequence will create a new bottom ghost layer on node N + 1 with the value in bot as the new bottom ghost layer and then make a new top ghost layer on node N − 1 with top as the new top ghost layer.
The subroutines t2b_dp and b2t_dp are used for all other arrays since they are used with double precision values, hence the "dp" suffix.
The calls to t2b_dp or b2t_dp are similar:
| call t2b_dp(bot,top,nx,ny,i) |
| call b2t_dp(bot,top,nx,ny,i) |
The last parameter, an integer, can in general be anything, but for our specific problem, i equals 3, which is a direct consequence of the dimensionality of u, b, gb, h and Ah in the elastic and thermal programs.