Skip to content

Restructure the fire module to aid future development #119

Description

@maggiehendry

INFERNO parameters are currently hardcoded, but need to be namelist variables. This issue will refactor the code in preparation for the INFERNO changes. Currently the structure is ambiguous as init_fire already exists which convention is the standalone routine to read in namelist jules_fire however, jules_fire does not exist. init_fire is also a standalone only routine and it also defines fire_switches. The namelist and routine have been renamed to indicate that these calculate the Fire Weather Index rather than containing any INFERNO parameters or switches. jules_inferno will be added in another issue.

NB. Bare subroutines were converted to modules by #135

src/control/shared/fire_vars_mod.F90
src/initialisation/standalone/init_fire.F90 (Fire weather index; bare subroutine)
src/science/fire
src/science/fire/canadian_mod.F90
src/science/fire/fire_allocate.F90
src/science/fire/fire_calc_daily.F90
src/science/fire/fire_init.F90
src/science/fire/fire_mod.F90
src/science/fire/fire_timestep_mod.F90
src/science/fire/inferno_io_mod.F90
src/science/fire/inferno_mod.F90
src/science/fire/mcarthur_mod.F90
src/science/fire/nesterov_mod.F90

proposed restructure to separate Fire Weather Index calculation from INFERNO.

src/control/shared/fire_vars_mod.F90
src/initialisation/standalone/init_fire_weather_index_mod.F90 (renamed only)
src/science/fire
src/science/fire/fire_weather_index/canadian_mod.F90
src/science/fire/fire_weather_index/fire_allocate.F90
src/science/fire/fire_weather_index/fire_calc_daily.F90
src/science/fire/fire_weather_index/fire_init.F90
src/science/fire/fire_weather_index/fire_mod.F90
src/science/fire/fire_weather_index/fire_timestep_mod.F90
src/science/fire/fire_weather_index/mcarthur_mod.F90
src/science/fire/fire_weather_index/nesterov_mod.F90
src/science/fire/inferno/inferno_io_mod.F90
src/science/fire/inferno/inferno_mod.F90

with a change of name of namelist:fire_switches to namelist:jules_fire_weather_index and switch from l_fire to l_fire_weather_index. No other reorganisation but the minimum to free up namelist:jules_fire and SUBROUTINE init_fire for INFERNO related scalars and switches. Namelist items with size of npft should be added in a different namelist, preferably namelist:jules_pftparm to benefit from the one namelist per PFT changes in #115.

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions