|
|
◆ export_to_gridinfov()
| subroutine volgrid6d_class::export_to_gridinfov |
( |
type(volgrid6d), intent(inout) |
this, |
|
|
type(arrayof_gridinfo), intent(inout) |
gridinfov, |
|
|
type(grid_id), intent(in), optional |
gaid_template, |
|
|
logical, intent(in), optional |
clone |
|
) |
| |
|
private |
Export a volgrid6d object to an arrayof_gridinfo object.
The multidimensional volgrid6d structure is serialized into a one-dimensional array of gridinfo_def objects, which is allocated to the proper size if not already allocated, or it is extended keeping the old data if any.
- Parametri
-
| [in,out] | this | volume to be exported |
| [in,out] | gridinfov | output array of gridinfo_def objects |
| [in] | gaid_template | grid_id template to be used for output data replacing the one contained in this |
| [in] | clone | if provided and .TRUE., clone the grid_id included in this rather than making a shallow copy |
Definizione alla linea 1472 del file volgrid6d_class.F90.
1472 type(volgrid6d), INTENT(in) :: volgrid6d_in 1473 type(volgrid6d), INTENT(inout) :: volgrid6d_out 1474 TYPE(vol7d_level), INTENT(in), OPTIONAL :: lev_out(:) 1475 INTEGER, INTENT(in), OPTIONAL :: var_coord_vol 1476 LOGICAL, INTENT(in), OPTIONAL :: clone 1478 INTEGER :: ntime, ntimerange, inlevel, onlevel, nvar, & 1479 itime, itimerange, ilevel, ivar, levshift, levused, lvar_coord_vol, spos 1480 REAL, POINTER :: voldatiin(:,:,:), voldatiout(:,:,:), coord_3d_in(:,:,:) 1481 TYPE(vol7d_level) :: output_levtype 1482 LOGICAL, ALLOCATABLE :: zlist(:) 1486 call l4f_category_log(volgrid6d_in%category,l4f_debug, "start volgrid6d_transform_compute") 1494 lvar_coord_vol = optio_i(var_coord_vol) 1496 if ( associated(volgrid6d_in%time)) then 1497 ntime= size(volgrid6d_in%time) 1498 volgrid6d_out%time=volgrid6d_in%time 1501 if ( associated(volgrid6d_in%timerange)) then 1502 ntimerange= size(volgrid6d_in%timerange) 1503 volgrid6d_out%timerange=volgrid6d_in%timerange 1506 IF ( ASSOCIATED(volgrid6d_in%level)) THEN 1507 inlevel= SIZE(volgrid6d_in%level) 1509 IF ( PRESENT(lev_out)) THEN 1510 onlevel= SIZE(lev_out) 1511 volgrid6d_out%level=lev_out 1512 ELSE IF ( ASSOCIATED(volgrid6d_in%level)) THEN 1513 onlevel= SIZE(volgrid6d_in%level) 1514 volgrid6d_out%level=volgrid6d_in%level
|