Fortran: Module Interface ncdf_meteo - (Source File: ncdf_meteo.F90)

INTERFACE:

    module ncdf_meteo
DESCRIPTION:

USES:

    use netcdf
    use time, only: string_to_julsecs,time_diff,add_secs,in_interval
    use time, only: jul0,secs0,julianday,secondsofday,timestep,simtime
    use time, only: write_time_string,timestr
    use domain, only: imin,imax,jmin,jmax,az,lonc,latc,convc
    use grid_interpol, only: init_grid_interpol,do_grid_interpol
    use grid_interpol, only: to_rotated_lat_lon
    use meteo, only: meteo_file,on_grid,calc_met,met_method,hum_method
    use meteo, only: RELATIVE_HUM,WET_BULB,DEW_POINT,SPECIFIC_HUM
    use meteo, only: airp,u10,v10,t2,hum,tcc
    use meteo, only: fwf_method,evap,precip
    use meteo, only: tausx,tausy,swr,shf
    use meteo, only: new_meteo,t_1,t_2
    use meteo, only: evap_factor,precip_factor
    use exceptions
    IMPLICIT NONE
    private
PUBLIC MEMBER FUNCTIONS:
    public init_meteo_input_ncdf,get_meteo_data_ncdf
   !PRIVATE DATA MEMBERS:
    REALTYPE        :: offset
    integer         :: ncid,ndims,dims(3)
    integer         :: start(3),edges(3)
    integer         :: u10_id,v10_id,airp_id,t2_id
    integer         :: hum_id,convp_id,largep_id,tcc_id
    integer         :: evap_id=-1,precip_id=-1
    integer         :: tausx_id,tausy_id,swr_id,shf_id
    integer         :: iextr,jextr,textr,tmax=-1
    integer         :: grid_scan=1
    logical         :: point_source=.false.
    logical         :: rotated_meteo_grid=.false.
 
    REALTYPE, allocatable     :: met_lon(:),met_lat(:)
    REAL_4B, allocatable      :: met_times(:)
    REAL_4B, allocatable      :: wrk(:,:)
    REALTYPE, allocatable     :: wrk_dp(:,:)
 
    For gridinterpolation
    REALTYPE, allocatable     :: beta(:,:)
    REALTYPE, allocatable     :: ti(:,:),ui(:,:)
    integer, allocatable      :: gridmap(:,:,:)
    REALTYPE, parameter       :: pi=3.1415926535897932384626433832795029
    REALTYPE, parameter       :: deg2rad=pi/180.,rad2deg=180./pi
    REALTYPE                  :: southpole(3) = (/0.0,-90.0,0.0/)
    character(len=10)         :: name_lon="lon"
    character(len=10)         :: name_lat="lat"
    character(len=10)         :: name_time="time"
    character(len=10)         :: name_u10="u10"
    character(len=10)         :: name_v10="v10"
    character(len=10)         :: name_airp="slp"
    character(len=10)         :: name_t2="t2"
    character(len=10)         :: name_hum1="sh"
    character(len=10)         :: name_hum2="rh"
    character(len=10)         :: name_hum3="dev2"
    character(len=10)         :: name_hum4="twet"
    character(len=10)         :: name_tcc="tcc"
    character(len=10)         :: name_evap="evap"
    character(len=10)         :: name_precip="precip"
 
    character(len=10)         :: name_tausx="tausx"
    character(len=10)         :: name_tausy="tausy"
    character(len=10)         :: name_swr="swr"
    character(len=10)         :: name_shf="shf"
    character(len=128)        :: model_time
REVISION HISTORY:
    Original author(s): Karsten Bolding & Hans Burchard



Subsections

kklingbe 2017-10-02