|
◆ volgrid6dv_transform()
subroutine volgrid6d_class::volgrid6dv_transform |
( |
type(transform_def), intent(in) |
this, |
|
|
type(griddim_def), intent(in), optional |
griddim, |
|
|
type(volgrid6d), dimension(:), intent(inout) |
volgrid6d_in, |
|
|
type(volgrid6d), dimension(:), pointer |
volgrid6d_out, |
|
|
type(vol7d_level), dimension(:), intent(in), optional |
lev_out, |
|
|
type(volgrid6d), intent(in), optional |
volgrid6d_coord_in, |
|
|
real, dimension(:,:), intent(in), optional |
maskgrid, |
|
|
real, dimension(:), intent(in), optional |
maskbounds, |
|
|
logical, intent(in), optional |
clone, |
|
|
logical, intent(in), optional |
decode, |
|
|
character(len=*), intent(in), optional |
categoryappend |
|
) |
| |
|
private |
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. - Parametri
-
[in] | this | object specifying the abstract transformation |
[in] | griddim | griddim specifying the output grid (required by most transformation types) |
[in,out] | volgrid6d_in | object to be transformed, it is an array of volgrid6d objects, each of which will be transformed, it is not modified, despite the INTENT(inout) |
| volgrid6d_out | transformed object, it is a non associated pointer to an array of volgrid6d objects which will be allocated by the method |
[in] | lev_out | vol7d_level object defining target vertical grid |
[in] | volgrid6d_coord_in | object providing time constant input vertical coordinate for some kind of vertical interpolations |
[in] | 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 subtype 'maskfill') |
[in] | maskbounds | array of boundary values for defining a subset of valid points where the values of maskgrid are within the first and last value of maskbounds (for transformation type 'metamorphosis:maskfill') |
[in] | clone | if provided and .TRUE. , clone the gaid's from volgrid6d_in to volgrid6d_out |
[in] | decode | if provided and .FALSE. the data volume is not allocated, but work is performed on grid_id's |
[in] | categoryappend | append this suffix to log4fortran namespace category |
Definizione alla linea 2142 del file volgrid6d_class.F90.
2145 LOGICAL, OPTIONAL, INTENT(in) :: noconvert
2146 PROCEDURE(basic_find_index), POINTER, OPTIONAL :: find_index
2149 type(grid_transform) :: grid_trans
2150 INTEGER :: ntime, ntimerange, nlevel, nvar, nana, time_definition, nnetwork
2151 INTEGER :: itime, itimerange, inetwork
2152 TYPE(datetime), ALLOCATABLE :: validitytime(:,:)
2153 INTEGER, ALLOCATABLE :: point_index(:)
2154 TYPE(vol7d) :: v7d_locana
2169 if (.not. c_e(time_definition)) then
|