libsim Versione 7.2.6
|
◆ griddim_init()
Constructor for a griddim_def object.
Definizione alla linea 469 del file grid_class.F90. 477IF (PRESENT(ny)) this%dim%ny = ny
478
479CALL set_val(this%grid%proj, proj_type=proj_type, lov=lov, zone=zone, &
480 xoff=xoff, yoff=yoff, longitude_south_pole=longitude_south_pole, &
481 latitude_south_pole=latitude_south_pole, angle_rotation=angle_rotation, &
482 longitude_stretch_pole=longitude_stretch_pole, &
483 latitude_stretch_pole=latitude_stretch_pole, stretch_factor=stretch_factor, &
484 latin1=latin1, latin2=latin2, lad=lad, &
485 projection_center_flag=projection_center_flag, &
486 ellips_smaj_axis=ellips_smaj_axis, ellips_flatt=ellips_flatt, &
487 ellips_type=ellips_type)
488
489CALL set_val(this%grid%grid, &
490 xmin, xmax, ymin, ymax, dx, dy, component_flag)
491
492END SUBROUTINE griddim_set_val
493
494
495!> This method reads from a Fortran file unit the contents of the
496!! object \a this. The record to be read must have been written with
497!! the ::write_unit method. The method works both on formatted and
498!! unformatted files.
499SUBROUTINE griddim_read_unit(this, unit)
500TYPE(griddim_def),INTENT(out) :: this !< object to be read
501INTEGER, INTENT(in) :: unit !< unit from which to read, it must be an opened Fortran file unit
502
503
504CALL read_unit(this%dim, unit)
505CALL read_unit(this%grid%proj, unit)
506CALL read_unit(this%grid%grid, unit)
507
508END SUBROUTINE griddim_read_unit
509
510
511!> This method writes on a Fortran file unit the contents of the
512!! object \a this. The record can successively be read by the
513!! ::read_unit method. The method works both on formatted and
514!! unformatted files.
515SUBROUTINE griddim_write_unit(this, unit)
516TYPE(griddim_def),INTENT(in) :: this !< object to be written
517INTEGER, INTENT(in) :: unit !< unit where to write, it must be an opened Fortran file unit
518
519
520CALL write_unit(this%dim, unit)
521CALL write_unit(this%grid%proj, unit)
522CALL write_unit(this%grid%grid, unit)
523
524END SUBROUTINE griddim_write_unit
525
526
527!> Euristically determine the approximate central longitude of the
528!! grid in degrees.
529!! The method depends on the projection used.
530FUNCTION griddim_central_lon(this) RESULT(lon)
531TYPE(griddim_def),INTENT(inout) :: this !< grid descriptor
532
533DOUBLE PRECISION :: lon
534
535CALL griddim_pistola_central_lon(this, lon)
536
537END FUNCTION griddim_central_lon
|