|
◆ gridinfo_init()
subroutine gridinfo_class::gridinfo_init |
( |
type(gridinfo_def), intent(out) |
this, |
|
|
type(grid_id), intent(in), optional |
gaid, |
|
|
type(griddim_def), intent(in), optional |
griddim, |
|
|
type(datetime), intent(in), optional |
time, |
|
|
type(vol7d_timerange), intent(in), optional |
timerange, |
|
|
type(vol7d_level), intent(in), optional |
level, |
|
|
type(volgrid6d_var), intent(in), optional |
var, |
|
|
logical, intent(in), optional |
clone, |
|
|
character(len=*), intent(in), optional |
categoryappend |
|
) |
| |
|
private |
Constructor, it creates a new instance of the object.
All the additional parameters are optional and they will be initialised to the corresponding missing value if not provided.
- Parametri
-
[out] | this | object to be initialized |
[in] | gaid | identificator of the grid to be described |
[in] | griddim | grid descriptor |
[in] | time | time dimension descriptor |
[in] | timerange | timerange (forecast, analysis, statistically processed) dimension descriptor |
[in] | level | vertical level dimension descriptor |
[in] | var | physical variable dimension descriptor |
[in] | clone | if provided and .TRUE., the gaid will be cloned and not simply copied into the gridinfo object |
[in] | categoryappend | append this suffix to log4fortran namespace category |
Definizione alla linea 718 del file gridinfo_class.F90.
719 INTEGER :: EditionNumber,level1,l1,level2,l2 720 INTEGER :: ltype,ltype1,scalef1,scalev1,ltype2,scalef2,scalev2 722 call grib_get(gaid, 'GRIBEditionNumber',editionnumber) 724 if (editionnumber == 1) then 726 call grib_get(gaid, 'indicatorOfTypeOfLevel',ltype) 727 call grib_get(gaid, 'topLevel',l1) 728 call grib_get(gaid, 'bottomLevel',l2) 730 call level_g1_to_g2(ltype,l1,l2,ltype1,scalef1,scalev1,ltype2,scalef2,scalev2) 732 else if (editionnumber == 2) then 734 call grib_get(gaid, 'typeOfFirstFixedSurface',ltype1) 735 call grib_get(gaid, 'scaleFactorOfFirstFixedSurface',scalef1) 736 call grib_get(gaid, 'scaledValueOfFirstFixedSurface',scalev1) 737 IF (scalef1 == -1 .OR. scalev1 == -1) THEN 738 scalef1 = imiss; scalev1 = imiss 741 call grib_get(gaid, 'typeOfSecondFixedSurface',ltype2) 742 call grib_get(gaid, 'scaleFactorOfSecondFixedSurface',scalef2) 743 call grib_get(gaid, 'scaledValueOfSecondFixedSurface',scalev2) 744 IF (scalef2 == -1 .OR. scalev2 == -1) THEN 745 scalef2 = imiss; scalev2 = imiss 750 CALL l4f_log(l4f_error, 'GribEditionNumber '// t2c(editionnumber)// ' not supported') 756 call level_g2_to_dballe(ltype1,scalef1,scalev1,ltype2,scalef2,scalev2, & 759 call init (this,level1,l1,level2,l2) 761 END SUBROUTINE level_import_gribapi 764 SUBROUTINE level_export_gribapi(this, gaid) 765 TYPE(vol7d_level), INTENT(in) :: this 766 INTEGER, INTENT(in) :: gaid 768 INTEGER :: EditionNumber, ltype1, scalef1, scalev1, ltype2, scalef2, scalev2, & 771 CALL level_dballe_to_g2(this%level1, this%l1, this%level2, this%l2, & 772 ltype1, scalef1, scalev1, ltype2, scalef2, scalev2) 774 call grib_get(gaid, 'GRIBEditionNumber',editionnumber) 776 if (editionnumber == 1) then 778 CALL level_g2_to_g1(ltype1,scalef1,scalev1,ltype2,scalef2,scalev2,ltype,l1,l2) 780 call grib_set(gaid, 'indicatorOfTypeOfLevel',ltype) 783 call grib_set(gaid, 'bottomLevel',l2) 784 call grib_set(gaid, 'topLevel',l1) Functions that return a trimmed CHARACTER representation of the input variable.
Costruttori per le classi datetime e timedelta.
|