ضرورت برنامه نویسی پایتون برای یک هیدرولوژیست - معرفی ماژول ها :: بیسین - سایت تخصصی مهندسی آب

ضرورت برنامه نویسی پایتون برای یک هیدرولوژیست - معرفی ماژول ها


چرا برای پردازش داده ها یک زبان برنامه نویسی استفاده می شود؟

اکثر دانش پژوهان محاسبات خود را در اکسل انجام می دهند و یا اگر مجوز نداشته باشند، توسط برنامه برنامه نویسی متن باز برنامه Calc از OpenOffice. با این حال، فرض کنید که مجموعه داده های هواشناسی طولانی داشته باشید. در اکسل، حداکثر طول ردیف بسیار سریع اشباع می شود بنابراین شما باید اطلاعات خود را بر روی ورق های مختلف تقسیم کنید. این بسیار ناکارآمد خواهد بود. همچنین برای ساخت یک مدل کامپیوتری در یک برنامه صفحه گسترده، شبیه سازی فرآیندهای مانند جریان آب زیرزمینی، فرسایش و یا انتشار گازهای گلخانه ای پیچیده است.

در این مورد، متخصصان اغلب به نوشتن یک برنامه اختصاصی که می توانند پردازش داده ها را انجام دهند و محاسبات مدل را به صورت خودکار انجام دهند مجددا بازگشت می کنند. رایج ترین زبان ها برای برنامه نویسی عبارتند از زبان برنامه نویسی C و مشتقات آن و Java و Fortran. این زبان ها بسیار قدرتمند هستند، اما دارای ویژگی هایی هستند که از جمله شما باید برنامه را بنویسید و سپس آن را برای کار با آن کامپایل کنید.

شاخه دیگری از زبان های برنامه نویسی زبان های تفسیری هستند. سپس دستورات می توانند تایپ شوند و توسط مترجم بدون تدوین به طور مستقیم ارزیابی شوند. تعدادی از فرمان ها را می توان در یک فایل متنی ذخیره کرد که اسکریپت نامیده می شود. زبان های متداول Matlab، Python و GNU Octave هستند. به عنوان یک برنامه تحت مجوز، Matlab بسیار پرهزینه است، ما ترجیح می دهیم که زبان پایتون با منبع باز را برای کار با آن استفاده کنیم. این موضوع در ممکن شدن پژوهش های آتی و حرفه ای هم بسیار اهمیت خواهد داشت. پایتون یک زبان برنامه نویسی بسیار متنوع است که می تواند برای پردازش داده ها به روش آسان استفاده شود و این صفحه وب به شما نکاتی و مثال هایی در مورد چگونگی استفاده از پایتون در کار کارشناسی علمی شما داده است.


نحوه نصب پایتون

اگر با مایکروسافت ویندوز (یا اوبونتو لینوکس) کار می کنید، صفحه ی دانلود پایتون (xy) را در www.pythonxy.org و تحت ویندوز / XP / Vista installer / administrator قرار دهید، نسخه کامل را دانلود کنید. پس از دانلود، روی نصب کننده دوبار کلیک کنید و گزینه های بعد را انتخاب کنید یا چند بار تا زمانیکه (Python(xy نصب شود. این بخش شبیه دیگر برنامه های نصبی خواهد بود.

لطفا توجه داشته باشید اگر قصد دارید معادلات یا کاراکترهای خاصی را در هر نمودار که میخواهید با Python طراحی کنید چاپ کنید، ابتدا باید LaTeX را نصب کنید.

(Python(xy همچنین چندین ابزار و برنامه های مفید موجود را شامل می شود، از جمله (Scientific Python Development EnviRonment (spyder که برای محاسبات تعاملی و تجسم داده طراحی شده و رابط کاربر ساده و بصری دارد.

یک جایگزین توزیع پایتون Anaconda از Continuum Analytics است. این نیز توزیع پایتون رایگان (از جمله برای استفاده تجاری و توزیع مجدد) است که حاوی حدود 300 بسته محبوب پایتون است.

توزیع سوم جایگزین برای سیستم عامل های MS Windows، MacOS یا RedHat لینوکس توزیع Enthought Python است که شامل تمام برنامه ها و ابزارهایی است که شما نیاز دارید. با این حال، قبل از اینکه بتوانید این توزیع را دانلود کنید، باید ثبت نام کنید و نسخه آزمایشی این توزیع فقط برای مدت زمان نامحدودی برای اهداف آموزشی است، بنابراین نمیتوانید از این استفاده تجاری استفاده کنید.

اگر شما از سیستم عامل Debian یا Ubuntu Linux استفاده می کنید، می توانید Python را از یک خط فرمان shell با استفاده از فرمان زیر نصب کنید:

apt-get install python python-matplotlib


یادگیری پایتون

یک کتاب کوتاه Python - برنامه نویسی پایتون به عنوان راهنمای دانش پژوهان هیدرولوژی - توسط M.J. Waterloo برای دوره MSc Hydrology Magazine "Exchange of Atmosphere Vegetation" نوشته شده است. شما همچنین می توانید فایل اسکریپت همراه را دانلود کنید که یک تصویر را با پایتون ایجاد می کند. برای یکی از تکالیف در این دفترچه راهنما، می توانید داده های متنی سطح داده آب (wl.txt) را با تاریخ، زمان و اطلاعات مربوط به سطح آب در رودخانه ریوو در نزدیکی آویرو در پرتغال دانلود کنید.

تعداد زیادی از آموزش های آنلاین نیز وجود دارد. برای مثال، وب سایت Python Tutorials را در www.awaretek.com ببینید.


ماژول های پایتون و اسکریپت ها برای دانشمندان هیدرولوژیست و زمین

چندین اسکریپت مفید در زیر آمده است. شما در اغلب موارد می توانید به راحتی آنها را با نیازهایتان سازگار کنید. اما توجه داشته باشید که هر روزه تعدادی اسکریپت جدید در سایت هایی مانند GitHub در حال تولید شدن است.


ژئوفیزیک

  • کتابخانه پایتون برای استفاده داده های امواج الکترومغناطیسی عمودی EM-34 و یک اسکریپت نمونه که نحوه استفاده از توابع کتابخانه را نشان می دهد.


اسکریپت GPS و GIS

  • GIS پایتون: ماژول های مختلف پایتون برای کار با GIS - Python GPS، MapView، LatLongUTM conversions.
  • پل اینکنبراندت از سازمان زمین شناسی یوتا چندین اسکریپت را که با ArcGIS کار می کنند، ساخته است. این اسکریپت ها شامل نمودار های Stiff و Box and Whisker و Piper هستند. اسکریپت های او از طریق این لینک دانلود می شود.


عملیات فایل NetCDF

  • txt2netcdf: توابع مختلف پایتون برای وارد کردن متن به فایل های داده NetCDF (ایجاد فایل ها، اضافه کردن متغیرها، ساختار لیست، و غیره)، است که توسط Ko van Huissteden توسعه یافته است.


هواشناسی یا Meteorology

  • meteolib: کتابخانه پایتون شامل توابع هواشناسی برای محاسبه فشار بخار جوی، تراکم هوا، پارامتر گرمای پنهان، ظرفیت گرما در فشار ثابت، ثابت روان سنجی، طول روز، ورودی فرابنفش زمینی، دمای بالقوه و بردار جهت باد است. مستندات برای این ماژول در اینجا ارائه شده است (وب سایت ماژول meteolib). توابع برای تبدیل سوابق داده مبتنی بر رویداد به سوابق فاصله زمانبندی equidistant یا (event2time) و تبدیل مقادیر تاریخ به مقادیر روز (year2doy) در حال حاضر در یک ماژول meteo_util جداگانه است. مستندات در اینجا ارائه می شود (وب سایت ماژول meteo_util). مستندات ماژول نیز به عنوان یک سند PDF موجود است. نویسنده: M.J. Waterloo


هیدرولوژی

  • evaplib: کتابخانه پایتون حاوی توابع برای محاسبه نرخ تبخیر است. توابع شامل تبخیر آب پنمن، تبخیر مرجع Makkink، تبخیر پریستلی تیلور Penman Monteith سال 1965 و تبخیر مرجع Penman Monteith ET0 FAO برای چمن های کوتاه و چشمه ای است. علاوه بر این، یک تابع برای محاسبه شار حرارت قابل قبول از اندازه گیری نوسان دما وجود دارد. مشاهده اسناد از توابع ماژول evaplib. مستندات ماژول نیز به عنوان یک سند PDF موجود است. نویسنده: M.J. Waterloo
  • کتاب راهنمای مدل سازی جریان آب زیرزمینی برای پایتون نوشته شده توسط پست وینسنت


هیدروشیمی یا Hydrochemistry

  • اسکریپت Python برای طرح مستطیل Piper (نسخه دسامبر 2014): اسکریپت پایتون برای ترسیم داده های شیمیایی در طرح پیاژه مستطیل شکل  برای راهنمایی بیشتر همچنین نمونه فایل data wateramples.txt را دانلود کنید. نویسنده: B.M. van Breukelen
  • اسکریپت Python برای چند قطعه Stiff (نسخه ژوئن 2011): اسکریپت پایتون برای تهیه نمودارهای مختلف Stiff. برای راهنمایی بیشتر همچنین نمونه فایل data wateramples.txt را دانلود کنید. نویسنده: B.M. van Breukelen
  • پل Inkenbrandt از سازمان زمین شناسی یوتا، اسکریپت Piper Python را برای استفاده در ArcGIS اقتباس کرده است. اسکریپت اقتباس شده را می توان از این لینک دانلود کرد.


پردازش اطلاعات هواشناسی Workshop

  • راهنمای تکمیل پردازش Meteodata: راهنمای پردازش اطلاعات هواشناسی برای اسکریپت و اطلاعات ذکر شده در زیر. همچنین شامل بخش هایی درباره نحوه گزارش دادن به این داده ها با استفاده از LaTeX می باشد.
  • meteoscript_yourname_2014.py: این فایل اسکریپت برای پردازش داده های هواشناسی جمع آوری شده در دوره های هیدرولوژیکی در Twente و پرتغال استفاده می شود. نویسنده: M.J. Waterloo. این اسکریپت اطلاعات ASCII را می خواند، متغیرهای حالت و تبخیر واقعی (روش تعادل انرژی متغیر درجه حرارت) و تبخیر بالقوه را محاسبه می کند. همچنین سری زمانی چندین متغیر آب و هوا را در بر می گیرد. این اسکریپت شامل سوالاتی است که باید توسط دانش پژوهان پاسخ داده شود تا بتوانند چگونگی اسکریپت را بهتر درک کنند. این باعث می شود که ماژول های مونولیب و تبخیری که در بالا ارائه شده است استفاده شود. یک دایرکتوری ecohydrology / pyscript ایجاد کنید و اسکریپت و ماژول ها را در این دایرکتوری دانلود و ذخیره کنید.
  • slowtable.dat: پرونده حاوی اطلاعات هواشناسی جمع آوری شده در پرتغال در حین دوره هیدرولوژیکی در Aveiro، 2014 است. این فایل خروجی از Loger Data Campbell Scientific CR1000 است. یک دایرکتوری ecohydrology / data ایجاد کنید و فایل داده را در این دایرکتوری دانلود و ذخیره کنید. 


منابع آماری برای هیدرولوژیست ها

  • منابع R برای هیدرولوژیست ها: در این وبلاگ تعداد زیادی برنامه برای آمار در هیدرولوژی با استفاده از R، که یک زبان رایانه برای محاسبات آماری و گرافیک است، فهرست شده است. توابع آماری R میتوانند در پایتون، از طریق Rpy، قابل دسترسی باشند.


ابزار مدل سازی هیدرولوژیکی پایتون

  • Vincent Post و دیگران یک بسته پایتون برای ایجاد، اجرا و پردازش MODFLOW، SEAWAT، MT3D و دیگر MODFLOW مدل های آب زیرزمینی را توسعه داده اند. نرم افزار و اسناد و مدارک را می توان در وب سایت FloPy3 پیدا کرد و می تواند از Github استخراج شود.
  • چارچوب های مدل سازی و رشد گیاه (CMF، PMF) و ابزارهای بهینه سازی پارامترهای آماری (SPOTPY) برای Python در دانشگاه Justus-Liebig در Giessen آلمان توسعه داده شد. این نرم افزار و کتابچه راهنمای کاربر برای دانلود در وب سایت چشم انداز، آب و فاضلاب بیوگرافی و شیمیایی همراه با مقالاتی است که بر اساس آن برنامه ها در دسترس هستند.
  • سات کومار تامر از دانشکده مهندسی عمران - موسسه علوم عالی Python هند کتاب راهنمای هیدرولوژی را نوشته و همچنین چندین اسناد هیدرولوژی و علوم زمین را از پروژه Ambhas خود که از pypi.python.org دریافت می شود، در دسترس قرار می دهد.
  • Jaap Schellekens از Deltares در دلفت، هلند، WFLOW پلاتفرم مدل سازی هیدرولوژیکی خود را که بخشی از پروژه Openstreams است، در schj.home.xs4all.nl توزیع می کنند.

تهیه و ترجمه: بهزاد سرهادی





نظرات (۰)

فرم ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی


درباره بهترين هاي بيسيـــن بدانيد...

Bird

يکي از مهمترين اهداف اين سايت تهيه آموزش هاي روان از ابزارهاي کاربردي علوم آب است.

اهميت مطالعات محيطي با ابزارهاي نوين در چيست؟

امروز با فارغ التحصيلي جمع کثير دانشجويان سالهاي گذشته و حال، با گذر از کمي گرايي ديگر صرف وجود مدارک دانشگاهي حرف اول را در بازار کار نمي زند؛ بلکه سنجش ديگري ملاک؛ و شايسته سالاري به ناچار! باب خواهد شد. يکي از مهم ترين لوازم توسعه علمي در هر کشور و ارائه موضوعات ابتکاري، بهره گيري از ابزار نوين است، بيسين با همکاري مخاطبان مي تواند در حيطه علوم آب به معرفي اين مهم بپردازد.

جستجو در بيسين


بیسین - سایت تخصصی مهندسی آب

سایت مهندسی آب بیسین با معرفی مهم ترین و کاربردی ترین نرم افزارها و مدل های شبیه سازی در حیطه مهندسی آب، تلاش به تهیه خدمات یکپارچه و محلی از محاسبات هیدرولوژیکی و هیدرولیکی می کند

W3Schools


اطلاعات سايت

  • behzadsarhadi@gmail.com
  • بهزاد سرهادي
  • شناسه تلگرام: SubBasin
  • شماره واتساپ: 09190622992-098
  • شماره تماس: 09190622992-098

W3Schools