Skip to content

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

read_fsm_ds_with_mask(path)

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 = 6
  • delete_nlst_files (bool): delete simulation configuration files or not. Default=True

Returns: NULL (FSM simulation file written to disk)


function txt2ds

txt2ds(fname)

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

output_to_ds(fname_pattern, complevel=9, remove_file=False, fout='fsm_outputs')

function to_netcdf

to_netcdf(fname_fsm_sim, complevel=9)

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 nc
  • complevel (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

read_pt_fsm2oshd(fname)

function read_pt_met_fsm2oshd

read_pt_met_fsm2oshd(fname)

This file was automatically generated via lazydocs.