libsim Versione 7.2.0

◆ volgrid6d_export_to_file()

subroutine volgrid6d_export_to_file ( type(volgrid6d), dimension(:)  this,
character(len=*), intent(in)  filename,
type(grid_id), intent(in), optional  gaid_template,
character(len=*), intent(in), optional  categoryappend 
)

High level method for exporting a volume array to file.

All the information contained into an array of volgrid6d objects, i.e. dimension descriptors and data, is exported to a file using the proper output driver (typically grib_api for grib format). If a template is provided, it will determine the characteristic of the output file, otherwise the grid_id descriptors contained in the volgrid6d object will be used

Parametri
thisvolume(s) to be exported
[in]filenameoutput file name
[in]gaid_templatetemplate for the output file, if provided the grid_id information stored in the volgrid6d objects will be ignored
[in]categoryappendappend this suffix to log4fortran namespace category

Definizione alla linea 1542 del file volgrid6d_class.F90.

1543 IF (c_e(spos)) THEN ! compute difference wrt surface coordinate
1544 IF (spos == 0) THEN ! error condition, set all to missing and goodnight
1545 coord_3d_in(:,:,levshift+1:levshift+levused) = rmiss
1546 ELSE
1547 DO ilevel = levshift+1, levshift+levused
1548 WHERE(c_e(coord_3d_in(:,:,ilevel)) .AND. c_e(coord_3d_in(:,:,spos)))
1549 coord_3d_in(:,:,ilevel) = coord_3d_in(:,:,ilevel) - &
1550 coord_3d_in(:,:,spos)
1551 ELSEWHERE
1552 coord_3d_in(:,:,ilevel) = rmiss
1553 END WHERE
1554 ENDDO
1555 ENDIF
1556 ENDIF
1557 ENDIF
1558 CALL volgrid_get_vol_3d(volgrid6d_in, itime, itimerange, ivar, &
1559 voldatiin)
1560 IF (ASSOCIATED(volgrid6d_out%voldati)) & ! improve!!!!
1561 CALL volgrid_get_vol_3d(volgrid6d_out, itime, itimerange, ivar, &
1562 voldatiout)
1563 IF (c_e(lvar_coord_vol)) THEN
1564 CALL compute(this, voldatiin, voldatiout, convert(volgrid6d_in%var(ivar)), &
1565 coord_3d_in(:,:,levshift+1:levshift+levused)) ! subset coord_3d_in
1566 ELSE
1567 CALL compute(this, voldatiin, voldatiout, convert(volgrid6d_in%var(ivar)))
1568 ENDIF
1569 CALL volgrid_set_vol_3d(volgrid6d_out, itime, itimerange, ivar, &
1570 voldatiout)
1571 ENDDO
1572 ENDDO
1573ENDDO
1574
1575IF (c_e(lvar_coord_vol)) THEN
1576 DEALLOCATE(coord_3d_in)
1577ENDIF

Generated with Doxygen.