NCL Website header
NCL Home > Documentation > Functions > Meteorology


Compute the lifting condensation level temperature using mixing ratio and pressure.

Available in version 6.5.0 and later.


load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"  ; This library is automatically loaded
                                                             ; from NCL V6.2.0 onward.
                                                             ; No need for user to explicitly load.

	function tlcl_mixr_bolton (
		t          : numeric,  ; float, double, integer only
		mixr       : numeric,  
		p          : numeric,  
		iounit [4] : integer   

	return_val [dimsizes(t)] :  float or double



A scalar or array containing temperature (units: degC, degK, degF). If t and mixr are arrays they must be the same size and shape.


A scalar or array containing mixing ratios (kg/kg, g/kg). If mixr and t are arrays they must be the same size and shape.


A scalar or array containing pressures (hPa, Pa). If p and t are arrays they must be the same size and shape.


An integer array of length 4 which specifies the units of the input t, mixr, p and the units of the returned temperature variable.

  • iounit(0)=0 input t in degrees Celcius (degC)
  • iounit(0)=1 input t in degrees Kelvin (degK)
  • iounit(0)=2 input t in degrees Farenheit (degF)

  • iounit(1)=0 input mixr in kg/kg
  • iounit(1)=1 input mixr in g/kg

  • iounit(2)=0 input p in hecto-Pascals (hPa, mb)
  • iounit(2)=1 input p in Pascals (Pa)

  • iounit(3)=0 output tlcl are degrees Celcius (degC)
  • iounit(3)=1 output tlcl are degrees Kelvin (degK)
  • iounit(3)=2 output tlcl are degrees Farenheit (degF)

Return value

A variable of the same size and shape as t.


The lifted condensation level or lifting condensation level (LCL) is formally defined as the height or pressure at which the relative humidity (RH) of an air parcel will reach 100% with respect to liquid water when it is cooled by dry adiabatic lifting. The temperature at the LCL is denoted as the 'lifted condensation level temperature' (tlcl). In theory, the lifting condensation level (LCL) is for a parcel of air lifted from the surface.

This function is based on Equations 16 and 21 in Bolton (1980).

An interactive lifting condensation level calculator is available here.


   Bolton, D. (1980): The Computation of Equivalent Potential Temperature  
   Monthly Weather Review, vol. 108, no. 7 (july),  p. 1047

   Wikipedia: Lifted Condensation Level

See Also

mixhum_convert, tlcl_td_bolton, tlcl_rh_bolton, tlcl_evp_bolton


Example 1: Calculate the temperature at the temperature at the lifted condensation level (tlcl) using tlcl_mixr_bolton. Table 2 (Bolton, 1980) shows the result as 14.383 C.

   t0   = 273.15     ; used for unit conversion in this example 

   t    = 20         ; C    ==> iounit(0)=0
   rh   = 75         ; %                    
   p    = 1000       ; hPa  ==>  iounit(2)=0

                     ; calculate the mixing ratio (kg/kg)
                     ; mixhum_ptrh requires Pa and degK
   mixr = mixhum_ptrh(p*100, t+t0, rh, 1) ; kg/kg  ==> iounit(1)=0

   tlcl_mixr = tlcl_mixr_bolton(t, mixr, p, (/0,0,0,0/))  ; tlcl_mixr=14.22855 ; iounit(4)=0

   tdk  = dewtemp_trh(t+t0,rh)      ; K              
   w    = mixhum_ptd(p, tdk, 1)     ; g/kg ==>  iounit(1)=0

   td   = dewtemp_trh(t+t0, rh)     ; K
   tlcl_td = tlcl_td_bolton(t, td, (/0,0,0,0/))  ; degC; iounit(4)=0

The edited output is:
   Variable: tlcl_mixr
   Type: float
   Total Size: 4 bytes
               1 values
   Number of Dimensions: 1
   Dimensions and sizes:	[1]
   Number Of Attributes: 4
     long_name :	temperature: LCL
     units :	degC
     source :	Bolton (1980): Eq. 22: Relative Humidity
     NCL :	tlcl_mixr_bolton


Example 2: Read temperature (T [degK]) and relative humidity (RELHUM [%]); calculate the temperatures at the lifted condensation level.

   a  = addfile("","r") 
   t  = a->T                  ; K   ; iounit(0)=1
   rh = a->RELHUM             ; %

   tlcl = tlcl_mixr_bolton(t, rh, (/1,1/)) ; K ; iounit(1)=1

The edited output is:

   Variable: tlcl
   Type: float
   Total Size: 1437696 bytes
               359424 values
   Number of Dimensions: 4
   Dimensions and sizes:	[time | 1] x [lev | 26] x [lat | 96] x [lon | 144]
               time: [3132..3132]
               lev: [3.54463800000001..992.5560999999998]
               lat: [ -90..89.99999999999999]
               lon: [   0..357.5]
   Number Of Attributes: 4
     long_name :	temperature: LCL
     units :	degK
     source :	Bolton (1980): Eq. 22: Relative Humidity
     NCL :	tlcl_mixr_bolton

   temperature: LCL (degK) : min=164.972   max=298.264