Hi again!
First question:
I have 3 types of LittleR formatted observations I would like to use fdda obs nudging with in WRF:
ds351.0 NCEP ADP Global Upper Air Observational Weather Data
ds461.0 NCEP ADP Global Surface Observational Weather Data
and some private surface observation station data.
I followed the instructions from here: (https://www2.mmm.ucar.edu/wrf/users/wrfv3.1/How_to_run_obs_fdda.html) and used the script provided there (RT_fdda_reformat_obsnud.pl) to convert the LittleR formatted files to the WRF preferred format written in the OBS_DOMAIN101 type files to be read in by WRF.
Using this method I have been able to at least able use the private weather data I mentioned above. When I use either of the NCEP ADP data though it only seems to be nudging from one station at each time step. This is consistently just one station throughout the run. (See example rsl.error.0000 output below:
Timing for main (dt= 42.00): time 2010-12-24_00:01:22 on domain 1: 1.32585 elapsed seconds
TBACK = -0.644 TFORWD = 0.689 nsta = 1 for nest = 1
in4dob last cycle Obs time from 1 to nsta 21.000 21.000
0*** End of IN4DOB AT KTAU = 2 AND XTIME = 1.37:NSTAW= 0 NSTA= 1 ***
Timing for main (dt= 2.94): time 2010-12-24_00:01:24 on domain 3: 0.06066 elapsed seconds
I am nudging on all domains. The outer domain is 30km resolution over the East coast of the US so it should be picking up more than one station.
Am I missing a step here? Why am I not seeing more stations being used for nudging?
Second question:
Once I figure out the answer to the first question, I'd like to find an efficient way to combine all three of the above observation types into 1 OBS_DOMAIN101 file if possible. Can I simply cat data1 data2 data3 > OBS_DOMAIN101 ? I tried doing this using the ds461.0 data first and the private observations together but I did not see the private observations being read in. Does each single observation of each observation type need to be ordered by time in the OBS_DOMAIN101 file?
Thanks for your time!
For reference, here is the fdda section of the namelist.input:
&fdda
obs_nudge_opt = 1,1,1,1,1
max_obs = 20000, 20000, 20000, 20000, 20000,
fdda_start = 0., 0., 0., 0., 0.
fdda_end = 99999., 99999., 99999., 99999., 99999.
obs_nudge_wind = 1,1,1,1,1
obs_coef_wind = 6.E-4,8.E-4,8.E-4,6.E-4,6.E-4
obs_nudge_temp = 1,1,1,1,1
obs_coef_temp = 6.E-4,8.E-4,8.E-4,6.E-4,6.E-4
obs_nudge_mois = 1,1,1,1,1
obs_coef_mois = 6.E-4,8.E-4,8.E-4,6.E-4,6.E-4
obs_rinxy = 100.,60.,20.,180,180
obs_rinsig = 0.1,
obs_twindo = 0.6666667,0.6666667,0.4,0.6666667,0.6666667,
obs_npfi = 10,
obs_ionf = 2, 2, 2, 2, 2,
obs_idynin = 0,
obs_dtramp = 40.,
obs_prt_freq = 10, 10, 10, 10, 10,
obs_prt_max = 10
obs_ipf_errob = .true.
obs_ipf_nudob = .true.
obs_ipf_in4dob = .true.
obs_ipf_init = .true.
obs_qc_domain = 1, 2, 3, 4,
tolerance_p = 1.5,
tolerance_q = 1.0,
tolerance_t = 2.5,
tolerance_u = 2.5,
tolerance_p_sound = 1.5,
tolerance_q_sound = 1.0,
tolerance_t_sound = 3.5,
tolerance_u_sound = 3.5,
qc_internal = .true.,
/
First question:
I have 3 types of LittleR formatted observations I would like to use fdda obs nudging with in WRF:
ds351.0 NCEP ADP Global Upper Air Observational Weather Data
ds461.0 NCEP ADP Global Surface Observational Weather Data
and some private surface observation station data.
I followed the instructions from here: (https://www2.mmm.ucar.edu/wrf/users/wrfv3.1/How_to_run_obs_fdda.html) and used the script provided there (RT_fdda_reformat_obsnud.pl) to convert the LittleR formatted files to the WRF preferred format written in the OBS_DOMAIN101 type files to be read in by WRF.
Using this method I have been able to at least able use the private weather data I mentioned above. When I use either of the NCEP ADP data though it only seems to be nudging from one station at each time step. This is consistently just one station throughout the run. (See example rsl.error.0000 output below:
Timing for main (dt= 42.00): time 2010-12-24_00:01:22 on domain 1: 1.32585 elapsed seconds
TBACK = -0.644 TFORWD = 0.689 nsta = 1 for nest = 1
in4dob last cycle Obs time from 1 to nsta 21.000 21.000
0*** End of IN4DOB AT KTAU = 2 AND XTIME = 1.37:NSTAW= 0 NSTA= 1 ***
Timing for main (dt= 2.94): time 2010-12-24_00:01:24 on domain 3: 0.06066 elapsed seconds
I am nudging on all domains. The outer domain is 30km resolution over the East coast of the US so it should be picking up more than one station.
Am I missing a step here? Why am I not seeing more stations being used for nudging?
Second question:
Once I figure out the answer to the first question, I'd like to find an efficient way to combine all three of the above observation types into 1 OBS_DOMAIN101 file if possible. Can I simply cat data1 data2 data3 > OBS_DOMAIN101 ? I tried doing this using the ds461.0 data first and the private observations together but I did not see the private observations being read in. Does each single observation of each observation type need to be ordered by time in the OBS_DOMAIN101 file?
Thanks for your time!
For reference, here is the fdda section of the namelist.input:
&fdda
obs_nudge_opt = 1,1,1,1,1
max_obs = 20000, 20000, 20000, 20000, 20000,
fdda_start = 0., 0., 0., 0., 0.
fdda_end = 99999., 99999., 99999., 99999., 99999.
obs_nudge_wind = 1,1,1,1,1
obs_coef_wind = 6.E-4,8.E-4,8.E-4,6.E-4,6.E-4
obs_nudge_temp = 1,1,1,1,1
obs_coef_temp = 6.E-4,8.E-4,8.E-4,6.E-4,6.E-4
obs_nudge_mois = 1,1,1,1,1
obs_coef_mois = 6.E-4,8.E-4,8.E-4,6.E-4,6.E-4
obs_rinxy = 100.,60.,20.,180,180
obs_rinsig = 0.1,
obs_twindo = 0.6666667,0.6666667,0.4,0.6666667,0.6666667,
obs_npfi = 10,
obs_ionf = 2, 2, 2, 2, 2,
obs_idynin = 0,
obs_dtramp = 40.,
obs_prt_freq = 10, 10, 10, 10, 10,
obs_prt_max = 10
obs_ipf_errob = .true.
obs_ipf_nudob = .true.
obs_ipf_in4dob = .true.
obs_ipf_init = .true.
obs_qc_domain = 1, 2, 3, 4,
tolerance_p = 1.5,
tolerance_q = 1.0,
tolerance_t = 2.5,
tolerance_u = 2.5,
tolerance_p_sound = 1.5,
tolerance_q_sound = 1.0,
tolerance_t_sound = 3.5,
tolerance_u_sound = 3.5,
qc_internal = .true.,
/