Create soil parameters

AUTHORS: Julien Ruffault (julien.ruff@gmail.com), Nicolas Martin-StPaul (nicolas.martin@inrae.fr)

source

create_soil_parameters

 create_soil_parameters (file_path:pathlib.Path,
                         modeling_options:Dict=None,
                         list_of_parameters:List=None,
                         default_soil:bool=False, offset_psoil:int=0,
                         psoil_at_field_capacity:int=-33)

Create a Dictionary with soil parameters to run SureauR

Type Default Details
file_path Path Path to a csv file containing parameter values i.e path/to/parameter_values.csv
modeling_options typing.Dict None Dictionary created using the create_modeling_options function
list_of_parameters typing.List None A list containing the necessary input parameters instead of reading them in file. Will only be used if ‘file_path’ arguement is not provided
default_soil bool False A logical value indicating whether a default soil should be used to run tests
offset_psoil int 0 A numerical value indicating the offset in soil water potential (MPa)
psoil_at_field_capacity int -33 Unknown parameter definition
Returns typing.Dict Dictionary containing parameters

Example: Create soil parameters for campbell pedotransfer function

modeling_options_dict_campbell = create_modeling_options(
    time_step_for_evapo=2,
    reset_swc=True,
    avoid_water_soil_transfer=True,
    constant_climate=False,
    defoliation=True,
    soil_evapo=True,
    threshold_mortality=51,
    etp_formulation="pt",
    rn_formulation="linear",
    comp_options_for_evapo="custom",
    stomatal_reg_formulation="turgor",
    transpiration_model="jarvis",
    numerical_scheme="implicit",
    pedo_transfer_formulation="campbell",
)
create_soil_parameters(
    file_path="./sample_data/soil_example.csv",
    modeling_options=modeling_options_dict_campbell,
    default_soil=False,
    offset_psoil=1,
    psoil_at_field_capacity=-1,
)
There is an offset on Psoil of 1 MPa
Psoil at field capacity = -0.001 MPa
You are using campbell pedotransfer formulation
Available water capacity Wilting: 273.74477742718403 mm
Available water capacity Residual: 307.81195119276424 mm
Can soil_params["v_soil_storage_capacity"] be negative?? Ask
defaultdict(list,
            {'offset_psoil': 1,
             'psoil_at_field_capacity': -0.001,
             'pedo_transfer_formulation': 'campbell',
             'soil_depths': array([0.2, 1. , 4. ]),
             'layer_thickness': array([0.2, 0.8, 3. ]),
             'g_soil_0': 30.0,
             'rock_fragment_content': array([75., 82., 94.]),
             'b_campbell': array([-4., -4., -4.]),
             'psie': array([-0.025, -0.025, -0.025]),
             'ksat_campbell': 1.69,
             'saturation_capacity_campbell': array([0.39, 0.39, 0.39]),
             'wilting_point': array([0.1401286, 0.1401286, 0.1401286]),
             'field_capacity': array([0.87206651, 0.87206651, 0.87206651]),
             'residual_capacity_campbell': array([0.0490399, 0.0490399, 0.0490399]),
             'v_field_capacity': array([ 43.60332556, 125.57757762, 156.97197202]),
             'v_saturation_capacity_campbell': array([19.5 , 56.16, 70.2 ]),
             'v_residual_capacity_campbell': array([2.45199519, 7.06174614, 8.82718268]),
             'v_wilting_point': array([ 7.00643018, 20.17851893, 25.22314866]),
             'v_saturation_capacity': array([19.5 , 56.16, 70.2 ]),
             'v_soil_storage_capacity_wilt_campbell': 273.74477742718403,
             'v_soil_storage_capacity_res_campbell': 307.81195119276424,
             'v_soil_storage_capacity': 273.74477742718403})

Example: Create soil parameters for vg pedotransfer function

modeling_options_dict_vg = create_modeling_options(
    time_step_for_evapo=2,
    reset_swc=True,
    avoid_water_soil_transfer=True,
    constant_climate=False,
    defoliation=True,
    soil_evapo=True,
    threshold_mortality=51,
    etp_formulation="pt",
    rn_formulation="linear",
    comp_options_for_evapo="custom",
    stomatal_reg_formulation="turgor",
    transpiration_model="jarvis",
    numerical_scheme="implicit",
    pedo_transfer_formulation="vg",
)
create_soil_parameters(
    file_path="./sample_data/soil_example.csv",
    modeling_options=modeling_options_dict_vg,
    default_soil=False,
    offset_psoil=1,
    psoil_at_field_capacity=1,
)
There is an offset on Psoil of 1 MPa
Psoil at field capacity = 0.001 MPa
You are using vg pedotransfer formulation
Available water capacity Wilting: 25.65230545095943 mm
Available water capacity Residual: 135.33945663142987 mm
Can soil_params["v_soil_storage_capacity"] be negative?? Ask
defaultdict(list,
            {'offset_psoil': 1,
             'psoil_at_field_capacity': 0.001,
             'pedo_transfer_formulation': 'vg',
             'soil_depths': array([0.2, 1. , 4. ]),
             'layer_thickness': array([0.2, 0.8, 3. ]),
             'g_soil_0': 30.0,
             'rock_fragment_content': array([75., 82., 94.]),
             'alpha_vg': array([0.0005, 0.0005, 0.0005]),
             'n_vg': array([1.55, 1.55, 1.55]),
             'i_vg': array([0.5, 0.5, 0.5]),
             'ksat_vg': array([10., 10., 10.]),
             'saturation_capacity_vg': array([1., 1., 1.]),
             'residual_capacity_vg': array([0.098, 0.098, 0.098]),
             'wilting_point': 0.39128115288895826,
             'field_capacity': 0.45987020489687114,
             'v_field_capacity': array([22.99351024, 66.22130951, 82.77663688]),
             'v_saturation_capacity_vg': array([ 50., 144., 180.]),
             'v_residual_capacity_vg': array([ 4.9  , 14.112, 17.64 ]),
             'v_wilting_point': array([19.56405764, 56.34448602, 70.43060752]),
             'v_saturation_capacity': array([ 50., 144., 180.]),
             'v_soil_storage_capacity_wilt': 25.65230545095943,
             'v_soil_storage_capacity_res': 135.33945663142987,
             'v_soil_storage_capacity': 25.65230545095943})