libsim  Versione6.3.0

◆ griddim_set_val()

subroutine griddim_set_val ( type(griddim_def), intent(inout)  this,
integer, intent(in), optional  nx,
integer, intent(in), optional  ny,
double precision, intent(in), optional  xmin,
double precision, intent(in), optional  xmax,
double precision, intent(in), optional  ymin,
double precision, intent(in), optional  ymax,
double precision, intent(in), optional  dx,
double precision, intent(in), optional  dy,
integer, intent(in), optional  component_flag,
character(len=*), intent(in), optional  proj_type,
double precision, intent(in), optional  lov,
integer, intent(in), optional  zone,
double precision, intent(in), optional  xoff,
double precision, intent(in), optional  yoff,
double precision, intent(in), optional  longitude_south_pole,
double precision, intent(in), optional  latitude_south_pole,
double precision, intent(in), optional  angle_rotation,
double precision, intent(in), optional  longitude_stretch_pole,
double precision, intent(in), optional  latitude_stretch_pole,
double precision, intent(in), optional  stretch_factor,
double precision, intent(in), optional  latin1,
double precision, intent(in), optional  latin2,
double precision, intent(in), optional  lad,
integer, intent(in), optional  projection_center_flag,
double precision, intent(in), optional  ellips_smaj_axis,
double precision, intent(in), optional  ellips_flatt,
integer, intent(in), optional  ellips_type 
)

Set the object content.

Parametri
[in,out]thisobject to be queried
[in]nxnumber of points along the x axis
[in]nynumber of points along the y axis
[in]xminlongitudini e latitudini minime e massime
[in]xmaxlongitudini e latitudini minime e massime
[in]yminlongitudini e latitudini minime e massime
[in]ymaxlongitudini e latitudini minime e massime
[in]ymaxgrid extremes in projection units (degrees or meters depending on the projection type)
[in]dxgrid steps in x and y directions
[in]dygrid steps in x and y directions
[in]component_flagResolved u- and v- components of vector quantities relative to 0=the easterly and northerly directions 1=the defined grid in the direction of increasing x and y (or i and j) coordinates respectively (0=north, 128=south)
[in]proj_typetype of projection
[in]lovline of view, also known as reference longitude or orientation of the grid (polar projections)
[in]zoneEarth zone (mainly for UTM), sets lov to the correct zone central meridian
[in]xoffoffset on x axis (false easting)
[in]yoffoffset on y axis (false northing)
[in]longitude_south_polelongitude of the southern pole of projection
[in]latitude_south_polelatitude of the southern pole of projection
[in]angle_rotationangle of rotation of projection
[in]longitude_stretch_polelongitude of the pole of stretching
[in]latitude_stretch_polelatitude of the pole of stretching
[in]stretch_factorstretching factor
[in]latin1first standard latitude from main pole (Lambert)
[in]latin2second standard latitude from main pole (Lambert)
[in]ladlatitude at which dx and dy (in m) are specified (Lambert, grib2 only)
[in]projection_center_flagflag indicating which pole is represented
[in]ellips_smaj_axisEarth semi-major axis
[in]ellips_flattEarth flattening
[in]ellips_typenumber in the interval [1,nellips] indicating a predefined ellipsoid, alternative to the previous arguments

Definizione alla linea 744 del file grid_class.F90.

744 
745 END SUBROUTINE griddim_export_grid_id
746 
747 
748 #ifdef HAVE_LIBGRIBAPI
749 ! grib_api driver
750 SUBROUTINE griddim_import_gribapi(this, gaid)
751 USE grib_api
752 TYPE(griddim_def),INTENT(inout) :: this ! griddim object
753 INTEGER, INTENT(in) :: gaid ! grib_api id of the grib loaded in memory to import
754 
755 DOUBLE PRECISION :: loFirst, loLast, laFirst, laLast, x1, y1
756 INTEGER :: EditionNumber, iScansNegatively, jScansPositively, zone, datum, &
757  reflon, ierr
758 
759 ! Generic keys
760 CALL grib_get(gaid, 'typeOfGrid', this%grid%proj%proj_type)
761 #ifdef DEBUG
762 call l4f_category_log(this%category,l4f_debug, &
763  "griddim_import_gribapi, grid type "//trim(this%grid%proj%proj_type))
764 #endif
765 CALL grib_get(gaid,'GRIBEditionNumber',editionnumber)
766 
767 ! Keys valid for (almost?) all cases, Ni and Nj are universal aliases
768 CALL grib_get(gaid, 'Ni', this%dim%nx)
769 CALL grib_get(gaid, 'Nj', this%dim%ny)
770 CALL griddim_import_ellipsoid(this, gaid) ! placed here, not valid for utm datum /= 1
771 
772 CALL grib_get(gaid,'iScansNegatively',iscansnegatively)
773 CALL grib_get(gaid,'jScansPositively',jscanspositively)
774 CALL grib_get(gaid,'uvRelativeToGrid',this%grid%grid%component_flag)
775 
776 ! Keys for rotated grids (checked through missing values)
777 CALL grib_get_dmiss(gaid,'longitudeOfSouthernPoleInDegrees', &
778  this%grid%proj%rotated%longitude_south_pole)
779 CALL grib_get_dmiss(gaid,'latitudeOfSouthernPoleInDegrees', &
780  this%grid%proj%rotated%latitude_south_pole)
781 CALL grib_get_dmiss(gaid,'angleOfRotationInDegrees', &
782  this%grid%proj%rotated%angle_rotation)
783 
784 ! Keys for stretched grids (checked through missing values)
785 ! units must be verified, still experimental in grib_api
786 ! # TODO: Is it a float? Is it signed?
787 IF (editionnumber == 1) THEN
788  CALL grib_get_dmiss(gaid,'longitudeOfStretchingPoleInDegrees', &

Generated with Doxygen.