|
◆ 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 1418 del file volgrid6d_class.F90.
1419 type(volgrid6d), INTENT(in) :: volgrid6d_in
1420 type(volgrid6d), INTENT(inout) :: volgrid6d_out
1421 TYPE(vol7d_level), INTENT(in), OPTIONAL :: lev_out(:)
1422 INTEGER, INTENT(in), OPTIONAL :: var_coord_vol
1423 LOGICAL, INTENT(in), OPTIONAL :: clone
1425 INTEGER :: ntime, ntimerange, inlevel, onlevel, nvar, &
1426 itime, itimerange, ilevel, ivar, levshift, levused, lvar_coord_vol, spos
1427 REAL, POINTER :: voldatiin(:,:,:), voldatiout(:,:,:), coord_3d_in(:,:,:)
1428 TYPE(vol7d_level) :: output_levtype
1432 call l4f_category_log(volgrid6d_in%category,l4f_debug, "start volgrid6d_transform_compute")
1440 lvar_coord_vol = optio_i(var_coord_vol)
1442 if ( associated(volgrid6d_in%time)) then
1443 ntime= size(volgrid6d_in%time)
1444 volgrid6d_out%time=volgrid6d_in%time
1447 if ( associated(volgrid6d_in%timerange)) then
1448 ntimerange= size(volgrid6d_in%timerange)
1449 volgrid6d_out%timerange=volgrid6d_in%timerange
1452 IF ( ASSOCIATED(volgrid6d_in%level)) THEN
1453 inlevel= SIZE(volgrid6d_in%level)
1455 IF ( PRESENT(lev_out)) THEN
1456 onlevel= SIZE(lev_out)
1457 volgrid6d_out%level=lev_out
1458 ELSE IF ( ASSOCIATED(volgrid6d_in%level)) THEN
1459 onlevel= SIZE(volgrid6d_in%level)
1460 volgrid6d_out%level=volgrid6d_in%level
|