Data Assimilation

136 views
Skip to first unread message

Armaghan

unread,
Mar 4, 2019, 11:39:38 PM3/4/19
to wrf-hydro_users
Hi. I would like to know how I can specify a single gageID to be used for the data assimilation (nudging) mode. I have 5 different gages in my Route_Link.nc, the same gages in nudgingTimeSliceObs and in nudgingParams.nc. Where in the model I can define which gageID to use for nudging? 

Best regards, 
Armaghan

Armaghan

unread,
Mar 5, 2019, 12:20:19 PM3/5/19
to wrf-hydro_users
I am using NWM configurations by the way!

jamesmcc

unread,
Mar 11, 2019, 2:51:15 PM3/11/19
to wrf-hydro_users
Hi Armaghan, 

I can help you with this question. I'll also address a related question you submitted to the help desk, so that the response is available for others who may have similar troubles. That request was:

I am trying to run WRF-Hydro for NWM with nudging data assimilation. Although the model is running without any error and the nudgingLastObs.*nc files are created in the output folder, I doubt if DA is being processed correctly. I can see the prediction in none of my gages is exactly the same as USGS observations. Does this show that there is something wrong with my model? If yes could you guide me how to troubleshoot this?


1) The good news is that the fact that the model runs and creates the nudgingLastObs.*nc file is a sign that you successfully compiled with nudging on (bottom of p17 v5 user guide).  This output is not a sign that anything is being assimilated, though the information in the file can help you understand if assimilation is happening. 

2) The easiest way to tell if assimilation is happening is to look at the nudge field in the "CHRTOUT" files. If it is zero for all gages and all time/files, then no data is being assimilated during your run. There are many potential causes of observations not being assimilated...

3) If nothing is being assimilated, did you supply nudging time slice files in the correct loaction, as specified in the nuding_nlst? Are they for the right gages and same time period as being run?

4) Are your gage identifiers wrong? The only diagnostic information you provided (~1 line in the help desk request), made it appeared that you mis-specified the gage identifier. All identifiers are fixed-width of 15 characters. That means that '01333000' ≠ '       01333000'. Note on p45 (v5 user's guide) 

 The stationIdInd variable has dimensions of the number of individual stream gages contained in the file by the fixed width of the strings (stationIdStrLen=15).

This is critical not only in the timeslice files, but also in the parameter files. There are tools in rwrfhydro to assist with creation of both of these files. 

?rwrfhydro::MkNudgingParams
?rwrfhydro::MkUsgsTimeSlice

My guess is that this is your issue, either in the parameter file or the timeslice file or both. 

5) Back to your question here. See how easy it is to make the model ignore observations? :^> What I typically do is regenerate the timeslice files and add and "X" in front of gage identifiers to have them withheld from the assimilation. Occasionally there are USGS gage Ids that are 15 long, and so you loose some information. It's slightly less modifications/degrees of freedom to modify the timeslice files and leave the domain files alone. You could modify the gage/stationId fields in the Routelink file and the nudgingParams.nc files, but I can tell you off the top of my head if you need to modify just one or both. This path would save you from regenerating the timeslices files, you would just have to keep track of the correct domain files. If you only have to edit one of Routelink and nudgingParams, i can not tell you. You might try it. There might be an error unless you modify both. 

I hope that is useful information. Please follow up with additional questions. 

Thanks, 

James

Armaghan abed elmdoust

unread,
Mar 11, 2019, 4:31:21 PM3/11/19
to wrf-hyd...@ucar.edu
James,

Thanks you so much for your help. I corrected my nudgingParams.nc file as your guidance. I corrected this line of the code:

gageParamId = c ('       01333000','       01334000','       01331500','       01332500','       01334500')

Moreover, I can see that MkUsgsTimeSlice code does consider the gages IDs directly from RouteLink.nc and in my RouteLink.nc I see the stations are of 15 width (stationIdStrLen=15). So I think I am good in the time slices files. I ran the wrfhydro with DA again. The question I am facing now is that what is the range of the nudge values in the CHRTOUT files (in other words, is the zero you are mentioning an absolute zero?). Since I am seeing values for nudges but they are less than 1.880791e-37! Is this consider as a zero or is this an acceptable value for a nudge? if this is acceptable as a possible nudge so my CHRTOUT files have some nudges values. So I think I am having DA applied. 

Thanks again for your help. 



--
You received this message because you are subscribed to the Google Groups "wrf-hydro_users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wrf-hydro_use...@ucar.edu.
Visit this group at https://groups.google.com/a/ucar.edu/group/wrf-hydro_users/.
To view this discussion on the web visit https://groups.google.com/a/ucar.edu/d/msgid/wrf-hydro_users/e22ee6f4-b156-4d50-a91d-fc683efadca0%40ucar.edu.

jamesmcc

unread,
Mar 12, 2019, 12:45:47 PM3/12/19
to wrf-hydro_users
Armaghan,

I suppose you mean that the absolute values of all the nudges are less than 1.880791e-37. In that case, if nudging is working correctly, then I would like to know how you calibrated your model and what forcings you are using! You have worked a miracle. 

The nudge is in the same units as streamflow. 

What is more likely is that 1.880791e-37 is actually zero (though not identical) and there is still something wrong with your setup. Please go through all the places I have previously mentioned and if you have questions provide the most detailed possible diagnostics you can with the questions. 



On Monday, March 4, 2019 at 9:39:38 PM UTC-7, Armaghan wrote:
Reply all
Reply to author
Forward
0 new messages