|
libsim Versione 8.0.0
|
◆ volgrid6dv_transform()
Performs the specified abstract transformation on the arrays of data provided. The abstract transformation is specified by this parameter; the corresponding specifical transformation (grid_transform object) is created and destroyed internally. The output transformed object is created internally and it does not require preliminary initialisation. According to the input data and to the transformation type, the output array may have of one or more volgrid6d elements on different grids.
Definizione alla linea 2142 del file volgrid6d_class.F90. 2144!! is created internally and it does not require preliminary
2145!! initialisation.
2146SUBROUTINE volgrid6d_v7d_transform(this, volgrid6d_in, vol7d_out, v7d, &
2147 maskgrid, maskbounds, networkname, noconvert, find_index, categoryappend)
2148TYPE(transform_def),INTENT(in) :: this !< object specifying the abstract transformation
2149TYPE(volgrid6d),INTENT(inout) :: volgrid6d_in !< object to be transformed, it is not modified, despite the INTENT(inout)
2150TYPE(vol7d),INTENT(out) :: vol7d_out !< transformed object, it does not requires initialisation
2151TYPE(vol7d),INTENT(in),OPTIONAL :: v7d !< object containing a list of points over which transformation has to be done (required by some transformation types)
2152REAL,INTENT(in),OPTIONAL :: maskgrid(:,:) !< 2D field to be used for defining subareas according to its values, it must have the same shape as the field to be interpolated (for transformation type 'maskinter')
2153REAL,INTENT(in),OPTIONAL :: maskbounds(:) !< array of boundary values for defining subareas from the values of \a maskgrid, the number of subareas is SIZE(maskbounds) - 1, if not provided a default based on extreme values of \a makgrid is used
2154CHARACTER(len=*),OPTIONAL,INTENT(in) :: networkname !< set the output network name in vol7d_out (default='generic')
2155LOGICAL,OPTIONAL,INTENT(in) :: noconvert !< do not try to match variable and convert values during transform
2156PROCEDURE(basic_find_index),POINTER,OPTIONAL :: find_index
2157CHARACTER(len=*),INTENT(in),OPTIONAL :: categoryappend !< append this suffix to log4fortran namespace category
2158
2159type(grid_transform) :: grid_trans
2160INTEGER :: ntime, ntimerange, nlevel, nvar, nana, time_definition, nnetwork, stallo
2161INTEGER :: itime, itimerange, inetwork
2162TYPE(datetime),ALLOCATABLE :: validitytime(:,:)
2163INTEGER,ALLOCATABLE :: point_index(:)
2164TYPE(vol7d) :: v7d_locana
2165
2166#ifdef DEBUG
2167call l4f_category_log(volgrid6d_in%category,l4f_debug,"start volgrid6d_v7d_transform")
2168#endif
2169
2170call vg6d_wind_unrot(volgrid6d_in)
2171
|