Porting WRF-SFIRE fuel moisture model to WRF4
Initial progress
- I started branch fuel-moisture-model from branch develop as requested in WRF instructions. Note that the current WRF is at tag v4.0.3 which is a few commits behind branch develop.
- Cherry pick f8193dad36 2011-09-25 adding moisture variables and 5a6c4b8c06 2011-09-26 21:55:09 using variable fuel moisture in fmc_g. Making minimal changes against original. I had to check and understand any changes not just resolve the conflicts. Hard to automate. So that took a bit of time.
- I created tag fuel-moisture-model-added-fmc_g and branch added-fmc_g at 132444f0db6754417 . The result should
- give the same numbers as code build by checking out tag wrf-develop-baseline when fire_fmc_read=1 in namelist.input or not set
- take fmc_g from wrfinput when fire_fmc_read=0
- This is how it is in this stage of the code for testing, but has changed in further commits after 2011-09-26 so it will be different after the port is completed.
Testing of fmc_g added
Get the test code:
git clone ssh://git@github.com/openwfm/WRF-Fire-merge.git cd WRF-Fire-merge git checkout added-fmc_g git log
to make sure you are at commit 132444f0db67544179c7998f5653c488dd41e836 . Build on kingspeak following How_to_build_WRF4#University_of_Utah_CHPC and run the basic hill test case:
cd test/em_fire ./ideal.exe ./wrf.exe >& wrf.log &
This will use fuel moisture from namelist.fire. To read fmc_g from wrfinput, set
fire_fmc_read=0
in namelist input. This will change as more of wrf-fire is merged in. In any case, fmc_g in wrfinput has to be set by other means, such as using ncreplace in Matlab.
To run real problem, build WPS for this WRF. Variable fmc_g should be in wrfinput but not set, you have to set it by other means.
Testing to be done:
- WRF4 built from branch develop and this version should give the same results (with fire_fmc_read=0 in namelist.input, or not set)
- From the testing I have already done it seems that the code is slow. I do not know why. I do not know if that is already the case for WRF4 (currently at 4.0.3). Compare speed with wrf-fire on the hill problem.
- A real problem
Continued progress
The WRF4 code with the fuel moisture model from wrf-fire is being created in branch fuel-moisture-model. It is not ready for testing yet. Note that the merge is started from branch develop as requested in WRF instructions. The current WRF is at tag v4.0.3 which is few commits behind branch develop.
The original plan (one out of several actually)
Too much complexity. There were quite a few conflicts already in cherry pick to 3cdb542af7ce submitted to 3.3 where not much changed. After a day or so, I decided I may as well do it right.
- check out 26d8a8f91cad4 release_v3.3 branch release_v3.3
- copy over fire model files from 3cdb542af7ce submitted to 3.3
- commit as 4e7a17952e22a v3.3 with fire as submitted
- create branch v3.3_with_fire_as_submitted
- revert the commit to get e69ed0d635b4 the change from submitted to release 3.3
- check out 3cdb542af7ce submitted to 3.3
- create branch moisture-model-port
- apply the fuel moisture model commits
- test with v3.3 input files
- apply? the change from submitted to release 3.3
- test with v3.3 input files
- upgrade by merge with 093ea6274f0d0 v4.0.3
- upgrade by merge with branch develop
- test with v4.0 input files