Suite

Comment puis-je saisir cette fonction dans « Calculatrice raster » dans Model Builder , dans ArcGIS 10.2 ?


Les fichiers raster auxquels cette fonction fait référence sont les suivants :

  • Précipitations (o « Raster » dans la figure 1) : Variable
  • CN_2S_7ma : constante
  • CN_8S_7ma : constante

La fonction mathématique à saisir est la suivante :

a) Première condition : Condition pour les rasters qui ont "Aucune valeur" ou des cellules vides, ils mettent un zéro. Si "Précipitations" > 0, Réponse : Oui = passage à la Condition 2, Non = 0

b) Deuxième condition : Si "Précipitations" > = CN_2S_7ma, Réponse :

Oui = 〖(Précipitations - CN_2S_7ma)〗^2 / (Précipitations + CN_8S_7ma)

Non = 0

L'idée est de placer la fonction dans un générateur de modèles, après avoir utilisé "Iterate Rasters" pour prendre tous les rasters dans le dossier ("Precipitacion") et appliquer la fonction. Jusqu'à présent, j'écris comme ceci les deux conditions dans "Raster Calculator" et ne fonctionne pas :

Con( "%Raster%" > 0,( Con( "%Raster%" >= "%CN_2S_7ma%",( ( Carré( "%Raster%" - "%CN_2S_7ma%" ) ) / ( "%Raster%" + "%CN_8S_7ma%" ) ), 0 ) ), 0 )

Figure 1 : écran d'impression de mon model Builder "ne fonctionne pas" :(


Vérifiez vos guillemets. Certains d'entre eux sont des guillemets doubles normaux, mais certains d'entre eux sont des « guillemets bouclés », en particulier ceux qui entourent vos variables %raster%. Cela peut s'être produit si vous avez copié et collé quelque chose à partir d'un programme Microsoft, car ils adorent convertir vos guillemets normaux en guillemets bouclés/intelligents. C'est vraiment évident si vous copiez et collez votre expression dans un éditeur de texte comme notepad++.

La solution rapide consiste à supprimer les guillemets et à les retaper dans la calculatrice raster. Je ne sais pas si c'est le seul problème avec l'expression, mais je pense que c'est au moins l'un des problèmes.