Il s'agit de la commande r.horizongrass qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
r.horizon - Calcule la hauteur de l'angle d'horizon à partir d'un modèle d'élévation numérique.
Le module a deux modes de fonctionnement différents : 1. Calcule l'horizon entier autour d'un
point unique dont les coordonnées sont données avec l'option 'coord'. La hauteur de l'horizon (en
radians). 2. Calcule une ou plusieurs cartes raster de la hauteur de l'horizon dans une seule direction.
L'entrée pour ceci est l'angle (en degrés), qui est mesuré dans le sens antihoraire avec
est=0, nord=90 etc. La sortie est la hauteur de l'horizon en radians.
MOTS-CLÉS
raster, solaire, position du soleil
SYNOPSIS
r.horizon
r.horizon --Aidez-moi
r.horizon [-dc] élévation=prénom [direction=flotter] [étape=flotter] [Commencer=flotter]
[fin=flotter] [zone tampon=flotter] [e_buff=flotter] [w_buff=flotter] [n_buff=flotter]
[s_buff=flotter] [distance max=flotter] [sortie=nom de base] [les coordonnées=Nord-est]
[distance=flotter] [filet=prénom] [--écraser] [--vous aider] [--verbeux] [--calme] [--ui]
Drapeaux:
-d
Écrire la sortie en degrés (la valeur par défaut est en radians)
-c
Écrire la sortie dans l'orientation de la boussole (la valeur par défaut est CCW, East=0)
--écraser
Autoriser les fichiers de sortie à écraser les fichiers existants
--Aidez-moi
Imprimer le récapitulatif d'utilisation
--verbeux
Sortie du module verbeux
--silencieux
Sortie module silencieuse
--interface utilisateur
Forcer le lancement de la boîte de dialogue GUI
Paramètres:
élévation=prénom [obligatoire]
Nom de la carte raster d'altitude en entrée
direction=flotter
Direction dans laquelle vous voulez connaître la hauteur de l'horizon
étape=flotter
Taille du pas d'angle pour l'horizon multidirectionnel [degrés]
Commencer=flotter
Angle de départ pour horizon multidirectionnel [degrés]
Valeur par défaut: 0.0
fin=flotter
Angle final pour horizon multidirectionnel [degrés]
Valeur par défaut: 360.0
zone tampon=flotter
Pour les rasters d'horizon, lisez à partir du DEM un tampon supplémentaire autour de la région actuelle
e_buff=flotter
Pour les rasters d'horizon, lisez à partir du DEM un tampon supplémentaire vers l'est de la région actuelle
w_buff=flotter
Pour les rasters d'horizon, lisez à partir du DEM un tampon supplémentaire vers l'ouest de la région actuelle
n_buff=flotter
Pour les rasters horizon, lisez à partir du DEM un tampon supplémentaire vers le nord de la région actuelle
s_buff=flotter
Pour les rasters d'horizon, lisez à partir du DEM un tampon supplémentaire au sud de la région actuelle
distance max=flotter
La distance maximale à considérer pour trouver la hauteur de l'horizon
sortie=nom de base
Nom de la ou des cartes raster de nom de base en sortie
les coordonnées=Nord-est
Coordonnée dont vous souhaitez calculer l'horizon
distance=flotter
Coefficient de pas de distance d'échantillonnage (0.5-1.5)
Valeur par défaut: 1.0
filet=prénom
Nom du fichier pour la sortie (utilisez output=- pour stdout)
Valeur par défaut: -
DESCRIPTION
r.horizon calcule la hauteur angulaire de l'horizon du terrain en radians. Il lit une trame de
données d'altitude et génère le contour de l'horizon dans l'un des deux modes suivants :
· point unique : comme une série de hauteurs d'horizon dans les directions spécifiées à partir du
point donné. Les résultats sont écrits dans la sortie standard.
· raster : dans ce cas, la sortie est une ou plusieurs cartes raster, avec chaque point dans un
raster donnant la hauteur de l'horizon dans une direction spécifique. Un raster est créé
pour chaque sens.
Les directions sont données sous forme d'angles azimutaux (en degrés), l'angle commençant par 0
vers l'Est et en se déplaçant dans le sens inverse des aiguilles d'une montre (le Nord est à 90, etc.). Le calcul prend en
tenir compte de la projection réelle, de sorte que les angles sont corrigés pour les distorsions de direction
imposé par celui-ci. Les directions sont ainsi alignées sur celles de la projection géographique et
pas le système de coordonnées donné par les lignes et les colonnes de la carte raster. Cette rectification
implique que les directions cardinales résultantes représentent la véritable orientation vers le
Est, Nord, Ouest et Sud. La seule exception de cette fonctionnalité est LOCATION avec x,y
système de coordonnées, où cette correction n'est pas appliquée.
Le -c drapeau, les angles azimutaux seront imprimés dans l'orientation de la boussole (Nord=0,
dans le sens des aiguilles d'une montre).
Entrée paramètres:
La élévation est une carte raster d'altitude en entrée. Si les options de tampon sont utilisées
(voir ci-dessous), ce raster doit s'étendre sur la zone qui accueille actuellement
région définie plus zones tampons définies.
La étape paramètre donne le pas d'angle (en degrés) entre les azimuts successifs
directions pour le calcul de l'horizon. Ainsi, une valeur de 5 pour le étape donnera un
total de 360/5=72 directions (72 cartes raster si utilisées en mode carte raster).
La Commencer Le paramètre donne l'angle de départ (en degrés) pour le calcul de l'horizon.
La valeur par défaut est 0 (Est avec Nord étant 90 etc.).
La fin paramètre donne l'angle de fin (en degrés) pour le calcul de l'horizon. Les
le point final est omis ! Ainsi, par exemple, si nous exécutons r.horizon avec step=10, start=30 et
end=70 les cartes raster générées par r.horizon seront uniquement pour les angles : 30, 40, 50, 60. Le
la valeur par défaut est 360.
La direction paramètre donne la direction initiale de la première sortie. Ce paramètre
agit comme un décalage d'angle de direction. Par exemple, si vous voulez obtenir des angles d'horizon pour
directions 45 et 225 degrés, le direction doit être réglé sur 45 et étape à 180. Si vous
ne voulez qu'une seule direction, utilisez ce paramètre pour spécifier la direction souhaitée de l'horizon
l'angle et réglez le étape taille à 0 degrés. Sinon tous les angles pour un départ donné
direction avec pas de étape sont calculés.
La distance contrôle la taille du pas de distance d'échantillonnage pour la recherche d'horizon le long de la
ligne de mire. La valeur par défaut est 1.0, ce qui signifie que la taille du pas sera prise à partir du
résolution de trame. La définition d'une valeur inférieure à 1.0 peut légèrement améliorer les résultats pour
directions en dehors des cardinales, mais en augmentant la charge de traitement de la recherche
algorithme.
La distance max valeur donne une distance maximale pour s'éloigner de l'origine le long de la ligne
de vue afin de rechercher la hauteur de l'horizon. Le défaut distance max est le plein
étendue de la carte. Plus cette valeur est petite, plus le calcul est rapide mais plus le risque est élevé
que vous risquez de manquer une caractéristique du terrain qui peut contribuer de manière significative à l'horizon
contour. Notez qu'un champ de vision peut être calculé avec r.vue.
La coordonner paramètre prend une paire de valeurs est-nord dans la coordonnée actuelle
système et calcule les valeurs de hauteur angulaire de l'horizon autour de ce point. À
obtenir la cohérence des résultats, la coordonnée du point est alignée au milieu de
la cellule raster d'altitude la plus proche.
Si un point analysé (ou une cellule raster) se trouve près du bord de la région définie, le
le calcul de l'horizon peut ne pas être réaliste, car il peut ne pas voir un terrain significatif
caractéristiques qui auraient pu contribuer à l'horizon, car ces caractéristiques sont en dehors
la région. Il existe des options pour définir la taille du tampon utilisé pour
augmenter la surface de l'analyse de l'horizon. Les zone tampon paramètre vous permet de spécifier
la même taille de buffer pour toutes les directions cardinales et les paramètres e_buff, n_buff,
s_buff et w_buff vous permettent de spécifier une taille de tampon individuellement pour chacun des quatre
directions. Les paramètres du tampon n'influencent que la taille de la carte d'altitude lue, tandis que le
l'analyse en mode raster sera effectuée uniquement pour la zone spécifiée par la région actuelle
définition.
La nom de base Le paramètre donne le nom de base des cartes raster d'horizon en sortie. Le raster
le nom de chaque raster de direction d'horizon sera construit comme nom de base_ANGLE, où ANGLE
est l'angle en degrés avec la direction. Si tu utilises r.horizon en mode point unique
cette option sera ignorée.
La sortie Le paramètre permet d'enregistrer les angles d'horizon résultants dans un ASCII séparé par des virgules
fichier (mode point unique uniquement). Si tu utilises r.horizon en mode carte raster cette option
Sera ignoré.
Pour le moment, l'altitude et la distance maximale doivent être mesurées en mètres, même si vous
utiliser des coordonnées géographiques (longitude/latitude). Si votre projection est basée sur la distance
(vers l'est et le nord), ceux-ci doivent également être en mètres. Les paramètres du tampon doivent être dans le
mêmes unités que les coordonnées raster (par exemple, pour les emplacements latitude-longitude, les tampons sont
mesurée en degré).
MÉTHODE
La méthode de calcul est basée sur la méthode utilisée dans soleil pour calculer les ombres. Ce
commence à un angle très faible et marche le long de la ligne de mire et demande à chaque pas
si la ligne de visée « touche » le terrain. Si c'est le cas, l'angle est augmenté pour permettre au
ligne de mire pour passer juste au-dessus du terrain à cet endroit. Cela se poursuit jusqu'à ce que le
la ligne de visée atteint une hauteur supérieure à n'importe quel point de la région ou jusqu'à ce qu'elle
atteint la frontière de la région (voir aussi le zone tampon, e_buff, n_buff, s_buff et
w_buff). Le nombre de lignes de visée (directions d'azimut) est déterminé à partir du
direction et étape paramètres. La méthode prend en compte la courbure de la Terre
où les fonctionnalités distantes sembleront être inférieures à ce qu'elles sont réellement. Il compte également pour
les changements d'angles vers les directions cardinales provoqués par la projection (voir ci-dessus).
EXEMPLES
Les exemples sont destinés à l'exemple de jeu de données de Caroline du Nord.
Simple point mode
Exemple 1: déterminer l'angle d'horizon dans la direction de 225 degrés (sortie des angles d'horizon CCW
de l'Est):
g.region raster=élévation -p
r.horizon élévation=direction d'élévation=215 step=0 bufferzone=200 \
coordonnées=638871.6,223384.4 maxdistance=5000
Exemple 2 : détermination des valeurs d'horizon à partir de 90 degrés (nord), pas de 5 degrés, sauvegarde
résultat sous forme de fichier CSV :
r.horizon élévation=direction d'élévation=90 step=5 bufferzone=200 \
coordonnées=638871.6,223384.4 maxdistance=5000 fichier=horizon.csv
Exemple 3: point de test près de l'intersection de l'autoroute, enregistrement du résultat sous forme de fichier CSV pour le traçage
l'horizon autour du carrefour autoroutier :
g.région n=223540 s=220820 w=634650 e=638780 res=10 -p
r.horizon élévation=direction d'élévation=0 step=5 bufferzone=200 \
coordonnées=636483.54,222176.25 maxdistance=5000 -d fichier=horizon.csv
Point de test près de l'intersection des autoroutes (exemple de jeu de données de Caroline du Nord)
Angles d'horizon pour le point de test (CCW de l'Est)
Nous pouvons tracer l'horizon en coordonnées polaires en utilisant Matplotlib en Python :
importer numpy en tant que np
importer matplotlib.pyplot en tant que plt
horizon = np.genfromtxt('horizon.csv', délimiteur=',')
horizon = horizon[1:, :]
hache = plt.subplot(111, polaire=Vrai)
barres = ax.plot(horizon[:, 0] / 180 * np.pi,
(90 - horizon[:, 1]) / 180 * np.pi)
# décommentez les 2 lignes suivantes lors de l'utilisation de l'indicateur -c
# ax.set_theta_direction(-1)
# ax.set_theta_zero_location('N')
plt.show ()
Tracé d'horizon en coordonnées polaires.
Raster Localisation mode
Mode carte raster (les cartes de sortie "horangle*" deviennent une entrée pour soleil):
# nous mettons une zone tampon de 10% de maxdistance autour de la zone d'étude
# calcule uniquement la direction entre 90 et 270 degrés
r.horizon élévation=élévation step=30 début=90 fin=300 \
zone tampon=200 sortie=horangle maxdistance=5000
Références
Hofierka J., 1997. Modélisation directe du rayonnement solaire dans un environnement SIG ouvert.
Actes de la conférence JEC-GI'97 à Vienne, Autriche, IOS Press Amsterdam, 575-584
Hofierka J., Huld T., Cebecauer T., Suri M., 2007. Outils Open Source de rayonnement solaire pour
Applications environnementales et énergétiques renouvelables, Symposium international sur l'environnement
Systèmes logiciels, Prague, 2007
Neteler M., Mitasova H., 2004. SIG Open Source : une approche SIG GRASS, Springer, New York.
ISBN : 1-4020-8064-6, 2e édition 2004 (réimprimé en 2005), 424 pages
Projet PVGIS, Commission européenne, DG Centre commun de recherche 2001-2007
Suri M., Hofierka J., 2004. Un nouveau modèle de rayonnement solaire basé sur SIG et son application pour
Évaluations photovoltaïques. Transactions en SIG, 8(2) 175-190
Utilisez r.horizongrass en ligne en utilisant les services onworks.net