computing pressure from PP – in #9: CCLM

in #9: CCLM

<p> Hey, </p> <p> does anyone know if <code> vgrid_refatm_utils.f90 </code> is the right file to look at? </p> <p> The <code> SUBROUTINE reference_atmosphere </code> seems to include both formulas I cited from the documentation. </p> <p> The <code> SUBROUTINE reference_atmosphere_2 </code> seems to include another formulas, which computes approximatly(*) the same values as my <span class="caps"> YUSPECIF </span> . </p> <p> (*) I suppose due to different values of constants?! </p> <p> Here in R-style: </p> <pre> nc = nc_open(file) vcoord = ncvar_get(nc,"vcoord") p0sl = ncatt_get(nc,"vcoord","p0sl")$value t0sl = ncatt_get(nc,"vcoord","t0sl")$value dt0lp = ncatt_get(nc,"vcoord","dt0lp")$value delta_t = ncatt_get(nc,"vcoord","delta_t")$value h_scal = ncatt_get(nc,"vcoord","h_scal")$value g = 9.80665#9.807 R = 287.05 pref1 = p0sl * exp( -t0sl/dt0lp * (1-sqrt(1 - 2 * dt0lp * g * vcoord / R / t0sl^2) ) ) pref2 = p0sl * exp( -g * vcoord / R / t0sl ) t00 = t0sl - delta_t pref3 = p0sl * exp( -g*h_scal/ R/t00 * log( (exp(vcoord/h_scal)*t00 + delta_t)/(t00 + delta_t)) ) </pre> <p> Can anyone confirm, that for my configuration I need to use <code> pref3 </code> ? (or that indeed <code> reference_atmosphere_2 </code> was used) </p> <p> Rolf </p>

  @rolfzentek in #c73b43f

<p> Hey, </p> <p> does anyone know if <code> vgrid_refatm_utils.f90 </code> is the right file to look at? </p> <p> The <code> SUBROUTINE reference_atmosphere </code> seems to include both formulas I cited from the documentation. </p> <p> The <code> SUBROUTINE reference_atmosphere_2 </code> seems to include another formulas, which computes approximatly(*) the same values as my <span class="caps"> YUSPECIF </span> . </p> <p> (*) I suppose due to different values of constants?! </p> <p> Here in R-style: </p> <pre> nc = nc_open(file) vcoord = ncvar_get(nc,"vcoord") p0sl = ncatt_get(nc,"vcoord","p0sl")$value t0sl = ncatt_get(nc,"vcoord","t0sl")$value dt0lp = ncatt_get(nc,"vcoord","dt0lp")$value delta_t = ncatt_get(nc,"vcoord","delta_t")$value h_scal = ncatt_get(nc,"vcoord","h_scal")$value g = 9.80665#9.807 R = 287.05 pref1 = p0sl * exp( -t0sl/dt0lp * (1-sqrt(1 - 2 * dt0lp * g * vcoord / R / t0sl^2) ) ) pref2 = p0sl * exp( -g * vcoord / R / t0sl ) t00 = t0sl - delta_t pref3 = p0sl * exp( -g*h_scal/ R/t00 * log( (exp(vcoord/h_scal)*t00 + delta_t)/(t00 + delta_t)) ) </pre> <p> Can anyone confirm, that for my configuration I need to use <code> pref3 </code> ? (or that indeed <code> reference_atmosphere_2 </code> was used) </p> <p> Rolf </p>

Hey,

does anyone know if vgrid_refatm_utils.f90 is the right file to look at?

The SUBROUTINE reference_atmosphere seems to include both formulas I cited from the documentation.

The SUBROUTINE reference_atmosphere_2 seems to include another formulas, which computes approximatly(*) the same values as my YUSPECIF .

(*) I suppose due to different values of constants?!

Here in R-style:

    nc = nc_open(file)
    vcoord = ncvar_get(nc,"vcoord")
    p0sl = ncatt_get(nc,"vcoord","p0sl")$value
    t0sl = ncatt_get(nc,"vcoord","t0sl")$value
    dt0lp = ncatt_get(nc,"vcoord","dt0lp")$value
    delta_t = ncatt_get(nc,"vcoord","delta_t")$value
    h_scal = ncatt_get(nc,"vcoord","h_scal")$value
    g = 9.80665#9.807
    R = 287.05
    pref1 = p0sl * exp( -t0sl/dt0lp * (1-sqrt(1 - 2 * dt0lp * g * vcoord / R / t0sl^2) ) )
    pref2 = p0sl * exp( -g * vcoord / R / t0sl )
    t00 = t0sl - delta_t
    pref3 = p0sl * exp( -g*h_scal/ R/t00 * log( (exp(vcoord/h_scal)*t00 + delta_t)/(t00 + delta_t)) )

Can anyone confirm, that for my configuration I need to use pref3 ? (or that indeed reference_atmosphere_2 was used)

Rolf