NOAA-EMC / ufs-land-driver

Creative Commons Zero v1.0 Universal
2 stars 15 forks source link

noah model output wrong for temperature (tskin etc.) at C96 grid, but no problem with single_point case #9

Closed luckylixu closed 3 years ago

luckylixu commented 3 years ago

Hi Dr. Barlage,

Thanks for development for the UFS land driver. I have test to run the UFS land with NoahMP at CPC, with you provide the initial file, static file for C96 grid, and gswp3 forcing. the NoahMP output seem correct, without any obvious error or mistake.

But when switch to the noah model, by namelist, with same initial file, static file and forcing above, the output at first hour go to wrong, the temperature field such as, tskin, stc become negative (in K). this mean there are something error at those T field. but model don't show any warning or report, the model will continue run until stop.

I tried noah model again with single-point case with default forcing, the output tskin seem okey, without any obvious error.

it seems noah model run correct at single point case, but run wrong at C96 case with you provide initial file, C96 static file and gswp3 forcing. However, these same forcing are run correct at noahMP model.

since the model don't show any error or warning, will stop at exactly stop time by namelist. the only noah model output t field, has negative value in K, this are obvious wrong.

I attached the namelist for noah model,

&run_setup

static_file = "ufs-land_C96_static_fields.nc" init_file = "ufs-land_C96_init_fields_1hr.nc" forcing_dir = "./"

separate_output = .true. output_dir = "./output"

restart_frequency_s = 10800 restart_simulation = .false. restart_date = "2000-01-01 02:00:00" restart_dir = "./restart"

timestep_seconds = 3600

! simulation_start is required ! either set simulationend or run* or run_timesteps, priority ! 1. simulationend 2. run[days/hours/minutes/seconds] 3. run_timesteps

simulation_start = "2000-01-01 00:00:00" ! start date [yyyy-mm-dd hh:mm:ss] ! simulation_end = "2000-01-02 00:00:00" ! end date [yyyy-mm-dd hh:mm:ss]

run_days = 3 ! number of days to run run_hours = 0 ! number of hours to run run_minutes = 0 ! number of minutes to run run_seconds = 0 ! number of seconds to run

run_timesteps = 0 ! number of timesteps to run

begloc = 1 endloc = 16196

/

&land_model_option land_model = 1 ! choose land model: 1=noah, 2=noahmp /

&structure num_soil_levels = 4 ! number of soil levels forcing_height = 6 ! forcing height [m] /

&soil_setup soil_level_thickness = 0.10, 0.30, 0.60, 1.00 ! soil level thicknesses [m] soil_level_nodes = 0.05, 0.25, 0.70, 1.50 ! soil level centroids from surface [m] /

&noahmp_options dynamic_vegetation_option = 4 canopy_stomatal_resistance_option = 1 soil_wetness_option = 1 runoff_option = 1 surface_exchange_option = 1 supercooled_soilwater_option = 1 frozen_soil_adjust_option = 1 radiative_transfer_option = 3 snow_albedo_option = 2 precip_partition_option = 1 soil_temp_lower_bdy_option = 2 soil_temp_time_scheme_option = 3 surface_evap_resistance_option = 1 glacier_option = 1 /

&forcing forcing_timestep_seconds = 10800 forcing_type = "gswp3" forcing_filename = "C96_GSWP3_forcing3-day" forcing_interp_solar = "gswp3_zenith" ! gswp3_zenith or linear forcing_time_solar = "gswp3_average" ! gswp3_average or instantaneous forcing_name_precipitation = "precipitation_conserve" forcing_name_temperature = "temperature" forcing_name_specific_humidity = "specific_humidity" forcing_name_wind_speed = "wind_speed" forcing_name_pressure = "surface_pressure" forcing_name_sw_radiation = "solar_radiation" forcing_name_lw_radiation = "longwave_radiation" /

Could you help us to figure out what is wrong?

luckylixu commented 3 years ago

Hi Dr. Barlage,

I found the reason why the Tskin is wrong, at the static file you provide, the emissivty value are wrong (based on the nc history, it's actually were elevation). if I replace the emssivity by 0.94, the output seem okey now.

How I could get global emissity value? or I just use the constant value 0.94 for all global?