generalfuncs = generalfuncs() userinputs = userinputs() mapUtil = mapUtil() globalsetting = globalsetting() defaultFNFD = defaultFNFD(userinputs) ######################################################################################## ### Workflow to set up APEX mode under mode 2 ######################################### ######################################################################################## if not userinputs.runMode == "mode2": print("Please set the run model to mode2 to run this script") exit() ################## Input data check ################################ generalfuncs.checkExists(defaultFNFD.fnpJSONQSNPLvls) ################ get value from MSA ################# # read in files runSubJs = generalfuncs.readJSON(defaultFNFD.jsonSubSce) qsnpLvlJs = generalfuncs.readJSON(defaultFNFD.fnpJSONQSNPLvls) wsRunNames = generalfuncs.readJSON(defaultFNFD.fnpJSONWSRunNames) subValLvlOut = {} for wsid, wsRN in wsRunNames.items(): fnMsa = os.path.join(defaultFNFD.fdApexTio, "{}.MSA".format(wsRN)) avgAnnVal = None avgAnnVal, avgAnnValFWrite = mapUtil.getAvgAnnFromMSA(fnMsa) # Then, get the levels of each subarea and variable
generalfuncs = generalfuncs() gdalfuncs = gdalfuncs() from scripts.defaultFNFD import defaultFNFD defaultFNFD = defaultFNFD(userinputs) ######################################################################################## ### Workflow to get the waterhsed for boundary ######################################### ######################################################################################## if not userinputs.runMode == "mode1": print("Please set the run model to mode1 to run this script") exit() ######################################################################################## generalfuncs.checkExists(userinputs.fnpOutLet) """check consistency of projection system""" demProj = gdalfuncs.getRasterProj(userinputs.fnDem) oltProj = gdalfuncs.getShpProjGdal(userinputs.fnpOutLet) if not (demProj == oltProj): print("Error: The dem and outlet do not have same projection system.") exit() ######################################################################################## # Generate streamline numProcesses = userinputs.numProcessers mpiexecPath = globalsetting.mpiexecPath # Move outlet to streamline to make sure that the outlet is ont the stream cells generalfuncs.removeFileifExist(defaultFNFD.fnpMvOlt) generalfuncs.addToLog('moveOutlet to stream line ...')
gdalfuncs = gdalfuncs() graphUtil = graphUtil() defaultFNFD = defaultFNFD(userinputs) ######################################################################################## ### Workflow to get the waterhsed for boundary ######################################### ######################################################################################## if not userinputs.runMode == "mode2": print("Please set the run model to mode2 to run this script") exit() ######################################################################################## # Input data check: projection and coverage """Check existence of dem and boundary data.""" generalfuncs.checkExists(userinputs.fnDem) generalfuncs.checkExists(userinputs.fnpUsrBdy) """check consistency of projection system""" demProj = gdalfuncs.getRasterProj(userinputs.fnDem) bdyProj = gdalfuncs.getShpProjGdal(userinputs.fnpUsrBdy) if not (demProj == bdyProj): print("Error: The dem and boundary do not have same projection system.") print("Projection for DEM is {}".format(demProj)) print("Projection for boundary is {}".format(bdyProj)) exit() ######################################################################################## # Generate watershed numProcesses = userinputs.numProcessers mpiexecPath = globalsetting.mpiexecPath
apexfuncs = apexfuncs() solfuncs = solfuncs() sqldbfuncs = sqldbfuncs() climfuncs = climfuncs() globalsetting = globalsetting() defaultFNFD = defaultFNFD(userinputs) ######################################################################################## ### Workflow to set up APEX mode under mode 2 ######################################### ######################################################################################## if not userinputs.runMode == "mode2": print("Please set the run model to mode2 to run this script") exit() ################## Input data check ################################ generalfuncs.checkExists(userinputs.fnLandUse) generalfuncs.checkExists(userinputs.fnSoil) demProj = gdalfuncs.getRasterProj(userinputs.fnDem) landuseProj = gdalfuncs.getRasterProj(userinputs.fnSoil) soilProj = gdalfuncs.getRasterProj(userinputs.fnLandUse) if not (demProj == landuseProj): print("Error: The projection of the LANDUSE layer is not \ consistent with that of the DEM layer.") exit() if not (demProj == soilProj): print("Error: The projection of the SOIL layer is not \ consistent with that of the DEM layer.") exit()