libsim Versione 8.0.0

◆ grid_transform_get_val()

subroutine grid_transform_get_val ( type(grid_transform), intent(in) this,
type(vol7d_level), dimension(:), optional, pointer output_level_auto,
logical, dimension(:), intent(out), optional, allocatable point_mask,
integer, dimension(:), intent(out), optional, allocatable point_index,
integer, dimension(:), intent(out), optional, allocatable output_point_index,
integer, intent(out), optional levshift,
integer, intent(out), optional levused )
private

Method for returning the contents of the object.

Only a few selected memebrs of grid_transform object can be queried, this is mainly for use by volgrid6d_class, rather than for public use.

Parametri
[in]thisobject to examine
output_level_autoarray of auto-generated output levels
[out]point_maskmask array indicating the input points that are kept in the output, for metamorphosis transformations
[out]point_indexarray of indices indicating the polygon to which every input point has been assigned, if applicable
[out]output_point_indexarray of indices indicating the polygon to which every output point has been assigned, if applicable
[out]levshiftshift between input and output levels for vertint
[out]levusednumber of input levels used for vertint

Definizione alla linea 3086 del file grid_transform_class.F90.

3088 RETURN
3089 ENDIF
3090
3091 IF (innz /= outnz) THEN
3092 CALL l4f_category_log(this%category,l4f_error,"horizontal interpolation")
3093 CALL l4f_category_log(this%category,l4f_error,"inconsistent vert. sizes: "//&
3094 t2c(innz)//" /= "//t2c(outnz))
3095 CALL raise_error()
3096 RETURN
3097 ENDIF
3098
3099ENDIF
3100
3101#ifdef DEBUG
3102call l4f_category_log(this%category,l4f_debug, &
3103 "start grid_transform_compute "//trim(this%trans%trans_type)//':'// &
3104 trim(this%trans%sub_type))
3105#endif
3106
3107IF (this%trans%trans_type == 'zoom') THEN
3108
3109 field_out(this%outinx:this%outfnx, &
3110 this%outiny:this%outfny,:) = &
3111 field_in(this%iniox:this%infox, &
3112 this%inioy:this%infoy,:)
3113
3114ELSE IF (this%trans%trans_type == 'boxregrid') THEN
3115
3116 IF (this%trans%sub_type == 'average') THEN
3117 IF (vartype == var_dir360) THEN
3118 DO k = 1, innz
3119 IF (.NOT.lzlist(k)) cycle
3120 jj = 0
3121 DO j = 1, this%inny - this%trans%box_info%npy + 1, this%trans%box_info%npy

Generated with Doxygen.