|
◆ export_to_gridinfov()
subroutine 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 |
|
) |
| |
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 1466 del file volgrid6d_class.F90.
1467 type(volgrid6d), INTENT(in) :: volgrid6d_in
1468 type(volgrid6d), INTENT(inout) :: volgrid6d_out
1469 TYPE(vol7d_level), INTENT(in), OPTIONAL :: lev_out(:)
1470 INTEGER, INTENT(in), OPTIONAL :: var_coord_vol
1471 LOGICAL, INTENT(in), OPTIONAL :: clone
1473 INTEGER :: ntime, ntimerange, inlevel, onlevel, nvar, &
1474 itime, itimerange, ilevel, ivar, levshift, levused, lvar_coord_vol, spos
1475 REAL, POINTER :: voldatiin(:,:,:), voldatiout(:,:,:), coord_3d_in(:,:,:)
1476 TYPE(vol7d_level) :: output_levtype
1480 call l4f_category_log(volgrid6d_in%category,l4f_debug, "start volgrid6d_transform_compute")
1488 lvar_coord_vol = optio_i(var_coord_vol)
1490 if ( associated(volgrid6d_in%time)) then
1491 ntime= size(volgrid6d_in%time)
1492 volgrid6d_out%time=volgrid6d_in%time
1495 if ( associated(volgrid6d_in%timerange)) then
1496 ntimerange= size(volgrid6d_in%timerange)
1497 volgrid6d_out%timerange=volgrid6d_in%timerange
1500 IF ( ASSOCIATED(volgrid6d_in%level)) THEN
1501 inlevel= SIZE(volgrid6d_in%level)
1503 IF ( PRESENT(lev_out)) THEN
1504 onlevel= SIZE(lev_out)
1505 volgrid6d_out%level=lev_out
1506 ELSE IF ( ASSOCIATED(volgrid6d_in%level)) THEN
1507 onlevel= SIZE(volgrid6d_in%level)
1508 volgrid6d_out%level=volgrid6d_in%level
|