libsim  Versione6.3.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 
)

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 2807 del file grid_transform_class.F90.

2807  je = j+this%trans%box_info%npy-1
2808  jj = jj+1
2809  ii = 0
2810  DO i = 1, this%innx - this%trans%box_info%npx + 1, this%trans%box_info%npx
2811  ie = i+this%trans%box_info%npx-1
2812  ii = ii+1
2813  navg = count(field_in(i:ie,j:je,k) /= rmiss)
2814  IF (navg > 0) THEN
2815  field_out(ii,jj,k) = find_prevailing_direction(field_in(i:ie,j:je,k), &
2816  0.0, 360.0, 5.0)
2817  ENDIF
2818  ENDDO
2819  ENDDO
2820  ENDDO
2821 
2822  ELSE
2823  DO k = 1, innz
2824  jj = 0
2825  DO j = 1, this%inny - this%trans%box_info%npy + 1, this%trans%box_info%npy
2826  je = j+this%trans%box_info%npy-1
2827  jj = jj+1
2828  ii = 0
2829  DO i = 1, this%innx - this%trans%box_info%npx + 1, this%trans%box_info%npx
2830  ie = i+this%trans%box_info%npx-1
2831  ii = ii+1
2832  navg = count(field_in(i:ie,j:je,k) /= rmiss)
2833  IF (navg > 0) THEN
2834  field_out(ii,jj,k) = sum(field_in(i:ie,j:je,k), &
2835  mask=(field_in(i:ie,j:je,k) /= rmiss))/navg
2836  ENDIF
2837  ENDDO
2838  ENDDO
2839  ENDDO
2840 

Generated with Doxygen.