Upload
ashely-freeman
View
30
Download
2
Embed Size (px)
DESCRIPTION
Initial development of regional EnKF data assimilation for Rapid Refresh. GSI version: svn info Path: . URL: http://gsdforge.fsl.noaa.gov/svn/gsi/trunk/gsi_code Repository Root: http://gsdforge.fsl.noaa.gov/svn/gsi Repository UUID: 4cb9ce34-484d-0410-8406-e1a1132c1d7f Revision: 43 - PowerPoint PPT Presentation
Citation preview
Initial development of regional EnKF data assimilation for Rapid Refresh
wrfinput_initmem
WRFDA-randomcv:change thenamelist of
da_wrfvar.exe
GSI: output thecontrol variable inbinary format andalso the diagnose
files
ENKF: output theanalysis result in
binary format
update_init:update the
analysis field
wrf_mem01
wrf_mem02
wrf_mem03
wrf_mem0nn
sigf_mem01diag_mem01
sigf_mem02diag_mem02
sigf_mem03diag_mem03
sigf_memnndiag_memnn
siganl_mem01
siganl_mem02
siganl_mem03
siganl_memnn
wrfanl_mem01
wrfanl_mem02
wrfanl_mem03
wrfanl_mem0nn
gen_be_ensemblemean:
generate theensemble mean
ndown.exe
40km
13km grid
wrf_ensmean
gen_be_ensemblemean:
generate theensemble mean
sigf_ensmeandiag_ensmean
RR-WRF
GSI version:svn infoPath: .URL: http://gsdforge.fsl.noaa.gov/svn/gsi/trunk/gsi_codeRepository Root: http://gsdforge.fsl.noaa.gov/svn/gsiRepository UUID: 4cb9ce34-484d-0410-8406-e1a1132c1d7fRevision: 43Node Kind: directorySchedule: normalLast Changed Author: kevin.brundageLast Changed Rev: 41Last Changed Date: 2009-08-26 21:09:37 +0000 (Wed, 26 Aug 2009)
WRF version: 3.2
Right now, tests of the ENKF are carried out in two machines: tacc ranger (PGI compiler) and wjet (Intel compiler)
Current control variables of regional ENKF : nvar =1 : U nvar =2 : V nvar =3 : potential temperature nvar =4 : surface pressure nvar =5 : water vapor specific humidity
GSI updated variables:
MU, T, QVAPOR, U, V, SEAICE, SST
If (cloud_analysis) QCLOUD, QRAIN, QSNOW, QICE, QGRAUP
In the furture, more variables like W and cloud/hydrometeor fields will be added to both GSI and ENKF system
Current modification in ENKF params.f90 ! ndim = nlevs*nvars
ndim = nlevs*(nvars-1) + 1 ! for the regional model
gridinfo.f90 Add new subroutine: getgridinfo_reg --- calculate the pressure at each sigma level and the virture temperature.
gridio.f90 Add new subroutine: readgriddata_reg (read in regional guess fields of ‘C’ grid), writegriddata_reg (output in ‘A ‘ grid)
statevec.f90 read_ensemble: Call readgriddata call readgriddata_reg
‘anal’ array rearrangement;
write_ensemble:
Call writegriddata call writegriddata_reg
enkf_main.f90 Call getgridinfo call getgridinfo_reg
Subroutine getgridinfo_reg Add pressure calculation at each model level: pt_ll=0.01*ptopq_integral=1.0do k = 1, nlevsindeltasigma=eta1(k)-eta1(k+1)q_integral(:) = q_integral(:)+deltasigma*qg(:,k,1)Enddopsfc_this_dry=0.01*psfc psfc(:)=(psfc_this_dry(:)-pt_ll)*q_integral(:)+pt_lldo k = 1, nlevsinpsig(:,k)=eta1(k)*(psfc(:)-pt_ll) + pt_llpslg(:,k)=aeta1(k)*(psfc(:)-pt_ll)+pt_llenddopslg = pslg*100.0
Height of each control variable:do nvar=1,nvarsif ( nvar .eq. 4 ) then nn = nn + 1 logp(:,nn) = log(pressimn(:,1)) logsigma(:,nn) = -log(pressimn(:,1)/spressmn(:))else do k=1,nlevs nn = nn + 1. logp(:,nn) = log(presslmn(:,k)) logsigma(:,nn) = -log(presslmn(:,k)/spressmn(:)) end doendif end do
Subroutine readgriddata_regCalculated the virtural temperature from the potential temperature: q(:,k) = qg(:,k,1)/(1.+qg(:,k,1)) ! Q = water vapor specific humidity ! q_bk = water vapor mixing ratio rd_over_cp=287.04/1004.67
! calculated the temperature from the potention temperature ! get the virtural temperature
do k = 1, nlevsin temp(:,k) = tempg(:,k)*(pslg(:,k)/1000)**rd_over_cp *(1+0.61*q(:,k)) enddo
upwrfnc.exe
• Read in the wrfinput files and ENKF analysis fields
• Transfer the U, V from the ENKF analyzed grid to C grid
• Update the U, V, T, Mu, Qvapor in the wrfinput
1. Satellite data diagnose files is not consistence: IPCHAN_RESERVE = 8 (global)IPCHAN_RESERVE = 7 (regional)
diagbufchan(1,i)=tb_obs(i) ! observed brightness temperature (K) diagbufchan(2,i)=tbc(i) ! observed - simulated Tb with bias corrrection (K) diagbufchan(3,i)=tbcnob(i) ! observed - simulated Tb with no bias correction (K) errinv = sqrt(varinv(i)) diagbufchan(4,i)=errinv ! inverse observation error useflag=one if (iuse_rad(ich(i))/=1) useflag=-one diagbufchan(5,i)= id_qc(i)*useflag! quality control mark or event indicator
diagbufchan(6,i)=emissivity(i) ! surface emissivity diagbufchan(7,i)=tlapchn(i) ! stability index do j=1,npred+1 diagbufchan(7+j,i)=predterms(j,i) ! Tb bias correction terms (K) end do
real(fp_diag) :: tbobs ! Tb (obs) (K) real(fp_diag) :: omgbc ! Tb_(obs) - Tb_(simulated w/ bc) (K) real(fp_diag) :: omgnbc ! Tb_(obs) - Tb_(simulated_w/o bc) (K) real(fp_diag) :: errinv ! inverse error (K**(-1)) real(fp_diag) :: qcmark ! quality control mark real(fp_diag) :: emiss ! surface emissivity real(fp_diag) :: tlap ! temperature lapse rate real(fp_diag) :: pres ! pressure (mb) at max in weighting fn. real(fp_diag) :: bifix ! fixed angle dependent bias real(fp_diag) :: bilap ! lapse rate bias correction term real(fp_diag) :: bilap2 ! square lapse rate bias correction term real(fp_diag) :: bicons ! constant bias correction term real(fp_diag) :: biang ! scan angle bias correction term real(fp_diag) :: biclw ! CLW bias correction term
Knowing issues:
Knowing issues:
2. Test in the wjet machine reads in the conventional diagnose files properly, but there is still something wrong in the tacc ranger computer.
region, obtype, nobs, bias, innov stdev, sqrt(S+R), sqrt(S), sqrt(R): WJETNH all ps 3971 -0.129E-01 0.865E+00 0.229E+01 0.212E+01 0.888E+00TR all ps 208 -0.153E+00 0.144E+01 0.117E+01 0.696E+00 0.935E+00NH all t 14478 -0.194E+00 0.131E+01 0.391E+01 0.129E+01 0.369E+01TR all t 671 -0.398E-01 0.970E+00 0.256E+01 0.516E+00 0.251E+01NH all uv 46444 -0.150E+00 0.256E+01 0.606E+01 0.333E+01 0.506E+01TR all uv 5148 0.349E+00 0.234E+01 0.683E+01 0.274E+01 0.626E+01NH all q 5969 -0.890E-02 0.130E+00 0.246E+00 0.136E+00 0.205E+00TR all q 323 -0.225E-01 0.114E+00 0.213E+00 0.655E-01 0.203E+00
region, obtype, nobs, bias, innov stdev, sqrt(S+R), sqrt(S), sqrt(R):
RangerNH all ps 3971 NaN NaN NaN NaN 0.888E+00TR all ps 208 NaN NaN NaN NaN 0.935E+00NH all t 14478 NaN NaN NaN NaN 0.369E+01TR all t 671 NaN NaN NaN NaN 0.251E+01NH all uv 46444 NaN NaN NaN NaN 0.506E+01TR all uv 5148 NaN NaN NaN NaN 0.626E+01NH all q 5969 NaN NaN NaN NaN 0.205E+00TR all q 323 NaN NaN NaN NaN 0.203E+00