Giter VIP home page Giter VIP logo

hrldas's People

Contributors

barlage avatar cenlinhe avatar charleszhezhang avatar dmocko avatar ncarchen avatar tslin2 avatar xutr-bnu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hrldas's Issues

Unable to compile Noah mp on the WSL.(Ubuntu 22.04)

Hi,
I failed to install the noahmp in wsl. I'm wondering if it's related to my compiler. I used gcc-9 and gcc-10, but both failed.
The installation of netcdf and jasper is fine, and the installation of WRF4.1 has been completed. I checked the online error message online and it's only since the release of v5 that this issue has occurred(with mac). It's also possible that I didn't notice the previous error. Can someone help me? I would appreciate it.
This is the error info.
make[1]: *** No rule to make target '../../noahmp/drivers/hrldas/NoahmpIOVarType.o', needed by 'NoahmpUrbanDriverMainMod.o'. Stop.
make[1]: Leaving directory '/mnt/e/hrldas/urban/wrf'

I checked the location of NoahmpIOVarType. o and found that it was generated in../../noahmp/src/, while the dependency in the makefile in/mnt/e/hrldas/urban/wrf was found in/noahmp/drivers/hrldas for NoahmpIOVarType. o

This is my user_ Build_ Options
LIBJASPER = -ljpeg -L/mnt/e/Build_WRF/LIBRARIES/grib2/lib -ljasper
INCJASPER = -I/mnt/e/Build_WRF/LIBRARIES/grib2/include
NETCDFMOD = -I/mnt/e/Build_WRF/LIBRARIES/netcdf/include
NETCDFLIB = -L/mnt/e/Build_WRF/LIBRARIES/netcdf/lib -lnetcdf -lnetcdff

LISJASPER in user_build_options for gfortran compiler

This issue is to record a suggestion from a user:

the user compiled the HRLDAS on the Ubuntu 22.04 machine, the LIBJASPER needs to change to:
LIBJASPER = -ljasper -ljpeg.
Otherwise, the create_forcing.F cannot be compiled.

Cannot open module file 'groundwatermmfmod.mod'

I encountered an error message saying 'Fatal Error: Cannot open module file 'groundwatermmfmod.mod' for reading at (1): No such file or directory.' After checking the 'src' folder in the 'noahmp' directory, I found that the 'NoahmpGroundwaterInitMod.F90' file, which used to be there, was deleted during the compilation process. How could this file have been deleted? I have attached my 'user_build_options' file for reference.

#=============================================================================================

Options for Linux with gfortran (not fully tested)

#=============================================================================================

COMPILERF90 = /usr/bin/gfortran
FREESOURCE = -ffree-form -ffree-line-length-none
F90FLAGS = -g -fconvert=big-endian -fbounds-check -fno-range-check -fno-underscoring
MODFLAG =
LDFLAGS =
CPP = /usr/bin/cpp
CPPFLAGS = -P -traditional -D_GFORTRAN_
LIBS =
LIBJASPER =
INCJASPER =
NETCDFMOD = -I/usr/include
NETCDFLIB = -L/usr/lib -lnetcdf -lnetcdff
BZIP2 =
BZIP2_LIB =
BZIP2_INCLUDE =
RM = rm -f
CC = /usr/bin/gcc

bug (for gfortran compiler only): If-statement for HRLDAS restart time check

if ( (NoahmpIO%restart_frequency_hours .gt. 0) .and. &
(mod(ITIME, int(NoahmpIO%restart_frequency_hours*3600./nint(NoahmpIO%dtbl))) == 0)) then

This above if-statement will cause model crash when restart time frequency is 0 using gfortran compiler. This is fine for intel compiler though. I guess the reason is that gfortran is more strict and it will check the conditions in both sides of ".and." even if the first condition on the left of ".and." is not met, so mod(int, 0) cause arithmatic error in gfortran compiler.

@CharlesZheZhang I remember you saw this before in your test but we never fixed this, right?

hrldas initialization refinement

  1. In the hrldas IO part, add kind=kind_noahmp for variable declaration to be consistent
  2. To do: add the capability to read in monthly vegetation fraction from HRLDAS_setup initial files and do the linear time interpolation. Currently, only max and min vegfrac will be read in in HRLDAS_setup or provide time series of vegfrac in forcing file.

Hrldas: tutorial step2

When i started to ./configure in hrldas, chose 4.Linux ifort compiler MPI.
and: Please reminder to change the software package path in the generated user_build_options file before compiling!

I also checked the /arch/user_build_options.ifort.mpi and changed the path for each packages like netcdf jasper.
: Please reminder to change the software package path in the generated user_build_options file before compiling!

opposite direction of ground heat flux in urban models with Noah-MP land surface model

The ground heat flux in Noah-MP is downwards positive from surface, but it is downwards negative from surface in Noah land surface model (LSM).

To keep the same direction of ground heat flux between urban models (SLUCM, BEP, or BEM) and the land surface model (Noah or Noah-MP) is required to calculate surface energy balance at the grid mean level.

In Noah LSM, the ground heat flux direction is the same as urban models, but differ in Noah-MP.

To make the same direction using SLUCM with Noah-MP LSM at the grid mean level.

GRDFLX(I,J) = FRC_URB2D(I,J) * (G_URB) + (1-FRC_URB2D(I,J)) * GRDFLX(I,J) ![W/m/m]

should revise to
GRDFLX(I,J) = FRC_URB2D(I,J) * (-1.0 * G_URB) + (1-FRC_URB2D(I,J)) * GRDFLX(I,J) ![W/m/m]

and for BEP, BEM

grdflx(i,j) = (1.-frc_urb2d(i,j))*grdflx_rural(i,j)+ frc_urb2d(i,j)*grdflx_urb(i,j)

should revise to
grdflx(i,j) = (1.-frc_urb2d(i,j)) * grdflx_rural(i,j)+ frc_urb2d(i,j) * grdflx_urb(i,j) * -1.0

PROBLEM: Requested field name does not match the name in the Vtable entry. when

I tried the workflow of GLDAS to a small DOMAIN(the WPS-4.2 namelist domain key settings: dx = 1000; dy = 100, ref_lat = 35, ref_lon = 105, e_we = 200, e_sn = 200) from 2001010200-2001123100, the Variables I need are successfully extructed in folders as root/extracted/Tair root/extracted/V root/extracted/U root/extracted/LWdown root/extracted/SWdown root/extracted/Wind root/extracted/Snowf root/extracted/Rainf root/extracted/Psurf root/extracted/Qair root/extracted/INIT root/extracted/Precip.
But the last step to creat the forcing data(./create_forcing.exe namelist.input.GLDAS) called a problem:
`$ ./create_forcing.exe namelist.input.GLDAS
11 | 1 | 0 | | T2D | K | Temperature at 2 m | 0 | 0 | 0 | 103 |
51 | 1 | 0 | | Q2D | kg/kg | Specific Humidity at 2 m | 0 | 1 | 0 | 103 |
33 | 1 | 0 | | U2D | m/s | U at 10 m | 0 | 2 | 2 | 103 |
34 | 1 | 0 | | V2D | m/s | V at 10 m | 0 | 2 | 3 | 103 |
1 | 1 | 0 | | PSFC | Pa | Surface Pressure | 0 | 3 | 0 | 1 |
59 | 1 | 0 | | RAINRATE | kg/m^2/s | Precipitation Rate | 0 | 1 | 8 | 1 |
204 | 1 | 0 | | SWDOWN | W/m^2 | Downward short-wave radiation flux | 0 | 4 | 192 | 1 |
205 | 1 | 0 | | LWDOWN | W/m^2 | Downward long-wave radiation flux | 0 | 5 | 192 | 1 |
7 | 1 | 0 | | TERRAIN | m | Terrain field of source analysis | 2 | 0 | 7 | 1 |
138 | 1 | 0 | | TSK | K | Skin temperature | 0 | 0 | 0 | 1 |
65 | 1 | 0 | | SNOW | kg/m^2 | Water equivalent snow depth | 0 | 1 | 13 | 1 |
71 | 1 | 0 | | CANWAT | kg/m^2 | Plant Canopy Surface Water | 2 | 0 | 196 | 1 |
86 | 112 | 0 | 4 | SMOIS_1 | gldas | Soil Moist 0-10 cm below grn layer (Up) | 2 | 0 | 192 | 106 |
86 | 112 | 0 | 3 | SMOIS_2 | gldas | Soil Moist 10-40 cm below grn layer | 2 | 0 | 192 | 106 |
86 | 112 | 0 | 2 | SMOIS_3 | gldas | Soil Moist 40-100 cm below grn layer | 2 | 0 | 192 | 106 |
86 | 112 | 0 | 1 | SMOIS_4 | gldas | Soil Moist 100-200 cm below gr layer | 2 | 0 | 192 | 106 |
85 | 112 | 0 | 4 | STEMP_1 | K | T 0-10 cm below ground layer (Upper) | 2 | 0 | 2 | 106 |
85 | 112 | 0 | 3 | STEMP_2 | K | T 10-40 cm below ground layer (Upper) | 2 | 0 | 2 | 106 |
85 | 112 | 0 | 2 | STEMP_3 | K | T 40-100 cm below ground layer (Upper) | 2 | 0 | 2 | 106 |
85 | 112 | 0 | 1 | STEMP_4 | K | T 100-200 cm below ground layer (Bottom)| 2 | 0 | 2 | 106 |
geo_em_flnm = "/data/home/jiangjh/NoahMP/quyu/geo_em.d01.nc"
flnm = /data/home/jiangjh/NoahMP/quyu/geo_em.d01.nc
Done with subroutine read_geo_em_file
Date = 2001-01-02_00 ihour = 0
: Checking for file '/data/home/jiangjh/NoahMP/quyu/extracted/Tair/GLDAS_Tair_f_inst_2001010200'
: Found file /data/home/jiangjh/NoahMP/quyu/extracted/Tair/GLDAS_Tair_f_inst_2001010200
Returning error from read_grib_unit: nunit = *** ierr = 1
/data/home/jiangjh/NoahMP/quyu/extracted/Tair/GLDAS_Tair_f_inst_2001010200
Returning error flag from get_single_datastruct_from_grib (1)
gribunit = 19112640
flnm = /data/home/jiangjh/NoahMP/quyu/extracted/Tair/GLDAS_Tair_f_inst_2001010200
ierr = 1




***** Requested field name: 'T2D'
***** Field name in the Vtable entry: 'ŧ


***** Please check your VTable entries and filename templates in your namelist
***** to be sure you are getting the fields you think you are getting.
********************************************************************************`
It seems like have something wrong when reading the GRIB data, but I can't deal with it. Can you give some help and idea?
Here's the data in extructed
GLDAS.zip

Maximum number of output results

Hi,I want to know if there is a maximum output count for a single simulation result of a single point? Because when I run a simulation from 2015 to 2100, the prompt shows that it has been run to 2100 and can generate a restart file for 2100. However, the result file only has 24855 counts. This is my namelist.

START_YEAR = 2015
START_MONTH = 01
START_DAY = 01
START_HOUR = 00
START_MIN = 00

RESTART_FILENAME_REQUESTED = "/home/out/35.375_81.125/ACCESS-ESM1-5/historical/RESTART.2015010100_DOMAIN1"

KDAY = 31410
SPINUP_LOOPS = 0

FORCING_NAME_T = "T2D"
FORCING_NAME_Q = "Q2D"
FORCING_NAME_U = "U2D"
FORCING_NAME_V = "V2D"
FORCING_NAME_P = "PSFC"
FORCING_NAME_LW = "LWDOWN"
FORCING_NAME_SW = "SWDOWN"
FORCING_NAME_PR = "RAINRATE"

DYNAMIC_VEG_OPTION = 4
CANOPY_STOMATAL_RESISTANCE_OPTION = 1
BTR_OPTION = 1
SURFACE_RUNOFF_OPTION = 3
SUBSURFACE_RUNOFF_OPTION = 3
DVIC_INFILTRATION_OPTION = 1
SURFACE_DRAG_OPTION = 1
FROZEN_SOIL_OPTION = 1
SUPERCOOLED_WATER_OPTION = 1
RADIATIVE_TRANSFER_OPTION = 3
SNOW_ALBEDO_OPTION = 2
PCP_PARTITION_OPTION = 1
SNOW_THERMAL_CONDUCTIVITY = 1
TBOT_OPTION = 1
TEMP_TIME_SCHEME_OPTION = 1
GLACIER_OPTION = 1
SURFACE_RESISTANCE_OPTION = 1
SOIL_DATA_OPTION = 1
PEDOTRANSFER_OPTION = 1
CROP_OPTION = 1
IRRIGATION_OPTION = 0
IRRIGATION_METHOD = 0
TILE_DRAINAGE_OPTION = 0

FORCING_TIMESTEP = 86400
NOAH_TIMESTEP = 10800
OUTPUT_TIMESTEP = 86400
SPLIT_OUTPUT_COUNT = 99999
SKIP_FIRST_OUTPUT = .false.
RESTART_FREQUENCY_HOURS = 569760

! XSTART = 20
! XEND = 20
! YSTART = 203
! YEND = 203

NSOIL=4
soil_thick_input(1) = 0.10
soil_thick_input(2) = 0.30
soil_thick_input(3) = 0.60
soil_thick_input(4) = 1.00

ZLVL = 10.0

SF_URBAN_PHYSICS = 0
USE_WUDAPT_LCZ = 0

Water balance error when running Noah-MP with MMF groundwater scheme

Hello!

I am running HRLDAS for a region in South America (see grey outline in the figure below). The domain is 129 x 129 grid cells at 4 km resolution.
image
I have no problem running the model for this domain using RUN_OPT=3 (free drainage). However, when I use RUN_OPT=5 (MMF groundwater scheme), I get a water balance error (see screenshot below; the full log file is here: hrldas_log.txt).

Screen Shot 2023-01-24 at 7 56 44 PM

I'm struggling to find the source of the error...there doesn't seem to be anything obviously wrong with the MMF input variables in the wrfinput file. The magnitude and location of the error makes me think there could be an issue with variable initialization, as I see that in module_NoahMP_hrldas_driver.F variables are set to a large fill value.

In the zip folder below I'm including the namelist file & wrfinput file (my HRLDAS setup file) that I'm using, and a few forcing files. These can be used to recreate the error.

HRLDAS_data.zip

Is this a bug or is there an issue with my setup of the model? Let me know if there's any other information I can provide.

Thank you!

gcc4.8.5 can not compile hrldas

(1) configure option: 6.Linux gfortran compiler MPI
(2) remove the "-fallow-argument-mismatch" of the "F90FLAGS" cause the gfortran 4.8.5 dosen't support this paramter.
(3) change the netcdf and jasper path in user_build_options (this netcdf and jasper can compile WRF4.1 and WRF-hydro5.2 succeed).
(4) "make all" and get the error:

cpp -P -traditional -DMPP_LAND -D_GFORTRAN_   create_forcing.F > create_forcing.f90
mpif90 -ffree-form  -ffree-line-length-none -g -fconvert=big-endian -fbounds-check -fno-range-check -c -I/home/user_name/project/wrf-hydro/source/netcdf_gcc485_hdf1.12/include -I./lib -I./lib create_forcing.f90
create_forcing.f90:14.40:

    character(len=:), allocatable :: str
                                        1
Error: Deferred-length character component 'str' at (1) is not yet supported
create_forcing.f90:25.6:

  use variables
      1
Fatal Error: Can't open module file 'variables.mod' for reading at (1): No such file or directory
make[2]: *** [Makefile:25: create_forcing.o] Error 1
make[2]: Leaving directory '/home/user_name/project/Noah/hrldas/hrldas/HRLDAS_forcing'
make[1]: *** [Makefile:13: default] Error 2
make[1]: Leaving directory '/home/user_name/project/Noah/hrldas/hrldas/HRLDAS_forcing'
make: *** [Makefile:14: all] Error 2

i will change the gcc version and then report the new situation

The model is gaining water (WaterBalanceError is positive)

Hi,

I am getting a strange error in Noah-MP Version 5 which is "The model is gaining water (WaterBalanceError is positive)". Create forcing is working perfectly using the NLDAS2 Grib files and model writes output for the first 519 timesteps (hourly). It shows the above-mentioned error at the 520th timestep. I tried using the single core as well as multi-cores but the problem persist. A screenshot of the error is attached to this issue.

Please let me know how I could resolve the problem.

Thanking You.

DATA: NLDAS2 Grib Model forcing File
Year: 2017
Timesteps: Hourly

Noah-MP5_ERROR

Regarding Preprocessing using create_uv.perl file

Hi,
This issue is raised because. while compiling fortran document in the perl file create_UV.perl, it uses a linked library path something like L/home/user/Documents/NCEPLIBS-bacio-develop/NCEPLIBS-w3emc-develop/w3emc/lib -lw. this throws an error 'undefined -lw'. I am not able to figure out which library is this trying to use.
After some research I found this NCEP libs used along with fortran programs called bacio and w3emc. I have installed these libraries. however even when I link the lib directories of these installations the error remains the same. Please help

Adding diagnostic output variables for HRLDAS-urban simulation

Currently, when users activate the urban physics (>0), there is no urban-related output variables in the default HRLDAS. For example, the T2MB and T2MV are the 2-m temperature for the rural portion of the urban grid instead of the urban 2-m temperature in HRLDAS.

There is a need to add new diagnostic output variables for urban-specific variables and the grid-mean diagnostic variables including rural and urban portions of the grid following the WRF calculations: https://github.com/wrf-model/WRF/blob/release-v4.5.1/phys/module_surface_driver.F#L3369

These new diagnostic output variable calculations should be added in hrldas driver somewhere here: https://github.com/NCAR/hrldas/blob/master/hrldas/IO_code/module_NoahMP_hrldas_driver.F#L1072

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.