163 if(.not.horiz_interp_in%I_am_initialized)
then
164 call mpp_error(fatal,
'horiz_interp_type_eq: horiz_interp_type variable on right hand side is unassigned')
167 if(
allocated(horiz_interp_in%ilon )) &
168 horiz_interp_out%ilon = horiz_interp_in%ilon
170 if(
allocated(horiz_interp_in%jlat )) &
171 horiz_interp_out%jlat = horiz_interp_in%jlat
173 if(
allocated(horiz_interp_in%i_lon )) &
174 horiz_interp_out%i_lon = horiz_interp_in%i_lon
176 if(
allocated(horiz_interp_in%j_lat )) &
177 horiz_interp_out%j_lat = horiz_interp_in%j_lat
179 if(
allocated(horiz_interp_in%found_neighbors )) &
180 horiz_interp_out%found_neighbors = horiz_interp_in%found_neighbors
182 if(
allocated(horiz_interp_in%num_found )) &
183 horiz_interp_out%num_found = horiz_interp_in%num_found
185 if(
allocated(horiz_interp_in%i_src )) &
186 horiz_interp_out%i_src = horiz_interp_in%i_src
188 if(
allocated(horiz_interp_in%j_src )) &
189 horiz_interp_out%j_src = horiz_interp_in%j_src
191 if(
allocated(horiz_interp_in%i_dst )) &
192 horiz_interp_out%i_dst = horiz_interp_in%i_dst
194 if(
allocated(horiz_interp_in%j_dst )) &
195 horiz_interp_out%j_dst = horiz_interp_in%j_dst
197 horiz_interp_out%nlon_src = horiz_interp_in%nlon_src
198 horiz_interp_out%nlat_src = horiz_interp_in%nlat_src
199 horiz_interp_out%nlon_dst = horiz_interp_in%nlon_dst
200 horiz_interp_out%nlat_dst = horiz_interp_in%nlat_dst
201 horiz_interp_out%interp_method = horiz_interp_in%interp_method
202 horiz_interp_out%I_am_initialized = .true.
204 if(horiz_interp_in%horizInterpReals8_type%is_allocated)
then
206 if(
allocated(horiz_interp_in%horizInterpReals8_type%faci)) &
207 horiz_interp_out%horizInterpReals8_type%faci = horiz_interp_in%horizInterpReals8_type%faci
209 if(
allocated( horiz_interp_in%horizInterpReals8_type%facj)) &
210 horiz_interp_out%horizInterpReals8_type%facj = horiz_interp_in%horizInterpReals8_type%facj
212 if(
allocated( horiz_interp_in%horizInterpReals8_type%area_src)) &
213 horiz_interp_out%horizInterpReals8_type%area_src = horiz_interp_in%horizInterpReals8_type%area_src
215 if(
allocated( horiz_interp_in%horizInterpReals8_type%area_dst)) &
216 horiz_interp_out%horizInterpReals8_type%area_dst = horiz_interp_in%horizInterpReals8_type%area_dst
218 if(
allocated( horiz_interp_in%horizInterpReals8_type%wti)) &
219 horiz_interp_out%horizInterpReals8_type%wti = horiz_interp_in%horizInterpReals8_type%wti
221 if(
allocated( horiz_interp_in%horizInterpReals8_type%wtj)) &
222 horiz_interp_out%horizInterpReals8_type%wtj = horiz_interp_in%horizInterpReals8_type%wtj
224 if(
allocated( horiz_interp_in%horizInterpReals8_type%src_dist)) &
225 horiz_interp_out%horizInterpReals8_type%src_dist = horiz_interp_in%horizInterpReals8_type%src_dist
227 if(
allocated( horiz_interp_in%horizInterpReals8_type%rat_x)) &
228 horiz_interp_out%horizInterpReals8_type%rat_x = horiz_interp_in%horizInterpReals8_type%rat_x
230 if(
allocated( horiz_interp_in%horizInterpReals8_type%rat_y)) &
231 horiz_interp_out%horizInterpReals8_type%rat_y = horiz_interp_in%horizInterpReals8_type%rat_y
233 if(
allocated( horiz_interp_in%horizInterpReals8_type%lon_in)) &
234 horiz_interp_out%horizInterpReals8_type%lon_in = horiz_interp_in%horizInterpReals8_type%lon_in
236 if(
allocated( horiz_interp_in%horizInterpReals8_type%lat_in)) &
237 horiz_interp_out%horizInterpReals8_type%lat_in = horiz_interp_in%horizInterpReals8_type%lat_in
239 if(
allocated( horiz_interp_in%horizInterpReals8_type%area_frac_dst)) &
240 horiz_interp_out%horizInterpReals8_type%area_frac_dst = horiz_interp_in%horizInterpReals8_type%area_frac_dst
242 horiz_interp_out%horizInterpReals8_type%max_src_dist = horiz_interp_in%horizInterpReals8_type%max_src_dist
244 horiz_interp_out%horizInterpReals8_type%is_allocated = .true.
246 if(
allocated(horiz_interp_in%horizInterpReals8_type%mask_in)) &
247 horiz_interp_out%horizInterpReals8_type%mask_in = horiz_interp_in%horizInterpReals8_type%mask_in
249 else if (horiz_interp_in%horizInterpReals4_type%is_allocated)
then
250 if(
allocated(horiz_interp_in%horizInterpReals4_type%faci)) &
251 horiz_interp_out%horizInterpReals4_type%faci = horiz_interp_in%horizInterpReals4_type%faci
253 if(
allocated( horiz_interp_in%horizInterpReals4_type%facj)) &
254 horiz_interp_out%horizInterpReals4_type%facj = horiz_interp_in%horizInterpReals4_type%facj
256 if(
allocated( horiz_interp_in%horizInterpReals4_type%area_src)) &
257 horiz_interp_out%horizInterpReals4_type%area_src = horiz_interp_in%horizInterpReals4_type%area_src
259 if(
allocated( horiz_interp_in%horizInterpReals4_type%area_dst)) &
260 horiz_interp_out%horizInterpReals4_type%area_dst = horiz_interp_in%horizInterpReals4_type%area_dst
262 if(
allocated( horiz_interp_in%horizInterpReals4_type%wti)) &
263 horiz_interp_out%horizInterpReals4_type%wti = horiz_interp_in%horizInterpReals4_type%wti
265 if(
allocated( horiz_interp_in%horizInterpReals4_type%wtj)) &
266 horiz_interp_out%horizInterpReals4_type%wtj = horiz_interp_in%horizInterpReals4_type%wtj
268 if(
allocated( horiz_interp_in%horizInterpReals4_type%src_dist)) &
269 horiz_interp_out%horizInterpReals4_type%src_dist = horiz_interp_in%horizInterpReals4_type%src_dist
271 if(
allocated( horiz_interp_in%horizInterpReals4_type%rat_x)) &
272 horiz_interp_out%horizInterpReals4_type%rat_x = horiz_interp_in%horizInterpReals4_type%rat_x
274 if(
allocated( horiz_interp_in%horizInterpReals4_type%rat_y)) &
275 horiz_interp_out%horizInterpReals4_type%rat_y = horiz_interp_in%horizInterpReals4_type%rat_y
277 if(
allocated( horiz_interp_in%horizInterpReals4_type%lon_in)) &
278 horiz_interp_out%horizInterpReals4_type%lon_in = horiz_interp_in%horizInterpReals4_type%lon_in
280 if(
allocated( horiz_interp_in%horizInterpReals4_type%lat_in)) &
281 horiz_interp_out%horizInterpReals4_type%lat_in = horiz_interp_in%horizInterpReals4_type%lat_in
283 if(
allocated( horiz_interp_in%horizInterpReals4_type%area_frac_dst)) &
284 horiz_interp_out%horizInterpReals4_type%area_frac_dst = horiz_interp_in%horizInterpReals4_type%area_frac_dst
286 horiz_interp_out%horizInterpReals4_type%max_src_dist = horiz_interp_in%horizInterpReals4_type%max_src_dist
288 horiz_interp_out%horizInterpReals4_type%is_allocated = .true.
290 if(
allocated(horiz_interp_in%horizInterpReals4_type%mask_in)) &
291 horiz_interp_out%horizInterpReals4_type%mask_in = horiz_interp_in%horizInterpReals4_type%mask_in
294 call mpp_error(fatal,
"horiz_interp_type_eq: cannot assign unallocated real values from horiz_interp_in")
297 if(horiz_interp_in%interp_method == conserve)
then
298 horiz_interp_out%version = horiz_interp_in%version
299 if(horiz_interp_in%version==2) horiz_interp_out%nxgrid = horiz_interp_in%nxgrid