create_config_file.py 6.29 KiB
#!/usr/bin/env python3
# -*- coding: utf-8 -*-


############################################################################
#
# MODULE:       create_config_file.py
# AUTHOR(S):    Michael Rabotin
# PURPOSE:      Create empty config file
#               
#
# COPYRIGHT:    (C) 2021 UR RIVERLY - INRAE
#
#               This program is free software under the GNU General Public
#               License (>=v2). Read the file LICENSE that comes with 
#                HRU-DELIN for details.
#
#############################################################################


file= open("hrudelin_config.cfg","a")

file.write("# -----------\n")
file.write("# environment\n")
file.write("# -----------\n")
file.write("\n")
file.write("[dir_in]\n")
file.write("dir:\n")
file.write("\n")
file.write("[dem]\n")
file.write("dem:\n")
file.write("\n")
file.write("\n")
file.write("[data]\n")
file.write("hgeo:\n")
file.write("landuse:\n")
file.write("soil:\n")
file.write("\n")
file.write("\n")
file.write("[gauges]\n")
file.write("gauges:\n")
file.write("#for watershed ID, used for identification of watersheds\n")
file.write("gauges_col_name=\n")
file.write("# drained surface\n")
file.write("gauges_area_col_name=\n")
file.write("relocated_gauges=\n")
file.write("\n")
file.write("\n")
file.write("[irrigation]\n")
file.write("# yes or no\n")
file.write("to_do:\n")
file.write("irrigation:\n")
file.write("irrig_col_name=\n")
file.write("#for irrig_col_type, 2 for groundwater and 3 for surface")
file.write("irrig_col_type=\n")
file.write("\n")
file.write("# you can indicate a minimum surface value for an HRU to be a GU:\n")
file.write("#minimum surface can be null, global (irrig_surf_min_GU) or spatialized (irrig_col_min_GU)\n")
file.write("irrig_surf_min_GU=\n")
file.write("irrig_col_min_GU=\n")
file.write("#you can specify a maximum distance search for GU (default is 5000 m\n")
file.write("irrig_distance_GU=5000\n")
file.write("\n")
file.write("irrigation_sector:\n")
file.write("irrig_sector_col_name=\n")
file.write("irrig_col_sau_irr=\n")
file.write("irrig_col_dom_sau_irr=\n")
file.write("irrigation_table:\n")
file.write("relocated_irrigation=\n")
file.write("\n")
file.write("[dams]\n")
file.write("# yes or no\n")
file.write("to_do:\n")
file.write("dams=\n")
file.write("dams_col_name=\n")
file.write("dams_smax=\n")
file.write("dams_s0=\n")
file.write("#drained surface\n")
file.write("dams_area_col_name=\n")
file.write("relocated_dams=\n")
file.write("\n")
file.write("[dir_out]\n")
file.write("files:\n")
file.write("results:\n")
file.write("# -------------------------\n")
file.write("# 1st step : hru-delin_init\n")
file.write("# -------------------------\n")
file.write("\n")
file.write("[surface]\n")
file.write("#selection: total -> full dem\n")
file.write("#           polygon -> polygon: name of the shapefile\n")
file.write("#           coords -> give the coords upper left (west and north) and lower right (east and south)\n")
file.write("selection:\n")
file.write("polygon:\n")
file.write("west:\n")
file.write("north:\n")
file.write("east:\n")
file.write("south:\n")
file.write("\n")
file.write("\n")
file.write("[demfill]\n")
file.write("#\n")
file.write("# if demfill = yes : depressionless DEM will be generated\n")
file.write("#               no : no action on input DEM \n")
file.write("#\n")
file.write("demfill:\n")
file.write("\n")
file.write("#\n")
file.write("# if rules_auto_* = yes : rules will be calculated by the module\n")
file.write("# if no : fill the corresponding file (reclass_default_rules_*)\n")
file.write("#\n")
file.write("[reclass_dem]\n")
file.write("rules_auto_dem:\n")
file.write("step_dem:\n")
file.write("\n")
file.write("[reclass_slope]\n")
file.write("rules_auto_slope:\n")
file.write("\n")
file.write("[reclass_aspect]\n")
file.write("rules_auto_aspect:\n")
file.write("\n")
file.write("[basin_min_size]\n")
file.write("# minimum size of calculated watersheds (r.watershed)\n")
file.write("# number of pixels \n")
file.write("#  size = N = SURFACE_km2 / ( RES_km2^2 )\n")
file.write("#  ex: S = 10km2, RES = 200m = 0.2 km  ==> N = 250 pixels\n")
file.write("#      S = 20km2, RES = 90m = 0.09 km ==> N = 2469 pixels\n")
file.write("size=\n")
file.write("\n")
file.write("# ---------------------------\n")
file.write("# 2nd step : hru-delin_basins\n")
file.write("# ---------------------------\n")
file.write("# So it's possible to specify a variable using : or = ???\n")
file.write("[auto_relocation]\n")
file.write("# yes or no\n")
file.write("to_do:\n")
file.write("#          -------- first rule\n")
file.write("# surface is in percent!\n")
file.write("# distance is in pixels: N = D / RES\n")
file.write("# example: for 3km distance with a 50m DEM, the number of pixel is: 3000/50 = 33 pixels\n")
file.write("surface_tolerance_1=\n")
file.write("distance_tolerance_1=\n")
file.write("#          -------- second rule  \n")
file.write("# second rule with a distance tolerance of 6km and a surface tolerance of 30%\n")
file.write("surface_tolerance_2=\n")
file.write("distance_tolerance_2=120\n")
file.write("\n")
file.write("# unit = 1 : m , = 2 : km\n")
file.write("area_unit=\n")
file.write("\n")
file.write("\n")
file.write("\n")
file.write("# ---------------------------\n")
file.write("# 3rd step : hru-delin_hrugen\n")
file.write("# ---------------------------\n")
file.write("\n")
file.write("[hrus_min_surface]\n")
file.write("# there, this is in pixel so pay attention to the DEM resolution \n")
file.write("# same as for bassin_min_size: N = SURFACE_km2 / ( RES_km2^2 ) # see 'size' parameter in step 1 for examples\n")
file.write("# 2 km2 = 247 pixels\n")
file.write("surface=\n")
file.write("\n")
file.write("#\n")
file.write("# MNT-derived layers to be integrated in the overlay operation\n")
file.write("#\n")
file.write("[layer_overlay]\n")
file.write("# yes or no\n")
file.write("dem:\n")
file.write("slope:\n")
file.write("aspect:\n")
file.write("\n")
file.write("# --------------------------------\n")
file.write("# 4th step : hru-delin_parms_J2000\n")
file.write("# --------------------------------\n")
file.write("# yes or no\n")
file.write("[topology]\n")
file.write("dissolve_cycle:\n")
file.write("hru_no_topology_log:\n")
file.write("OF_domain_export:\n")
file.write("[hru_param]\n")
file.write("hru_cat:\n")
file.write("hru_landuse:\n")
file.write("[irrigation_analysis]\n")
file.write("HRU_file:\n")
file.write("cantons_file:\n")








file.close()