module TopoPyScale.sim_fsm2oshd
Methods to perform FSM2oshd simulations S. Filhol, September 2023
TODO:
- open and forest namelist
- run open/forest simulation
- combine results based on weights of open vs forest
- recover information of forest cover fraction from namelist file. Python namelist parser package?
function read_fsm_ds_with_mask
function to read fsm as ds, adding a dummy cluster for masked area
function fsm2oshd_sim_parallel
fsm2oshd_sim_parallel(
simulation_path='./fsm_sim,',
fsm_forest_nam='fsm__forest*.nam',
fsm_open_nam='fsm__open*.nam',
fsm_exec='./FSM_OSHD',
n_cores=6,
delete_nlst_files=False
)
Function to run parallelised simulations of FSM
Args:
fsm_forest_nam(str): file pattern of namelist file for forest setup. Default = 'fsm_sim/fsm__forest*.nam'fsm_open_nam(str): file pattern of namelist file for open setup. Default = 'fsm_sim/fsm__open*.nam'fsm_exec(str): path to FSM executable. Default = './FSM'n_cores(int): number of cores. Default = 6delete_nlst_files(bool): delete simulation configuration files or not. Default=True
Returns: NULL (FSM simulation file written to disk)
function txt2ds
Function to read a single FSM text file output as a xarray dataset
Args:
fname(str): filename
Returns: xarray dataset of dimension (time, point_name)
function output_to_ds
function to_netcdf
Function to convert a single FSM simulation output file (.txt) to a compressed netcdf file (.nc)
Args:
fname_fsm_sim(str): filename to convert from txt to nccomplevel(int): Compression level. 1-9
Returns: NULL (FSM simulation file written to disk)
function aggregate_all_open_forest
aggregate_all_open_forest(
fname_df_forest,
fname_forest_outputs='fsm_sim/fsm_outputs_fores_*.nc',
fname_open_outputs='fsm_sim/fsm_outputs_open_*.nc',
fout='fsm_sim/fsm_outputs',
n_cores=6,
n_digits=3,
remove_tmp_outputs=True
)
function read_pt_fsm2oshd
function read_pt_met_fsm2oshd
This file was automatically generated via lazydocs.