این دستور r.horizongrass است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
r.horizon - ارتفاع زاویه افق را از یک مدل ارتفاعی دیجیتال محاسبه می کند.
ماژول دارای دو حالت مختلف عملکرد است: 1. کل افق را در اطراف a محاسبه می کند
نقطه ای که مختصات آن با گزینه 'coord' داده شده است. ارتفاع افق (در
رادیان). 2. یک یا چند نقشه شطرنجی از ارتفاع افق را در یک جهت محاسبه می کند.
ورودی برای این زاویه (بر حسب درجه) است که در خلاف جهت عقربه های ساعت اندازه گیری می شود
east=0، شمال=90 و غیره. خروجی ارتفاع افق بر حسب رادیان است.
واژگان کلیدی
موقعیت شطرنجی، خورشیدی، خورشید
خلاصه
r.horizon
r.horizon --کمک
r.horizon [-dc] ارتفاع=نام [جهت=شناور] [گام=شناور] [شروع=شناور]
[پایان=شناور] [منطقه حائل=شناور] [e_buff=شناور] [w_buff=شناور] [n_buff=شناور]
[s_buff=شناور] [حداکثر فاصله=شناور] [تولید=نام اصلی] [مختصات=شمال شرقی]
[فاصله=شناور] [پرونده=نام] [--زیاد نوشتن] [--کمک] [--واژگان] [--ساکت] [--ui]
پرچم ها:
-d
خروجی را بر حسب درجه بنویسید (پیش فرض رادیان است)
-c
خروجی را در جهت قطب نما بنویسید (پیش فرض CCW، شرق=0 است)
--زیاد نوشتن
به فایل های خروجی اجازه بازنویسی فایل های موجود را بدهید
--کمک
خلاصه استفاده از چاپ
-- پرحرف
خروجی ماژول گویا
--ساکت
خروجی ماژول بی صدا
--ui
راه اندازی اجباری گفتگوی رابط کاربری گرافیکی
پارامترهای:
ارتفاع=نام [ضروری]
نام نقشه شطرنجی ارتفاع ورودی
جهت=شناور
جهتی که می خواهید ارتفاع افق را در آن بدانید
گام=شناور
اندازه گام زاویه ای برای افق چند جهته [درجه]
شروع=شناور
زاویه شروع برای افق چند جهته [درجه]
پیش فرض: 0.0
پایان=شناور
زاویه پایان برای افق چند جهته [درجه]
پیش فرض: 360.0
منطقه حائل=شناور
برای شطرنجی افق، از DEM یک بافر اضافی در اطراف منطقه فعلی بخوانید
e_buff=شناور
برای شطرنجی افق، از DEM یک بافر اضافی به سمت شرق منطقه فعلی بخوانید
w_buff=شناور
برای شطرنجی افق، از DEM یک بافر اضافی به سمت غرب منطقه فعلی بخوانید
n_buff=شناور
برای شطرنجی افق، از DEM یک بافر اضافی به سمت شمال منطقه فعلی بخوانید
s_buff=شناور
برای شطرنجی افق، از DEM یک بافر اضافی به سمت جنوب منطقه فعلی بخوانید
حداکثر فاصله=شناور
حداکثر فاصله ای که باید هنگام یافتن ارتفاع افق در نظر گرفت
تولید=نام اصلی
نام نقشه(های) شطرنجی نام پایه خروجی
مختصات=شمال شرقی
مختصاتی که می خواهید افق آن را محاسبه کنید
فاصله=شناور
ضریب گام فاصله نمونه برداری (0.5-1.5)
پیش فرض: 1.0
پرونده=نام
نام فایل برای خروجی (استفاده از output=- برای stdout)
پیش فرض: -
شرح
r.horizon ارتفاع زاویه ای افق زمین را بر حسب رادیان محاسبه می کند. شطرنجی می خواند
داده های ارتفاعی و خروجی طرح کلی افق در یکی از دو حالت:
· تک نقطه: به صورت مجموعه ای از ارتفاعات افق در جهت های مشخص شده از
نقطه داده شده نتایج در stdout نوشته می شود.
· شطرنجی: در این حالت خروجی یک یا چند نقشه شطرنجی با هر نقطه در a است
شطرنجی که ارتفاع افق را در یک جهت مشخص می دهد. یک رستر ایجاد می شود
برای هر جهت
جهات به صورت زوایای ازیموتال (بر حسب درجه) با زاویه شروع با 0 داده شده است
به سمت شرق و حرکت در خلاف جهت عقربه های ساعت (شمال 90 است و غیره). محاسبه می گیرد
طرح واقعی را در نظر بگیرید، بنابراین زاویه ها برای اعوجاج جهت تصحیح می شوند
توسط آن تحمیل شده است. بنابراین جهت ها با جهات پیش بینی جغرافیایی و
نه سیستم مختصات داده شده توسط سطرها و ستون های نقشه شطرنجی. این اصلاح
به این معنی است که جهت های اصلی به دست آمده نشان دهنده جهت گیری واقعی به سمت است
شرق، شمال، غرب و جنوب. تنها استثنای این ویژگی LOCATION با x,y است
سیستم مختصات، جایی که این اصلاح اعمال نمی شود.
با استفاده از -c پرچم، زوایای آزیموتال در جهت قطب نما چاپ می شود (شمال=0،
در جهت عقربه های ساعت)
ورودی پارامتر:
La ارتفاع پارامتر یک نقشه شطرنجی ارتفاع ورودی است. اگر از گزینه های بافر استفاده شود
(پایین را ببینید)، این شطرنجی باید در منطقه ای که در حال حاضر جای دارد گسترش یابد
منطقه تعریف شده به اضافه مناطق بافر تعریف شده.
La گام پارامتر گام زاویه (بر حسب درجه) بین ازیموتال متوالی را می دهد
جهت محاسبه افق بنابراین، مقدار 5 برای گام خواهد داد
مجموع 360/5=72 جهت (72 نقشه شطرنجی در صورت استفاده در حالت نقشه شطرنجی).
La شروع پارامتر زاویه شروع (بر حسب درجه) را برای محاسبه افق می دهد.
مقدار پیش فرض 0 است (شرق با شمال 90 و غیره).
La پایان پارامتر انتهای زاویه (بر حسب درجه) را برای محاسبه افق می دهد. در
نقطه پایان حذف شده است! بنابراین برای مثال اگر r.horizon را با step=10 اجرا کنیم، start=30 و
end=70 نقشه های شطرنجی تولید شده توسط r.horizon فقط برای زوایای 30، 40، 50، 60 خواهند بود.
مقدار پیش فرض 360 است.
La جهت پارامتر جهت اولیه اولین خروجی را می دهد. این پارامتر
به عنوان یک تغییر زاویه جهت عمل می کند. به عنوان مثال، اگر می خواهید زوایای افق را برای
جهت 45 و 225 درجه، جهت باید روی 45 تنظیم شود و گام به 180. اگر شما
فقط یک جهت می خواهید، از این پارامتر برای تعیین جهت دلخواه افق استفاده کنید
زاویه، و تنظیم کنید گام اندازه تا 0 درجه در غیر این صورت تمام زوایا برای یک شروع معین
جهت با گام از گام محاسبه می شوند.
La فاصله اندازه گام فاصله نمونه برداری را برای جستجوی افق در امتداد کنترل می کند
خط دید. مقدار پیشفرض 1.0 است به این معنی که اندازه گام از آن گرفته میشود
وضوح شطرنجی تنظیم مقدار زیر 1.0 ممکن است نتایج را کمی بهبود بخشد
جهت ها جدا از موارد اصلی، اما افزایش بار پردازش جستجو
الگوریتم
La حداکثر فاصله مقدار حداکثر فاصله را برای دور شدن از مبدا در امتداد خط می دهد
دید به منظور جستجوی ارتفاع افق. پیشفرض حداکثر فاصله کامل است
وسعت نقشه هر چه این مقدار کوچکتر باشد، محاسبه سریعتر اما ریسک بالاتر است
که ممکن است ویژگی زمین را که می تواند به افق کمک قابل توجهی کند از دست بدهید
طرح کلی. توجه داشته باشید که یک viewshed با آن قابل محاسبه است r.viewshed.
La مختصات پارامتر یک جفت مقدار شرق-شمال را در مختصات فعلی می گیرد
سیستم و مقادیر ارتفاع زاویه ای افق در اطراف این نقطه را محاسبه می کند. به
برای دستیابی به ثبات نتایج، مختصات نقطه به نقطه میانی تراز می شود
نزدیکترین سلول شطرنجی ارتفاع.
اگر یک نقطه تحلیل شده (یا سلول شطرنجی) نزدیک به لبه ناحیه تعریف شده باشد،
محاسبه افق ممکن است واقع بینانه نباشد، زیرا ممکن است زمین قابل توجهی را نبیند
ویژگی هایی که می توانست به افق کمک کند، زیرا این ویژگی ها در خارج هستند
منطقه. گزینه هایی وجود دارد که چگونه می توان اندازه بافر مورد استفاده را تنظیم کرد
افزایش سطح تحلیل افق در منطقه حائل پارامتر به شما امکان می دهد مشخص کنید
اندازه بافر یکسان برای تمام جهات اصلی و پارامترها e_buff, n_buff,
s_buffو w_buff به شما این امکان را می دهد که برای هر یک از این چهار اندازه به صورت جداگانه یک بافر مشخص کنید
جهت ها. پارامترهای بافر تنها بر اندازه نقشه ارتفاع خوانده شده تأثیر می گذارد، در حالی که
تجزیه و تحلیل در حالت شطرنجی فقط برای منطقه مشخص شده توسط منطقه فعلی انجام می شود
تعریف.
La نام اصلی پارامتر نام پایه نقشه های شطرنجی افق خروجی را می دهد. شطرنجی
نام هر رستر جهت افق به عنوان ساخته خواهد شد نام اصلی_ANGLE، جایی که ANGLE
زاویه بر حسب درجه با جهت است. اگر استفاده می کنید r.horizon در حالت تک نقطه ای
این گزینه نادیده گرفته خواهد شد.
La تولید پارامتر اجازه می دهد تا زوایای افق حاصل را در ASCII جدا شده با کاما ذخیره کنید
فایل (فقط حالت تک نقطه ای). اگر استفاده می کنید r.horizon در حالت نقشه شطرنجی این گزینه
نادیده گرفته خواهد شد
در حال حاضر ارتفاع و حداکثر فاصله باید بر حسب متر اندازه گیری شود، حتی اگر شما
از مختصات جغرافیایی (طول / عرض جغرافیایی) استفاده کنید. اگر فرافکنی شما بر اساس فاصله است
(شرق و شمال) اینها هم باید متر باشند. پارامترهای بافر باید در
واحدهای مشابه مختصات شطرنجی (مثلاً برای مکانهای طول و عرض جغرافیایی، بافرها هستند
بر حسب واحد درجه اندازه گیری می شود).
روش
روش محاسبه بر اساس روش مورد استفاده در r.sun برای محاسبه سایه ها آی تی
از زاویه بسیار کم شروع می کند و در امتداد خط دید قدم می زند و در هر مرحله می پرسد
آیا خط دید به زمین برخورد می کند. اگر چنین است، زاویه افزایش می یابد تا اجازه دهد
خط دید که درست از بالای زمین در آن نقطه عبور کنید. این کار تا زمان ادامه دارد
خط دید به ارتفاعی می رسد که از هر نقطه ای در منطقه یا تا آن زمان بالاتر است
به مرز منطقه می رسد (همچنین رجوع کنید به bufferzone,e_buff, n_buff, s_buffو
w_buff). تعداد خطوط دید (جهت های آزیموت) از روی تعیین می شود
جهت و گام مولفه های. این روش انحنای زمین را در نظر می گیرد
که به موجب آن ویژگیهای راه دور کمتر از آنچه هستند به نظر میرسند. را نیز به حساب می آورد
تغییرات زوایای نسبت به جهات اصلی ناشی از برآمدگی (به بالا مراجعه کنید).
مثال ها
نمونه ها برای مجموعه داده نمونه کارولینای شمالی در نظر گرفته شده است.
تنها نقطه حالت
مثال 1: تعیین زاویه افق در جهت 225 درجه (خروجی زوایای افق CCW
از شرق):
g.region raster=elevation -p
r.horizon elevation=جهت ارتفاع=215 step=0 bufferzone=200 \
مختصات=638871.6,223384.4،5000 حداکثر فاصله=XNUMX
مثال 2: تعیین مقادیر افق از 90 درجه (شمال)، اندازه گام 5 درجه، صرفه جویی
نتیجه به عنوان فایل CSV:
r.horizon elevation=جهت ارتفاع=90 step=5 bufferzone=200 \
مختصات=638871.6,223384.4،5000 maxdistance=XNUMX file=horizon.csv
مثال 3: نقطه آزمایش نزدیک تقاطع بزرگراه، ذخیره نتیجه به عنوان فایل CSV برای رسم
افق اطراف تقاطع بزرگراه:
g.region n=223540 s=220820 w=634650 e=638780 res=10 -p
r.horizon elevation=جهت ارتفاع=0 step=5 bufferzone=200 \
مختصات=636483.54,222176.25،5000 maxdistance=XNUMX -d file=horizon.csv
نقطه آزمایش نزدیک تقاطع بزرگراه (نمونه داده کارولینای شمالی)
زوایای افق برای نقطه آزمایش (CCW از شرق)
ما می توانیم افق را در مختصات قطبی با استفاده از Matplotlib در پایتون ترسیم کنیم:
numpy را به عنوان np وارد کنید
matplotlib.pyplot را به صورت plt وارد کنید
horizon = np.genfromtxt('horizon.csv', delimiter=',')
افق = افق[1:، :]
ax = plt.subplot(111، polar=True)
bars = ax.plot(horizon[:, 0] / 180 * np.pi,
(90 - افق[:، 1]) / 180 * np.pi)
هنگام استفاده از پرچم -c، 2 خط زیر را لغو نظر کنید
# ax.set_theta_direction(-1)
# ax.set_theta_zero_location('N')
plt.show ()
نمودار افق در مختصات قطبی.
محل تصویر نقشه حالت
حالت نقشه شطرنجی (نقشه های خروجی "horangle*" ورودی برای r.sun):
# ما یک منطقه بافر 10٪ از حداکثر فاصله را در اطراف منطقه مورد مطالعه قرار دادیم
# فقط جهت را بین 90 تا 270 درجه محاسبه کنید
r.horizon elevation=elevation step=30 start=90 end=300 \
بافرزون=200 خروجی=حداکثر فاصله گوشه ای=5000
مراجع
Hofierka J.، 1997. مدلسازی تابش مستقیم خورشیدی در یک محیط GIS باز.
مجموعه مقالات کنفرانس JEC-GI'97 در وین، اتریش، IOS Press آمستردام، 575-584
Hofierka J., Huld T., Cebecauer T., Suri M., 2007. ابزارهای تابش خورشیدی منبع باز برای
کاربردهای زیست محیطی و انرژی های تجدیدپذیر، سمپوزیوم بین المللی محیط زیست
سیستم های نرم افزاری، پراگ، 2007
Neteler M., Mitasova H., 2004. GIS منبع باز: رویکرد GIS GRASS, Springer, New York.
شابک: 1-4020-8064-6، چاپ دوم 2 (تجدید چاپ 2004)، 2005 صفحه
پروژه PVGIS، کمیسیون اروپا، مرکز تحقیقات مشترک DG 2001-2007
Suri M., Hofierka J., 2004. یک مدل جدید تابش خورشیدی مبتنی بر GIS و کاربرد آن برای
ارزیابی فتوولتائیک معاملات در GIS، 8(2)، 175-190
با استفاده از خدمات onworks.net از r.horizongrass به صورت آنلاین استفاده کنید