گنو آکتیو

نرم افزار محاسبات عددی
(تغییرمسیر از گنو اکتاو)

گنو آکتِیو (به انگلیسی: GNU Octave) (که در فارسی «گنو اُکتاو» هم تلفظ می‌شود) زبان برنامه‌نویسی سطح بالایی است که بیشتر برای محاسبات عددی به کار می‌رود. این برنامه امکانات زیادی را از طریق رابط خط فرمان (به انگلیسی: Command-line interface) برای حل عددی مسائل خطی و غیرخطی می‌دهد. این برنامه را می‌توان جایگزین مناسبی برای همتای غیر آزاد خود متلب به حساب آورد.[۲]

گنو آکتِیو
رابط خط فرمان آکتیو
انتشار پایدار
9.1.0[۱] ویرایش در ویکی‌داده
14 مارس 2024
مخزن
نوشته‌شده باC, C++
گونهمحاسبات علمی
پروانهGPL (نرم‌افزار آزاد)
وبگاه

سایلب نیز دومین جایگزین برجسته متن‌باز و رایگان متلب به‌شمار می‌رود که نسبت به گنو آکتیو تکیه کمتری بر سازگاری (دو سویه) دستورها با متلب دارد.

تاریخچه ویرایش

پروژه آکتیو حوالی سال ۱۹۸۸ توسط جیمز بی. راولینگز (دانشگاه ویسکانسین-مدیسن) و جان جی. اِکرت (دانشگاه تگزاس) به عنوان ابزاری ویژه برای حل مسایل مربوط به طراحی واکنشگرهای شیمیایی (به انگلیسی: Chemical Reactors) کلید خورد. در سال‌های بعد این برنامه به عنوان پروژه‌ای جامع‌تر گسترش یافت. گسترش تمام وقت آن از بهار سال ۱۹۹۲ آغاز شد و اولین نسخهٔ آلفا در تاریخ ۴ ژانویه ۱۹۹۳ و نسخه ۱٫۰ در ۱۷ فوریه ۱۹۹۴ منتشر شد.[۳]

قابلیت‌های ویژه ویرایش

آکتیو علاوه بر قابلیت‌هایی همانند تعریف تابع، بارگذاری فایل‌ها، رسم نمودار و غیره، قابلیت‌های ویژه‌ای نیز ارائه می‌کند که این برنامه را از دیگر همتاهای خود تمیز می‌دهد.

تعریف مستقیم تابع از طریق خط فرمان ویرایش

برای استفاده یک تابع، کاربر مجبور به بارگذاری فایلی جداگانه نمی‌باشد و می‌تواند تابع را مستقیم از طریق خط فرمان وارد کند.

 octave:1> function s = hello_string (to_who)
> ## Say hello
> if nargin<1, to_who = "World"; end
> s = ["Hello ",\
> to_who];
> endfunction
     octave:2> hello_string ("Moon")
     ans = Hello Moon
 
نمودارها در آکتیو

کامنت ویرایش

علاوه بر کاراکتر %، کاراکتر # نیز برای کامنت‌گذاری استفاده می‌شود. برتری این راهکار در این است که علامت # در سیستم‌های یونیکس برای کامنت‌گذاری فایل‌های اسکریپت استفاده می‌شود.

استفاده از " برای تمیز دادن رشته‌ها ویرایش

علاوه بر کاراکتر ' می‌توان در مطلب از " برای مشخص کردن رشته‌ها استفاده کرد. برتری این راهکار در این است که رشته‌های مشخص شده با " قابلیت تفسیر بک اسلش (\) را دارند (مانند C,C++ و Perl) در حالی که رشته‌های با ' این قابلیت را ندارند (مانند Matlab و Perl).

بلوک‌ها با اطلاعات مفید ویرایش

بلوک‌های if, while, function و غیره را می‌توان علاوه بر end و endfunction به وسیلهٔ endif, endwhile و مشابه به اتمام رساند. از این راه می‌توان آغاز و پایان بلوک‌های تودرتو را از هم تمیز داد.

تشابه با زبان‌های متداول برنامه‌نویسی ویرایش

  • استفاده از علامت عطف! برای نفی (همتای ~)
  • استفاده از ++ و -- برای افزایش و کاستن پله‌ای و دیگر اپراتورهای متداول (=+، =*، ...)
  •  
    نگارهٔ فاز رسم شده با گنو آکتیو
    و غیره.

رابط‌های دیگر ویرایش

علاوه بر رابط خط فرمان، رابط‌های دیگری مانند رابط‌های گرافیکی یا رابط‌های تحت وب نیز در دسترس هستند.

جستارهای وابسته ویرایش

پیوندهای مفید ویرایش

منابع ویرایش

  1. "GNU Octave 9.1.0 Released". 14 مارس 2024. Retrieved 18 March 2024.
  2. سایت رسمی گنو آکتیو به انگلیسی
  3. درباره گنو آکتیو به انگلیسی