30 module horiz_interp_bilinear_mod
34 use constants_mod,
only: pi
36 use platform_mod,
only: r4_kind, r8_kind
39 use fms_string_utils_mod,
only:
string
51 module procedure horiz_interp_bilinear_new_1d_r4
52 module procedure horiz_interp_bilinear_new_1d_r8
53 module procedure horiz_interp_bilinear_new_2d_r4
54 module procedure horiz_interp_bilinear_new_2d_r8
61 module procedure horiz_interp_read_weights_bilinear_r4
62 module procedure horiz_interp_read_weights_bilinear_r8
66 module procedure horiz_interp_bilinear_r4
67 module procedure horiz_interp_bilinear_r8
73 real(r8_kind),
parameter :: epsln=1.e-10_r8_kind
74 integer,
parameter :: DUMMY = -999
78 module procedure intersect_r4
79 module procedure intersect_r8
84 #include<file_version.h>
85 logical :: module_is_initialized = .false.
92 if(module_is_initialized)
return
94 module_is_initialized = .true.
108 if( interp%horizInterpReals4_type%is_allocated)
then
109 if(
allocated(interp%horizInterpReals4_type%wti))
deallocate(interp%horizInterpReals4_type%wti)
110 if(
allocated(interp%horizInterpReals4_type%wtj))
deallocate(interp%horizInterpReals4_type%wtj)
111 else if (interp%horizInterpReals8_type%is_allocated)
then
112 if(
allocated(interp%horizInterpReals8_type%wti))
deallocate(interp%horizInterpReals8_type%wti)
113 if(
allocated(interp%horizInterpReals8_type%wtj))
deallocate(interp%horizInterpReals8_type%wtj)
115 if(
allocated(interp%i_lon))
deallocate(interp%i_lon)
116 if(
allocated(interp%j_lat))
deallocate(interp%j_lat)
118 interp%horizInterpReals4_type%is_allocated = .false.
119 interp%horizInterpReals8_type%is_allocated = .false.
123 #include "horiz_interp_bilinear_r4.fh"
124 #include "horiz_interp_bilinear_r8.fh"
126 end module horiz_interp_bilinear_mod
Close a netcdf or domain file opened with open_file or open_virtual_file.
Opens a given netcdf or domain file.
Read data from a defined field in a file.
subroutine, public write_version_number(version, tag, unit)
Prints to the log file (or a specified unit) the version id string and tag name.
character(:) function, allocatable, public string(v, fmt)
Converts a number or a Boolean value to a string.
subroutine, public horiz_interp_bilinear_del(Interp)
Deallocates memory used by "horiz_interp_type" variables.
subroutine, public horiz_interp_bilinear_init
Initialize this module and writes version number to logfile.
Creates a horiz_interp_type for bilinear interpolation.
Subroutines for reading in weight files and using that to fill in the horiz_interp type instead calcu...
Holds data pointers and metadata for horizontal interpolations, passed between the horiz_interp modul...
integer function stdout()
This function returns the current standard fortran unit numbers for output.
integer function mpp_pe()
Returns processor ID.