lb2lambert_uEMEP Subroutine

public subroutine lb2lambert_uEMEP(x, y, gl, gb, lon0, lat0)

Arguments

Type IntentOptional Attributes Name
real, intent(out) :: x
real, intent(out) :: y
real, intent(in) :: gl
real, intent(in) :: gb
real, intent(in) :: lon0
real, intent(in) :: lat0

Called by

proc~~lb2lambert_uemep~~CalledByGraph proc~lb2lambert_uemep lb2lambert_uEMEP proc~uemep_subgrid_emission_emep uEMEP_subgrid_emission_EMEP proc~uemep_subgrid_emission_emep->proc~lb2lambert_uemep program~uemep uEMEP program~uemep->proc~uemep_subgrid_emission_emep

Source Code

    subroutine lb2lambert_uEMEP(x, y, gl, gb, lon0, lat0)
        real, intent(in) :: gl, gb, lon0, lat0
        real, intent(out):: x, y
        real :: r
        real :: earth_radius, k, F, y0
        real :: rad2deg

        earth_radius = 6371000.0
        rad2deg = PI/180.0

        k = sin(PI/180.0*lat0)
        F = earth_radius*cos(PI/180.0*lat0) * (tan(PI/4.0 + PI/360.0*lat0)**k)/k
        y0 = F*tan(PI/4.0 - PI/360.0*lat0)**k
        r = F*tan(PI/4.0 - PI/360.0*gb)**k
        x = r*sin(PI/180.0*k*(gl - lon0))
        y = y0 - r*cos(PI/180.0*k*(gl - lon0))
    end subroutine lb2lambert_uEMEP