Expand the building categories in Urban WRF (BEP+BEM)

Ideas, problems or suggestions regarding the WRF software.

Expand the building categories in Urban WRF (BEP+BEM)

Postby jackie02132 » Wed Jun 25, 2014 5:04 am

Dear all,

I was successfully implemented the Urban WRF with 3 building categories which are default in the run/URBPARM.tbl. However, since my city has relatively complicated urban topography. I would like to increase the number of building categories from 3 to 6. I've done some changed to the module script and code which are listed below:

Modify WRFV3/phys/module_sf_noahdrv.F

Line: 775-776 and line 796-797
From original:

IF( IVGTYP(I,J) == ISURBAN .or. IVGTYP(I,J) == 31 .or. &IVGTYP(I,J) == 32 .or. IVGTYP(I,J) == 33) THEN
To:
IF( IVGTYP(I,J) == ISURBAN .or. IVGTYP(I,J) == 31 .or. & IVGTYP(I,J) == 32 .or. IVGTYP(I,J) == 33 .or. IVGTYP(I,J) == 28 .or. IVGTYP(I,J) == 29 .or. IVGTYP(I,J) == 30 ) THEN

Modify WRFV3/phys/module_sf_bep_bem.F
Line: 39
From original:

nbui_max = 4
To:
nbui_max = 6

Modify WRFV3/phys/module_sf_urban.F
Line: 52
From original:

INTEGER, PARAMETER :: MAXDIRS = 4
To:
INTEGER, PARAMETER :: MAXDIRS = 6

Line 2009 to 3032
From original:
IF( IVGTYP(I,J) == ISURBAN) THEN
UTYPE_URB2D(I,J) = 2 ! for default. high-intensity
UTYPE_URB = UTYPE_URB2D(I,J) ! for default. high-intensity
FRC_URB2D(I,J) = FRC_URB_TBL(UTYPE_URB)
ENDIF
IF( IVGTYP(I,J) == 31) THEN
UTYPE_URB2D(I,J) = 3 ! low-intensity residential
UTYPE_URB = UTYPE_URB2D(I,J) ! low-intensity residential
FRC_URB2D(I,J) = FRC_URB_TBL(UTYPE_URB)
ENDIF
IF( IVGTYP(I,J) == 32) THEN
UTYPE_URB2D(I,J) = 2 ! high-intensity
UTYPE_URB = UTYPE_URB2D(I,J) ! high-intensity
FRC_URB2D(I,J) = FRC_URB_TBL(UTYPE_URB)
ENDIF
IF( IVGTYP(I,J) == 33) THEN
UTYPE_URB2D(I,J) = 1 ! Commercial/Industrial/Transportation
UTYPE_URB = UTYPE_URB2D(I,J) ! Commercial/Industrial/Transportation
FRC_URB2D(I,J) = FRC_URB_TBL(UTYPE_URB)
ENDIF
To:
IF( IVGTYP(I,J) == ISURBAN) THEN
UTYPE_URB2D(I,J) = 2 ! for default. high-intensity
UTYPE_URB = UTYPE_URB2D(I,J) ! for default. high-intensity
FRC_URB2D(I,J) = FRC_URB_TBL(UTYPE_URB)
ENDIF
IF( IVGTYP(I,J) == 31) THEN
UTYPE_URB2D(I,J) = 3 ! low-intensity residential
UTYPE_URB = UTYPE_URB2D(I,J) ! low-intensity residential
FRC_URB2D(I,J) = FRC_URB_TBL(UTYPE_URB)
ENDIF
IF( IVGTYP(I,J) == 32) THEN
UTYPE_URB2D(I,J) = 2 ! high-intensity
UTYPE_URB = UTYPE_URB2D(I,J) ! high-intensity
FRC_URB2D(I,J) = FRC_URB_TBL(UTYPE_URB)
ENDIF
IF( IVGTYP(I,J) == 33) THEN
UTYPE_URB2D(I,J) = 1 ! Commercial/Industrial/Transportation
UTYPE_URB = UTYPE_URB2D(I,J) ! Commercial/Industrial/Transportation
FRC_URB2D(I,J) = FRC_URB_TBL(UTYPE_URB)
ENDIF
IF( IVGTYP(I,J) == 28) THEN
UTYPE_URB2D(I,J) = 4 ! name as building categories "A"
UTYPE_URB = UTYPE_URB2D(I,J)
FRC_URB2D(I,J) = FRC_URB_TBL(UTYPE_URB)
ENDIF
IF( IVGTYP(I,J) == 29) THEN
UTYPE_URB2D(I,J) = 5 ! name as building categories "B"
UTYPE_URB = UTYPE_URB2D(I,J)
FRC_URB2D(I,J) = FRC_URB_TBL(UTYPE_URB)
ENDIF
IF( IVGTYP(I,J) == 30) THEN
UTYPE_URB2D(I,J) = 6 ! name as building categories "C"
UTYPE_URB = UTYPE_URB2D(I,J)
FRC_URB2D(I,J) = FRC_URB_TBL(UTYPE_URB)

For the URBPARM.tbl and VEGPARM.tbl, please check the attachment.
After I made those changes, I recompiled the WRF and run.

However, it give the following errors to me in the log file:
!!---start running wrf

starting wrf task 3 of 8
starting wrf task 1 of 8
starting wrf task 2 of 8
starting wrf task 4 of 8
starting wrf task 0 of 8
starting wrf task 5 of 8
starting wrf task 7 of 8
starting wrf task 6 of 8
mpiexec: Warning: tasks 0-1 exited with status 1.
mpiexec: Warning: tasks 2-7 died with signal 11 (Segmentation fault).

Also, for the rsl.error.* files, it gives the follows:

Namelist dfi_control not found in namelist.input. Using registry defaults for variables in dfi_control
Namelist tc not found in namelist.input. Using registry defaults for variables in tc
Namelist scm not found in namelist.input. Using registry defaults for variables in scm
Namelist fire not found in namelist.input. Using registry defaults for variables in fire
Ntasks in X 2 , ntasks in Y 4
--- NOTE: sst_update is 0, setting io_form_auxinput4 = 0 and auxinput4_interval = 0 for all domains
--- NOTE: obs_nudge_opt is 0 for domain 1, setting obs nudging interval and ending time to 0 for that domain.
--- NOTE: num_soil_layers has been set to 4
WRF V3.3 MODEL
*************************************
Parent domain
ids,ide,jds,jde 1 214 1 163
ims,ime,jms,jme -4 114 -4 48
ips,ipe,jps,jpe 1 107 1 41
*************************************
DYNAMICS OPTION: Eulerian Mass Coordinate
alloc_space_field: domain 1 , 819089908 bytes allocated
med_initialdata_input: calling input_input
Timing for processing wrfinput file (stream 0) for domain 1: 0.84545 elapsed seconds.
INPUT LandUse = "MODIFIED_IGBP_MODIS_NOAH"
INITIALIZE THREE Noah LSM RELATED TABLES
Skipping over LUTYPE = USGS
LANDUSE TYPE = MODIFIED_IGBP_MODIS_NOAH FOUND 33 CATEGORIES
INPUT SOIL TEXTURE CLASSIFICATION = STAS
SOIL TEXTURE CLASSIFICATION = STAS FOUND 19 CATEGORIES
D01 3-D analysis nudging for wind is applied and Guv= 0.3000E-03
D01 3-D analysis nudging for temperature is applied and Gt= 0.3000E-03
D01 3-D analysis nudging for water vapor mixing ratio is applied and Gq= 0.1000E-04
D01 3-D analysis nudging for temperature is turned off within the PBL.
D01 3-D analysis nudging for water vapor mixing ratio is turned off within the PBL.
D01 surface analysis nudging for wind is applied and Guv_sfc= 0.1000E-03
D01 surafce analysis nudging for temperature is not applied and Gt_sfc= 0.0000E+00
D01 surface analysis nudging for water vapor mixing ratio is not applied and Gq_sfc= 0.0000E+00
Timing for Writing wrfout_d01_2012-10-08_12:00:00 for domain 1: 3.74833 elapsed seconds.
d01 2012-10-08_12:00:00 Input data processed for aux input 9 for domain 1
d01 2012-10-08_12:00:00 Input data processed for aux input 10 for domain 1
Timing for processing lateral boundary for domain 1: 0.23893 elapsed seconds.
WRF TILE 1 IS 1 IE 107 JS 1 JE 41
WRF NUMBER OF TILES = 1
Fatal error in MPI_Wait: Other MPI error, error stack:
MPI_Wait(157).....................: MPI_Wait(request=0x2eead14, status0x7fff90aae3e0) failed
MPIDI_CH3I_Progress(150)..........:
MPID_nem_mpich2_blocking_recv(948):
MPID_nem_tcp_connpoll(1720).......:
state_commrdy_handler(1556).......:
MPID_nem_tcp_recv_handler(1446)...: socket closed


I am wonder whether I still missing somethings which I have to changed before the run or this error is only related to the MPI problem. Does anyone have similar experience can share? or anyone in expert can give me some advice?

Many thanks
Ignatius
jackie02132
 
Posts: 3
Joined: Wed Jun 25, 2014 4:45 am

Return to Software Engineering

Who is online

Users browsing this forum: No registered users and 1 guest

cron