Meer

Hoe voer ik deze functie in "Raster Calculator" in Model Builder, in ArcGIS 10.2?

Hoe voer ik deze functie in


De rasterbestanden waarnaar de functie verwijst, zijn als volgt:

  • Neerslag (o “Raster” in figuur 1): Variabele
  • CN_2S_7ma: Constante
  • CN_8S_7ma: Constante

De wiskundige functie die moet worden ingevoerd is als volgt:

a) Eerste voorwaarde: Voorwaarde voor rasters die "Geen waarde" of lege cellen hebben, ze plaatsen een nul. Als "Neerslag"> 0, Reactie: Ja = naar toestand 2 gaan, Nee = 0

b) Tweede voorwaarde: Als "Neerslag"> = CN_2S_7ma, Reactie:

Ja = 〖(Neerslag - CN_2S_7ma)〗^2 / (Neerslag + CN_8S_7ma)

Nee = 0

Het idee is om de functie in een modelbouwer te plaatsen, na het gebruik van de "Iterate Rasters" om alle rasters in de map ("Precipitacion") te nemen en de functie toe te passen. Tot nu toe schrijf ik beide voorwaarden in "Raster Calculator" en werken niet:

Con( “%Raster%” > 0,( Con( “%Raster%” >= "%CN_2S_7ma%",( ( Vierkant( "%Raster%" - "%CN_2S_7ma%" ) ) / ( "%Raster%" + "%CN_8S_7ma%" ) ), 0 ) ), 0 )

Figuur 1: printscreen van mijn "niet werkende" model Builder :(


Controleer je aanhalingstekens. Sommige zijn normale dubbele aanhalingstekens, maar sommige zijn 'gekrulde aanhalingstekens', met name die rond uw %raster%-variabelen. Dit kan zijn gebeurd als u iets uit een Microsoft-programma hebt gekopieerd en geplakt, omdat ze uw normale aanhalingstekens graag converteren naar gekrulde/slimme aanhalingstekens. Het is echt duidelijk als je je uitdrukking kopieert en plakt in een teksteditor zoals notepad++.

De snelle oplossing is om de aanhalingstekens te verwijderen en ze opnieuw in de rastercalculator te typen. Ik weet niet zeker of dat het enige probleem is met de uitdrukking, maar ik denk dat het in ieder geval een van de problemen is.