DOI-USGS / COAWST

COAWST modeling system git repository
Other
104 stars 49 forks source link

About WRF2ROMS variables #254

Closed bwendu closed 4 months ago

bwendu commented 4 months ago

Hi, I'm running a test case with ROMS and WRF, but I'm still confused by some problems, maybe I need some suggestions.

I compared the results of the coupled wrf-roms with those of era5 and found that GLW (DOWNWARD LONG WAVE FLUX AT GROUP SURFACE) in wrfout corresponds to strd (Surface thermal radiation downwards) in era5, and GLW is also the variable wrf2roms. However, the variable related to longwave radiation in the history file output by roms is lwrad (net longwave radiation flux), which corresponds to str (Surface net thermal radiation) in era5. I am curious about how ROMS completes the conversion of GLW passed by wrf to lwrad, and in which .F file completed that? Similarly, I see "WRFtoROMS Min/Max MSLP" in std file, but i dont find MSLP in wrfout file, PSFC(surface pressure, instead dont convert to sea level in land area) instead in wrfout. SO, i want to find where and how the different WRF2ROMS variables convert. actually, i dont know whether my understandings about these variables above are correct, if not, could you tell me the name(or abbreviation) of WRF2ROMS variables in wrfout and history files respectively.

After many tryings, if I turn off define TS_SMAGORINSKY and define UV_SMAGORINSKY, then i'll got my test case running successfully for the whole simulated period without any error in std .out file, but it seems that the result is still unrealistic. If i turn on these two cpps(without any other changes in my .h frame), the case will break up for max density after 5 days running, and the result is almost identical to turning off the two cpps. The. h file I'm currently using is test. h. I want to know if there any unsuitable settings or any suggested modifications worth a try. test.h.txt

jcwarner-usgs commented 4 months ago

I am not sure about the specifics of your case. There can be many factors that are controlling the stability of the run. If you are running WRF + ROMS, i suggest you use

define ATM2OCN_FLUXES

and this will transfer the heat, moisture, and momentum fluxes computed in WRF to ROMS. If you do not use that flag, then the individual terms will go to ROMS and ROMS will use bulk fluxes. In that case, the variables from WRF come in through Master/mct_roms_wrf.h and go to ROMS /Nonlinear/bulk_fluxes.F In the mct_roms_wrf.h you can see how GLW is converted to lrflx long wave radiation in roms.

From WRF, there is a routine WRF/frame/atm_coupler.F and in there you can see how we convert MSLP to Patm to ROMS MSLP= grid%PSFC(i,j) & & exp((9.81grid%ht(i,j))/ & & (287.0grid%T2(i,j)(1.0+0.61*grid%Q2(i,j))))

Hope these sections of code can help. -j

bwendu commented 4 months ago

oh, sorry to reply so late. Thanks for your guidance, i'll try to understand those variables.