زنگ

کسانی هستند که قبل از شما این خبر را می خوانند.
برای دریافت آخرین مقالات مشترک شوید.
پست الکترونیک
نام
نام خانوادگی
چگونه دوست دارید زنگ را بخوانید
بدون هرزنامه
  • آموزش

# wget https://dl.fedoraproject.org/pub/epel/7/x86_64/ # yum localinstall epel-release-6-7.noarch.rpm

و تنها پس از آن اکتاو yum install کار خواهد کرد.
در نهایت همه چیز آماده است و برنامه نصب می شود.


# octave GNU Octave، نسخه 3.8.2 حق چاپ (C) 2014 جان دبلیو ایتون و دیگران. این نرم افزار رایگان است. کد منبع برای شرایط کپی را ببینید. مطلقاً هیچ ضمانتی وجود ندارد. نه حتی برای تجارت پذیری یا تناسب اندام برای یک هدف خاص. برای جزئیات، عبارت "گارانتی" را تایپ کنید. اکتاو برای "x86_64-redhat-linux-gnu" پیکربندی شد. اطلاعات بیشتر در مورد Octave در http://www.octave.org موجود است. اگر این نرم افزار را مفید می دانید، لطفاً مشارکت کنید. برای اطلاعات بیشتر، به http://www.octave.org/get-involved.html مراجعه کنید http://www.octave.org/bugs.html را بخوانید تا نحوه ارسال گزارش اشکال را بیاموزید. برای اطلاع از تغییرات نسخه های قبلی، «اخبار» را تایپ کنید. اکتاو: 1>

عملیات ماتریسی

بیایید زمان را از دست ندهیم و عملیات هایی را انجام دهیم که می توان با استفاده از bc و awk که دفعه قبل در مورد آنها صحبت شد تکرار شود. بیایید کمی با ماتریس ها بازی کنیم.


اول، یک جابجایی ماتریس ساده:


octave:1> A= A = 1 3 5 2 4 6 octave:2> A" ans = 1 2 3 4 5 6

بیایید سعی کنیم سیستم معادلات خطی را حل کنیم:


x + y + z = 9 2x + 4y - 3z = 1 3x + 6y - 5z = 0

ما در ماتریس رانندگی می کنیم آ، بردار بو معادله Ax=b را به صورت ماتریسی حل کنید


اکتاو:1> A= A = 1 1 1 2 4 -3 3 6 -5 اکتاو:2> b= b = 9 1 0 اکتاو:3> x=A\b x = 7.00000 -1.00000 3.00000

ما تعیین کننده و مقادیر ویژه ماتریس را پیدا می کنیم.


octave:4> det (A) ans = -1.00000 octave:5> eig (A) ans = -2.88897 2.76372 0.12525

اعداد مختلط نیز در محاسبات پشتیبانی می شوند.


octave:6> A=[-3 0 2; 1 -1 0; -2 -1 0] A = -3 0 2 1 -1 0 -2 -1 0 اکتاو:7> x=det (A) x = -6 اکتاو:8> y=eig(A) y = -1.00000 + 1.41421i -1.00000 - 1.41421i -2.00000 + 0.00000i

توابع و متغیرها

ایجاد متغیرها و توابع در Octave بسیار ساده تر از مثلاً در جاوا یا C است. با استفاده از مثال ماتریس، قبلاً نحوه اعلان متغیرها را دیده ایم. ایجاد یک تابع جدید دارای نحو زیر است


تابع = تابع_نام (arg1، arg2، ...، argN) تابع نهایی بدنه تابع
معمولا، ویژگی جدیددر یک فایل جداگانه یا در یک فایل اسکریپت Octave ایجاد می شوند
قبل از اولین تماس اگر قصد دارید از یک تابع سفارشی در فایل‌های اسکریپت مختلف استفاده کنید، البته بهتر است آن را در یک فایل جداگانه ایجاد کنید. در گنو اکتاو، فایل های تابع پسوند .m دارند و به طور خودکار بارگذاری می شوند. نام فایل باید دقیقاً با نام تابع مطابقت داشته باشد.

بیایید یک تابع برای حل معادله درجه دوم ax² + bx + c = 0 بنویسیم


octave:9> تابع = quadr(a, b, c) > D = sqrt(b^2-4*a*c); > x1 = (-b-D)/(2*a); > x2 = (-b+D)/(2*a); > اکتاو تابع پایانی:10> =quadr(a, b, c) y1 = 2 y2 = 3

رابط کاربری گرافیکی

در واقع، ما برای ریاضی اینجا هستیم. خط فرمان Gutarim، اما هنوز نحوه نمایش نمودار تابع مشخص نیست. با این حال، هیچ رازی در اینجا وجود ندارد - Gnuplot برای این اهداف استفاده می شود. با نصب بسته اضافی odepkg می توانید جاذبه Lorenz را ترسیم کنید.


function = froessler (vt, vx) vyd = [- (vx(2) + vx(3)); vx(1) + 0.2 * vx(2); 0.2 + vx(1) * vx(3) - 5.7 * vx(3)]؛ endfunction A = odeset("MaxStep"، 1e-1); = ode78 (@froessler،،،، A)؛ طرح فرعی (2، 2، 1); شبکه ("روشن")؛ نمودار (t، y(:،1)، "-b;f_x(t);"، t، y(:،2)، "-g;f_y(t);"، \ t، y(:،3 ), "-r;f_z(t);"); طرح فرعی (2، 2، 2); شبکه ("روشن")؛ نمودار (y(:،1)، y(:،2)، "-b;f_(xyz)(x، y);"); طرح فرعی (2، 2، 3); شبکه ("روشن")؛ نمودار (y(:،2)، y(:،3)، "-b;f_(xyz)(y، z);"); طرح فرعی (2، 2، 4); شبکه ("روشن")؛ plot3 (y(:،1)، y(:،2)، y(:،3)، "-b;f_(xyz)(x، y، z);");


راحت ترین پوسته گرافیکی برای کار با Octave برنامه QtOctave است. مورد دوم از زمان انتشار Octave 4.0 تثبیت شده و در بسته گنجانده شده است.

بعدش چی؟

ممکن است این سوال پیش بیاید: اصلاً چرا به بسته های ریاضی باز نیاز داریم؟ همه به برنامه های اداری نیاز دارند، اما همه نیازی به حل معادلات پواسون در خانه با استفاده از تبدیل لاپلاس ندارند. برای دانشگاه ها، متلب بسیار ارزان تر از افراد و سازمان های تجاری است. سازمان‌های تجاری، در صورت لزوم، منابع مالی پیدا می‌کنند و به مردم عادی اجازه می‌دهند در دانشگاه‌ها ریاضیات انجام دهند یا یک ستون بشمارند.


البته این یک تصور اشتباه است. محاسبات علمی انجام شده با استفاده از نرم افزار منبع باز دارای یک "سطح حفاظت" اضافی هستند، زیرا در صورت تمایل هر کسی می تواند همان محاسبات را تکرار کند و اعتبار نتایج را بررسی کند. همین محاسبات روی نرم افزارهای گران قیمت انجام می شود تا حدی امکان بررسی نتایج را قطع کرد. مشکل در واقع بسیار گسترده تر است (متن انگلیسی) و فقط برنامه های ریاضی منبع باز یا اختصاصی نیست. بر کسی پوشیده نیست که مجلات علمی معمولاً نویسندگان را ملزم به ارائه داده ها و روش های کافی برای تضمین تکرار نتایج آزمایش و تأیید مدل نمی کنند. به خصوص اغلب اقتصاددانان و سرمایه داران با این کار گناه می کنند و صرفاً داده های خود را طبقه بندی می کنند. تأیید محاسبات و نتیجه‌گیری در میان مجموعه‌ای از مقالات با داده‌های «طبقه‌بندی‌شده» افزودن برچسب‌ها

تبدیلات یکسان عبارات (از جمله ساده سازی)، حل تحلیلی معادلات و سیستم ها.

تمایز و ادغام، تحلیلی و عددی؛

حل معادلات دیفرانسیل;

انجام یک سری محاسبات با مقادیر مختلف شرایط اولیه و سایر پارامترها.

در عین حال، دامنه وظایف حل شده توسط چنین سیستم هایی بسیار گسترده است:

  • انجام تحقیقات ریاضی که نیاز به محاسبات و محاسبات تحلیلی دارد.
  • توسعه و تجزیه و تحلیل الگوریتم ها؛
  • مدل سازی ریاضی و آزمایش کامپیوتری؛
  • تجزیه و تحلیل و پردازش داده ها؛
  • تجسم، گرافیک علمی و مهندسی؛
  • توسعه برنامه های گرافیکی و محاسباتی

اصول ساخت مدل های ریاضی. مراحل اصلی مدل سازی

مدل سازی ریاضی ایجاد یک توصیف ریاضی از یک شی واقعی و مطالعه این توصیف است.

اصول ساخت مدل های ریاضی

مراحل اصلی مدل سازی

کل فرآیند مدل سازی را می توان به مراحل زیر تقسیم کرد:

فرمول بندی مسئله مدل سازی؛

ساخت یک نمودار مدل، برجسته کردن بخش ها و فرآیندهای اصلی؛

تعیین یک معیار یا مقدار بهینه سازی که باید محاسبه شود.

انتخاب پارامترهای اصلی قابل تغییر؛

توصیف ریاضی قطعات و فرآیندهای اصلی؛

ایجاد راه حلی که پارامترهای متغیر و معیار بهینه سازی یا مقدار محاسبه شده را به هم مرتبط می کند.

مطالعه راه حل برای یک اکسترموم یا محاسبه پارامتر مورد نظر.

بیان مسئله مدلسازی

بیان مسئله معمولاً به صورت توصیف شفاهی فرموله می شود. در مرحله فرمول بندی، موضوع مدل سازی، اهداف ساخت مدل و معیارهای بهینه سازی باید شرح داده شود.

ساخت یک نمودار مدل، برجسته کردن بخش ها و فرآیندهای اصلی

در این مرحله، بر اساس بیان مسئله، شی مدل‌سازی به بخش‌های اصلی تقسیم می‌شود و فهرستی از فرآیندهای تعامل این بخش‌ها تعیین می‌شود.

در اینجا بسته ها هستند همه منظورههمچنین نمی تواند کمک کند. بسته‌های تخصصی معمولاً حاوی عناصری هستند که مدل را به قسمت‌هایی برای حوزه موضوعی خود تقسیم می‌کنند.

یک معیار بهینه سازی قابل سنجش یا پارامتر کمی مطلوب باید فرموله شود.

فهرستی از تمام پارامترهای متغیر و بیان کمی مشخصه آنها باید فرموله شود.

شرح ریاضی قطعات و فرآیندهای اصلی

تعامل اجزای مدل باید با فرمول های ریاضی بیان شود. بخشی از ریاضیات که برای توضیحات استفاده خواهد شد به دلایل راحتی انتخاب شده است. آن ها اول از همه، این بخش باید بتواند این نوع تعامل را به صورت کمی توصیف کند.

نتیجه این مرحله سیستمی از معادلات یا دیگر عبارات ریاضی است که به طور رسمی برهمکنش قطعات را توصیف می کند و اجازه می دهد تا یک راه حل، یعنی. اشتقاق وابستگی: معیار بهینه سازی به عنوان تابعی از پارامترهای متغیر.

به ویژه، مطلوب است که سیستم معادلات بسته باشد و یک دلیل رسمی برای وجود یک راه حل در دسترس باشد.

در اینجا، فقط دستگاه به بسته های عمومی ارائه می شود. بسته های تخصصی معمولاً دارای یک دستگاه ریاضی از پیش تعریف شده هستند و بر اساس یک توصیف ریاضی آماده از مسئله هستند.

ایجاد یک راه حل اتصال پارامترهای متغیر و معیار بهینه سازی

یک راه حل در حال ساخت است، یعنی. یک رابطه عملکردی صریح تعیین می شود: یک معیار بهینه سازی یا یک پارامتر محاسبه شده به عنوان تابعی از پارامترهای متغیر.

این مرحله است که میدان اصلی اعمال نیروها است بسته های کاربردیمدل سازی ریاضی این به این دلیل است که راه حل های تحلیلی برای توصیف ریاضی اشیاء پیچیده معمولاً غیرممکن است. و ساخت راه حل به ساخت یک "حل کننده عددی" کاهش می یابد، که با توجه به مقادیر پارامترهای متغیر، می تواند مقدار معیار بهینه سازی را محاسبه کند.

در موارد نادری از وجود حل تحلیلی مدل، نقش بسته های کاربردی مدل سازی ریاضی به تعریف تابع راه حل کاهش می یابد.

زیرسیستم های خاصی از بسته های کاربردی مدل سازی ریاضی وجود دارد - سیستم های محاسبات تحلیلی (نمادین) - این زیرسیستم ها را می توان برای به حداکثر رساندن تحلیلی راه حل استفاده کرد. جایگزینی روش های عددی با جستجوی یک عبارت کاربردی از راه حل ها. راه حل های تحلیلی تقریباً همیشه "بهتر" از راه حل های عددی هستند، زیرا به ما امکان می دهند الگوهای مورد نظر را بر اساس توابع شناخته شده بیان کنیم، که تا حد زیادی سرعت محاسبات را افزایش می دهد و دقت محاسبات را افزایش می دهد.

بررسی راه حل یک افراط

پیچیدگی بررسی راه‌حل حداکثر اغلب با زمان قابل توجهی که برای محاسبه معیار بهینه‌سازی برای مقادیر داده‌شده پارامترهای متغیر و/یا تعداد زیادی ترکیب قابل قبول از پارامترهای متغیر صرف می‌شود، مرتبط است که منجر به تعداد زیادی محاسبات و باز هم مقدار قابل توجهی زمان.

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

سازنده سطح پارامتریک

موج سوار

بسته بندی سیمولینک

gnuplot ImageMagick

سازنده سطح پارامتریک

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

موج سوار- برنامه ای برای ایجاد سطوح سه بعدی. برنامه های شبیه سازی تجاری برای کارهایی با غلبه "جنبه های منطقی": AutoMod، Process Model، SIMFACTORY و غیره.

بسته بندی سیمولینک، به طور خاص بر روی وظایف مدل سازی شبیه سازی متمرکز شده است.

gnuplot 1 یک برنامه محبوب برای ایجاد نمودارهای دو بعدی و سه بعدی است. gnuplot سیستم فرمان خود را دارد، می تواند به صورت تعاملی (در حالت خط فرمان) کار کند و اسکریپت های خوانده شده از فایل ها را اجرا کند. توسط gnuplot به عنوان یک سیستم خروجی تصویر در بسته های ریاضی مختلف استفاده می شود: GNU Octave، Maxima و بسیاری دیگر. ImageMagick– بسته نرم افزاری کراس پلتفرم برای پردازش دسته ایفایل های گرافیکی پشتیبانی از تعداد زیادی فرمت گرافیکی می تواند با زبان های Perl، C، C++، Python، Ruby، PHP، Pascal، جاوا، در اسکریپت های پوسته یا به تنهایی استفاده شود.

استفاده از کامپوننت ها

اسناد برنامه Mathcad قابلیت درج ماژول ها (کامپوننت

) برنامه های کاربردی دیگر برای گسترش امکانات تجسم، تجزیه و تحلیل داده ها، انجام محاسبات خاص.

جزء Axum Graph برای تجسم داده های پیشرفته طراحی شده است. برای کار با داده های جدولی - مایکروسافت اکسل .

اجزای اکتساب داده، ODBCورودی به شما امکان استفاده از خارجی را می دهد پایگاه های داده.

همچنین ماژول های رایگان (افزونه) برای ادغام Mathcad با برنامه های Excel وجود دارد. اتوکد.

جزء Axum S-PLUS Script برای تجزیه و تحلیل آماری در نظر گرفته شده است.

گسترش قابل توجهی از قابلیت های بسته با ادغام با برنامه فوق العاده قدرتمند MATLAB حاصل می شود.

مجموعه کامل

نسخه های Mathcad ممکن است در محتوای بسته و مجوز کاربر متفاوت باشد. نسخه ها در زمان های مختلف تحویل داده شدند Mathcad حرفه ای, Mathcad Premium, Mathcad Enterprise Edition(در پیکربندی متفاوت است). برای کاربران دانشگاهی، نسخه در نظر گرفته شده است استاد دانشگاهی Mathcad(دارای عملکرد کامل است، اما در مجوز کاربر متفاوت است و چندین برابر هزینه کمتری دارد).

برای مدتی ساده و قابل توجه "کاهش" شده است نسخه های دانشجوییبرنامه ها.

با این حال، در حالی که توانایی های ریاضی MathCad در زمینه جبر کامپیوتری بسیار پایین تر از Maple، Mathematica، MatLab، و حتی کمی Derive است. با این حال، بسیاری از کتاب ها و دوره های آموزشی تحت برنامه MathCad از جمله در روسیه منتشر شده است. امروزه این سیستم به معنای واقعی کلمه به استاندارد بین المللی محاسبات فنی تبدیل شده است و حتی بسیاری از دانش آموزان به MathCad تسلط دارند و از آن استفاده می کنند. برای مقدار کمی از محاسبات، MathCad ایده آل است - در اینجا همه چیز را می توان بسیار سریع و کارآمد انجام داد، و سپس کار را به روش معمول قالب بندی کرد (MathCad فرصت های زیادی را برای قالب بندی نتایج، تا انتشار در اینترنت فراهم می کند). بسته دارای قابلیت‌های مناسب واردات/صادرات داده است. به عنوان مثال، می توانید با صفحات گسترده مایکروسافت اکسل درست در داخل یک سند MathCad کار کنید.

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

به عنوان جایگزین ارزان‌تر، ساده‌تر، اما از نظر ایدئولوژیکی نزدیک به برنامه MathCad، می‌توان به بسته‌هایی مانند YaCaS که قبلاً ذکر شد، سیستم تجاری MuPAD اشاره کرد. http://www.mupad.de/) و برنامه رایگانکیلومتر پلات

بسته ریاضی موپاد

در مورد برنامه MuPAD (شکل 2.6)، این یک سیستم یکپارچه مدرن از محاسبات ریاضی است که با آن می توانید تبدیل های عددی و نمادین را انجام دهید و همچنین نمودارهای دو بعدی و سه بعدی اجسام هندسی را ترسیم کنید. با این حال، از نظر قابلیت های خود، MuPAD به طور قابل توجهی از رقبای ارجمند خود پایین تر است و یک سیستم سطح ابتدایی است که برای آموزش طراحی شده است.

MuPAD Pro 3 در مقایسه با آن است سیستم جدیدجبر کامپیوتری با مجموعه گسترده ای از ابزارها، از جمله الگوریتم های ریاضی برای محاسبات نمادین و عددی، و ابزارهایی برای تجسم، انیمیشن و دستکاری های تعاملی با نمودارهای دو بعدی و سه بعدی و سایر اشیاء ریاضی.

ویژگی های کلیدی Matlab

زبان برنامه نویسی سطح بالا مستقل از پلتفرم با تمرکز بر محاسبات ماتریس و توسعه الگوریتم

محیط تعاملی برای توسعه کد، مدیریت فایل و داده

· توابع جبر خطی، آمار، تحلیل فوریه، حل معادلات دیفرانسیل و غیره.

· ابزار تجسم غنی، گرافیک 2 بعدی و 3 بعدی.

ابزارهای توسعه رابط کاربری داخلی برای ایجاد برنامه های کامل MATLAB

ابزارهای یکپارچه سازی C/C++، وراثت کد، فناوری های ActiveX

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

کتابخانه C Math (کامپایلر MatLab) یک کتابخانه شی است و شامل بیش از 300 رویه پردازش داده در زبان C است. در داخل بسته می توانید از هر دو رویه خود MatLab و رویه های استانداردزبان C، که این ابزار را به ابزاری قدرتمند برای توسعه برنامه‌ها تبدیل می‌کند (با استفاده از کامپایلر C Math، می‌توانید هر رویه MatLab را در برنامه‌های آماده جاسازی کنید).

کتابخانه C Math به شما امکان می دهد از دسته بندی های زیر استفاده کنید:

عملیات با ماتریس؛

مقایسه ماتریس ها؛

حل معادلات خطی;

تجزیه عملگرها و جستجو برای مقادیر ویژه.

پیدا کردن ماتریس معکوس؛

جستجو برای تعیین کننده؛

محاسبه نمایی ماتریس؛

ریاضیات ابتدایی؛

توابع بتا، گاما، erf و توابع بیضوی.

مبانی آمار و تجزیه و تحلیل داده ها؛

جستجو برای ریشه های چند جمله ای

فیلتر کردن، پیچیدگی؛

تبدیل فوریه سریع (FFT)؛

· درون یابی

عملیات با رشته ها

· عملیات ورودی/خروجی فایل و غیره

در عین حال، تمام کتابخانه های MatLab با سرعت بالای محاسبات عددی مشخص می شوند. با این حال، ماتریس ها نه تنها در محاسبات ریاضی مانند حل مسائل جبر خطی و مدل سازی ریاضی، محاسبه سیستم ها و اشیاء استاتیک و دینامیک به طور گسترده استفاده می شوند. آنها مبنایی برای کامپایل و حل خودکار معادلات وضعیت اجسام و سیستم های دینامیکی هستند. جهانی بودن دستگاه حساب دیفرانسیل و انتگرال ماتریس است که به طور قابل توجهی علاقه به سیستم MatLab را افزایش می دهد که بهترین دستاوردها در زمینه را در خود جای داده است. تصمیم سریعوظایف ماتریسی بنابراین، MatLab مدتهاست که از سیستم تخصصی ماتریس فراتر رفته و به یکی از قدرتمندترین سیستمهای یکپارچه جهانی ریاضیات کامپیوتری تبدیل شده است.

بسته ریاضی افرا.

افرا( http://www.maplesoft.com/)

پردازنده Pentium III 650 مگاهرتز;

400 مگابایت فضای دیسک؛

سیستم عامل: Windows NT 4 (SP5)/98/ME/2000/2003 Server/XP Pro/XP Home.

برنامه افرا ( آخرین نسخه 10.02) نوعی پدرسالار در خانواده سیستم های ریاضیات نمادین است و هنوز هم یکی از پیشتازان در میان است. سیستم های جهانیمحاسبات نمادین (شکل 2.15،2.16) محیط فکری مناسبی را برای تحقیقات ریاضی در هر سطحی در اختیار کاربر قرار می دهد و به ویژه در جامعه علمی محبوب است.

توجه داشته باشید که آنالایزر نمادین برنامه Maple قدرتمندترین قسمت این نرم افزار است، بنابراین در تعدادی از بسته های CAE دیگر مانند MathCad و MatLab و همچنین در بسته های Scientific WorkPlace و Math Office for Word قرار گرفت. جهت تهیه نشریات علمی . . بسته Maple توسعه مشترک دانشگاه واترلو (انتاریو، کانادا) و مدرسه عالی فنی (ETHZ، زوریخ، سوئیس) است.

برای فروش آن، یک شرکت ویژه ایجاد شد - واترلو میپل، شرکت، که متأسفانه به دلیل شرح و بسط ریاضی پروژه خود بیشتر از سطح اجرای تجاری آن مشهور شد. در نتیجه، سیستم Maple قبلاً عمدتاً در اختیار دایره باریکی از متخصصان قرار داشت. اکنون این شرکت با موفقیت بیشتری در تجارت و توسعه رابط کاربری کار می کند سیستم های ریاضیتوسط MathSoft, Inc. - سازنده سیستم های بسیار محبوب و انبوه برای محاسبات عددی MathCad که به استاندارد بین المللی محاسبات فنی تبدیل شده است.

Maple یک محیط مناسب برای آزمایش‌های کامپیوتری فراهم می‌کند که در طی آن رویکردهای مختلفی برای مسئله امتحان می‌شود، راه‌حل‌های خاصی تحلیل می‌شوند و در صورت لزوم، قطعات برنامه‌نویسی که نیاز به سرعت خاصی دارند انتخاب می‌شوند.

این بسته به شما امکان می دهد با مشارکت سایر سیستم ها و زبان های برنامه نویسی جهانی سطح بالا، محیط های یکپارچه ایجاد کنید. هنگامی که محاسبات انجام شد و نیاز به رسمی سازی نتایج است، می توانید از ابزارهای این بسته برای تجسم داده ها و آماده سازی تصاویر برای انتشار استفاده کنید. برای تکمیل کار، باقی مانده است که مطالب چاپی (گزارش، مقاله، کتاب) را مستقیماً در محیط Maple تهیه کنید و سپس می توانید به مطالعه بعدی بروید. کار تعاملی است - کاربر دستورات را وارد می کند و بلافاصله نتیجه اجرای آنها را روی صفحه می بیند. در عین حال، بسته Maple به هیچ وجه شبیه یک محیط برنامه نویسی سنتی نیست، جایی که نیاز به رسمی سازی دقیق همه متغیرها و اقدامات با آنها است. در اینجا از انتخاب انواع متغیرهای مناسب به طور خودکار اطمینان حاصل می شود و صحت عملیات بررسی می شود، به طوری که در حالت کلی نیازی به شرح متغیرها و رسمی سازی دقیق علامت گذاری نیست.

بسته Maple شامل یک هسته (روش‌های نوشته شده به زبان C و بهینه‌سازی شده)، یک کتابخانه نوشته شده به زبان Maple، و یک front-end غنی است. هسته اکثر عملیات های اساسی را انجام می دهد و کتابخانه حاوی دستورات زیادی است - رویه هایی که در حالت تفسیر اجرا می شوند.

رابط Maple بر اساس مفهوم یک کاربرگ یا سند حاوی خطوط ورودی/خروجی و متن و همچنین گرافیک است (شکل 2.17).

بسته در حالت مفسر پردازش می شود. در خط ورودی، کاربر دستوری را مشخص می کند، کلید Enter را فشار می دهد و نتیجه را دریافت می کند - یک خط (یا خطوط) خروجی یا پیامی در مورد دستوری که اشتباه وارد شده است. در اینجا از شما خواسته می شود که وارد شوید تیم جدیدو غیره.

محاسبات در Maple

سیستم Maple را می توان در ابتدایی ترین سطح از قابلیت های خود استفاده کرد - به عنوان یک ماشین حساب بسیار قدرتمند برای محاسبه فرمول های داده شده، اما مزیت اصلی آن توانایی انجام عملیات حسابی به شکل نمادین است، یعنی روشی که شخص آن را انجام می دهد. هنگام کار با کسرها و ریشه ها، برنامه در طول محاسبات آنها را به شکل اعشاری کاهش نمی دهد، بلکه کاهش ها و تبدیل های لازم را به یک ستون انجام می دهد که به شما امکان می دهد از خطاهای گرد کردن جلوگیری کنید.

برای کار با معادل های اعشاری، Maple دارد تیم ویژه A که مقدار عبارت را در قالب ممیز شناور تقریبی می کند. سیستم Maple مجموع و محصولات محدود و نامتناهی را محاسبه می کند، عملیات محاسباتی را با اعداد مختلط انجام می دهد، به راحتی یک عدد مختلط را در مختصات قطبی به عدد تبدیل می کند، مقادیر عددی توابع ابتدایی را محاسبه می کند و همچنین بسیاری از توابع ویژه و ثابت های ریاضی را می شناسد. مانند «ه» و «پی»). Maple از صدها تابع و اعداد خاص که در بسیاری از زمینه‌های ریاضیات، علوم و فناوری یافت می‌شوند، پشتیبانی می‌کند.

برنامه نویسی در Maple

سیستم Maple از نسل چهارم زبان رویه ای (4GL) استفاده می کند. این زبان به طور خاص برای توسعه سریع روال های ریاضی و برنامه های کاربردی سفارشی طراحی شده است. نحو این زبان مشابه نحو زبان های جهانی سطح بالا است: C، Fortran، Basic و Pascal.

Maple می تواند کدی تولید کند که با زبان های برنامه نویسی مانند Fortran یا C و با زبان تایپ LaTeX که در دنیای علمی بسیار محبوب است و برای انتشار استفاده می شود، سازگار باشد. یکی از مزایای این ملک امکان دسترسی به تخصصی می باشد برنامه های عددیبرای تسریع در حل مشکلات پیچیده به عنوان مثال، با استفاده از سیستم Maple، می توانید یک مدل ریاضی خاص را توسعه دهید و سپس از آن برای تولید کد C مربوط به این مدل استفاده کنید. زبان 4GL که مخصوصاً برای توسعه برنامه های ریاضی بهینه شده است، به شما امکان می دهد روند توسعه را کوتاه کنید و عناصر Maplets یا اسناد Maple با اجزای گرافیکی یکپارچه به شما کمک می کنند رابط کاربری را سفارشی کنید.

در همان زمان، در محیط Maple، شما همچنین می توانید اسناد را برای برنامه آماده کنید، زیرا ابزارهای بسته به شما امکان می دهند اسناد فنی حرفه ای حاوی متن، محاسبات ریاضی تعاملی، گرافیک، نقاشی و حتی صدا ایجاد کنید. همچنین می‌توانید اسناد و ارائه‌های تعاملی را با افزودن دکمه‌ها، لغزنده‌ها و سایر مؤلفه‌ها ایجاد کنید و در نهایت اسناد را در وب منتشر کنید و محاسبات تعاملی را در وب با استفاده از سرور MapleNet اجرا کنید.

پکیج Mathematica

ریاضیات ( http://www.wolfram.com/)

کمترین سیستم مورد نیاز:

پردازنده Pentium II یا بالاتر؛

فضای دیسک 400-550 مگابایت؛

سیستم های عامل: Windows 98/Me/NT 4.0/2000/2003 Server/2003x64/XP/XP x64.

Wolfram Research، Inc. که سیستم ریاضیات کامپیوتری Mathematica را توسعه داده است (شکل 2.27،2.28) به حق قدیمی ترین و قوی ترین بازیکن در این زمینه در نظر گرفته می شود. بسته Mathematica (نسخه فعلی 5.2) به طور گسترده در محاسبات در تحقیقات علمی مدرن استفاده می شود و به طور گسترده ای در محیط علمی و آموزشی شناخته شده است. حتی می توانید بگویید که Mathematica دارای افزونگی عملکردی قابل توجهی است (به ویژه در آنجا حتی فرصتی برای سنتز صدا وجود دارد).

Mathematica یک هسته محاسباتی عددی و نمادین، یک سیستم گرافیکی، یک زبان برنامه نویسی، یک سیستم مستندسازی و توانایی تعامل با سایر برنامه ها را در یک کل واحد ترکیب می کند. برای کل محیط Mathematica، هیچ رقیب واحدی وجود ندارد. به طور کلی، رقبا در گروه‌های زیر قرار می‌گیرند: بسته‌های عددی، سیستم‌های جبر کامپیوتری، برنامه‌های کاربردی تایپ و مستندسازی، سیستم‌های گرافیکی و آماری، زبان‌های برنامه‌نویسی سنتی (ابزار توسعه رابط)، و صفحات گسترده. از زمانی که Mathematica برای اولین بار معرفی شد، سایر بسته های ریاضی دامنه قابلیت های خود را بسیار گسترش داده اند، که در اصل برای حل مسائلی طراحی شده اند که فقط در یک یا دو دسته از دسته های بالا قرار می گیرند.
با این حال، بعید است که این سیستم ریاضی قدرتمند، که ادعا می کند رهبر جهان است، مورد نیاز یک منشی یا حتی مدیر یک شرکت تجاری کوچک باشد، البته به کاربران عادی نیز اشاره نمی شود. اما، بدون شک، هر آزمایشگاه علمی جدی یا گروه دانشگاهی باید برنامه مشابهی داشته باشد، اگر به طور جدی علاقه مند به خودکارسازی انجام محاسبات ریاضی با هر درجه پیچیدگی باشد. علیرغم تمرکز آنها بر روی محاسبات جدی ریاضی، یادگیری سیستم های کلاس Mathematica آسان است و می تواند توسط گروه نسبتاً گسترده ای از کاربران - دانشجویان و معلمان دانشگاه، مهندسان، دانشجویان فارغ التحصیل، دانشمندان و حتی دانش آموزان کلاس های ریاضی در آموزش عمومی و ویژه استفاده شود. مدارس همه آنها در پیدا خواهند شد سیستم مشابهبرنامه های کاربردی مفید متعدد

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

توجه داشته باشید که در توسعه نسخه های مختلف سیستم Mathematica، همراه با شرکت مادر Wolfram Research, Inc.، شرکت های دیگر و صدها متخصص بسیار ماهر از جمله ریاضیدانان و برنامه نویسان مشارکت داشتند. در میان آنها نمایندگان مدرسه ریاضی روسیه هستند که در خارج از کشور مورد احترام و تقاضا هستند. سیستم Mathematica یکی از بزرگترین سیستم های نرم افزاری است و کارآمدترین الگوریتم های محاسباتی را پیاده سازی می کند. از جمله آنها، به عنوان مثال، مکانیسم زمینه ها است که ظاهر عوارض جانبی در برنامه ها را حذف می کند.

Mathematica در حال حاضر به عنوان پیشرو در جهان در نظر گرفته می شود سیستم های کامپیوتریریاضیات نمادین برای رایانه شخصی، نه تنها توانایی انجام محاسبات عددی پیچیده با خروجی نتایج آنها را در پیچیده ترین شکل گرافیکی، بلکه همچنین انجام تبدیل ها و محاسبات تحلیلی بسیار پر زحمت را فراهم می کند.

Mathematica چندین ویژگی اصلی دارد و برای حل طیف وسیعی از مسائل طراحی شده است. در اینجا چند کلاس از مسائل حل شده با Mathematica آورده شده است:

1. کار با محاسبات پیچیده نمادین با استفاده از صدها هزار یا میلیون ها عضو.
بارگذاری، تجزیه و تحلیل و تجسم داده ها.

2. حل معادلات معمولی و دیفرانسیل و همچنین مسائل کمینه سازی عددی یا نمادین.

3. مدل سازی و شبیه سازی عددی، سیستم های کنترل ساختمان، از ساده ترین ها تا برخورد کهکشان ها، خسارات مالی، سیستم های پیچیده بیولوژیکی، واکنش های شیمیایی، مطالعه تاثیر بر محیط و میدان های مغناطیسی در شتاب دهنده های ذرات.

4. توسعه آسان و سریع برنامه (RAD) برای شرکت های فناوری و موسسات مالی.

5. گزارش ها و اسناد حرفه ای، تعاملی، فنی برای توزیع ایجاد کنید در قالب الکترونیکییا روی کاغذ

6. مشروح مستندات فنیبه عنوان مثال، برای ثبت اختراعات ایالات متحده.

7. برگزاری سخنرانی ها و سمینارهای ویژه.

8. مفاهیم ریاضی یا علوم را برای دانش آموزان از کالج تا تحصیلات تکمیلی به تصویر بکشید.

نسخه های سیستم تحت ویندوز دارای یک رابط کاربری مدرن هستند و به شما امکان می دهند اسناد را در قالب نوت بوک تهیه کنید ( نوت بوک ها). آنها داده های منبع، توصیف الگوریتم ها برای حل مسائل، برنامه ها و نتایج راه حل را در اشکال مختلف (فرمول های ریاضی، اعداد، بردارها، ماتریس ها، جداول و نمودارها) ترکیب می کنند.

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

از همان ابتدا، توجه زیادی به گرافیک، از جمله موارد پویا، و حتی قابلیت های چند رسانه ای - پخش پویا پویانمایی و سنتز صدا معطوف شد. مجموعه ای از توابع و گزینه های گرافیکی که عمل آنها را تغییر می دهد بسیار گسترده است. گرافیک همیشه نقطه قوت نسخه‌های مختلف Mathematica بوده است و آنها را در بین سیستم‌های ریاضی کامپیوتری پیشتاز کرده است.

در نتیجه، Mathematica به سرعت در بازار سیستم های ریاضی نمادین جایگاه پیشرو را به دست آورد. به ویژه جذاب هستند گسترده است قابلیت های گرافیکیسیستم ها و پیاده سازی رابط نوع Notebook. در عین حال، این سیستم حتی در هنگام حل وظایف نمادین، ارتباط پویا بین سلول های اسناد را به سبک صفحات گسترده فراهم می کرد که به طور اساسی و مطلوب آن را از سایر سیستم های مشابه متمایز می کرد.

به هر حال ، مکان مرکزی در سیستم های کلاس Mathematica توسط هسته عملیات ریاضی مستقل از ماشین اشغال شده است که به شما امکان می دهد سیستم را به سیستم عامل های مختلف رایانه منتقل کنید. برای انتقال سیستم به پلتفرم کامپیوتری دیگر، از پردازنده رابط نرم افزاری Front End استفاده می شود. این اوست که تعیین می کند سیستم چه نوع رابط کاربری دارد ، یعنی پردازنده های رابط سیستم های Mathematica برای سایر سیستم عامل ها ممکن است تفاوت های ظریف خود را داشته باشند. هسته به اندازه کافی فشرده ساخته شده است تا بتواند هر تابعی را از آن خیلی سریع فراخوانی کند. برای گسترش مجموعه توابع، یک کتابخانه (کتابخانه) و مجموعه ای از بسته های افزودنی (بسته های افزودنی) استفاده می شود. بسته های الحاقی به زبان برنامه نویسی سیستم خود Mathematica تهیه می شوند و ابزار اصلی برای توسعه قابلیت های سیستم و تطبیق آنها با حل کلاس های خاصی از مشکلات کاربر هستند. علاوه بر این، سیستم ها دارای الکترونیک داخلی هستند سیستم کمکی- راهنما که حاوی کتاب های الکترونیکی با مثال های واقعی است.

بنابراین، Mathematica از یک سو، یک سیستم برنامه نویسی معمولی است که مبتنی بر یکی از قدرتمندترین زبان های برنامه نویسی تابعی مسئله محور سطح بالا است که برای حل مسائل مختلف (از جمله مسائل ریاضی) طراحی شده است و از طرف دیگر، یک سیستم تعاملی است. سیستم برای حل بیشتر مشکلات ریاضیبه صورت تعاملی بدون برنامه نویسی سنتی بنابراین، Mathematica به عنوان یک سیستم برنامه نویسی، تمامی امکانات را برای توسعه و ایجاد تقریباً هر ساختار کنترلی، سازماندهی I/O، کار با توابع سیستم و سرویس دهی به هر دستگاه جانبی دارد و با کمک بسته های الحاقی (Add-ons) تبدیل می شود. سازگاری با نیازهای هر کاربر امکان پذیر است (اگرچه یک کاربر معمولی ممکن است به این ابزارهای برنامه نویسی نیاز نداشته باشد - او با توابع ریاضی داخلی سیستم که حتی ریاضیدانان با تجربه را با فراوانی و تنوع خود شگفت زده می کند کاملاً مدیریت خواهد کرد).

از معایب سیستم Mathematica می توان به زبان برنامه نویسی بسیار غیر معمول اشاره کرد که با این حال، با یک سیستم راهنمای دقیق تسهیل می شود.

FlatGraph برنامه ای برای ساخت نمودارهای توابع (عادی و پارامتریک) با ویژگی های پیشرفته است (شکل 2.33). تمایز هر ترتیب (با ساده سازی). ساخت مماس بر گراف. این برنامه هم برای کاربران بی تجربه و هم برای کاربران حرفه ای طراحی شده است، زیرا یک رابط بصری را با ویژگی های حرفه ای ترکیب می کند.

FlatGraph به شما امکان می دهد:

یک یا چند عبارت کاربردی با هر پیچیدگی را برای نمایش و (یا) تمایز آنها وارد کنید.

انجام تمایز نمادین برای مرتبه مشخص مشتق، و همچنین انجام ساده سازی مشتق حاصل؛

کاوش تغییر "زنده" پارامترهای مختلف عملکرد با نمایش همزمان نمودارهای جدید، که به شما امکان می دهد تأثیر پارامترهای تابع را بر ظاهر آنها تعیین کنید.

از مقیاس بندی خودکار یا دستی نمودارهای تابع برای مقیاس های خطی استفاده کنید.

تنظیم و نمایش توابع پارامتریک گرافیکی، نمایش، به عنوان مثال، بیضی، کاردیوئید، lemniscates برنولی و دیگر نمودارهای مشابه (که در آن آبسیسا و مختصات به یک پارامتر "t" بستگی دارد).

حل معادلات، سیستم های معادلات و نابرابری ها به صورت گرافیکی.

مماس بر نمودار تابع را در نقطه x0 (تعیین شده توسط کاربر) دریافت و نمایش دهید.

FlatGraph یک و ساده دارد رابط شفاف، با دقیق ترین مستندات در مورد استفاده و نمونه کار ارائه شده است.

بسته های ریاضی مدل سازی. ویژگی ها و وظایف اصلی حل شده توسط بسته ها را فهرست کنید.

بسته های ریاضی هستند بخشی جدایی ناپذیراز دنیای سیستم های CAE (مهندسی به کمک کامپیوتر) در حال حاضر اصل ساخت مدل در بسته های ریاضی به کار می رود و نه "هنر برنامه نویسی" سنتی. یعنی کاربر وظیفه ای را تعیین می کند و سیستم خود روش ها و الگوریتم هایی را برای حل آن پیدا می کند. بسته های ریاضی مدرن را می توان هم به عنوان یک ماشین حساب معمولی و هم به عنوان وسیله ای برای ساده سازی عبارات هنگام حل هر مشکلی و همچنین به عنوان یک گرافیک یا حتی تولید کننده صدا استفاده کرد! در حال حاضر، تقریباً تمام برنامه های ریاضی مدرن دارای توابع داخلی برای محاسبات نمادین هستند. با این حال، Maple، MathCad، Mathematica و MatLab معروف‌ترین و مناسب‌ترین‌ها برای محاسبات نمادین ریاضی هستند. مدل سازی ریاضی - ایجاد یک توصیف ریاضی از یک شی واقعی و مطالعه این توصیف.

در ابتدا، هر گونه محاسبات روی مدل ها به صورت دستی انجام می شد. با تکامل دستگاه های محاسباتی، این دستگاه ها برای سرعت بخشیدن به محاسبات مورد استفاده قرار گرفتند.

رایانه امکان استفاده از آن را به عنوان وسیله ای برای خودکارسازی کار علمی فراهم می کند و از برنامه های تخصصی مختلف برای حل مسائل پیچیده محاسباتی استفاده می شود.

در عین حال، در کار علمی طیف وسیعی از مسائل ریاضی ساده وجود دارد که برای آنها می توان از ابزارهای حرفه ای جهانی استفاده کرد.

چنین کارهای ساده ای شامل موارد زیر است:

تهیه اسناد علمی و فنی حاوی متن و فرمول هایی که به شکلی آشنا برای متخصصان نوشته شده است.

محاسبه نتایج عملیات ریاضی شامل ثابت های عددی، متغیرها و کمیت های فیزیکی بعدی.

عملیات با بردارها و ماتریس ها؛

حل معادلات و سیستم معادلات (نابرابری)؛

محاسبات آماری و تجزیه و تحلیل داده ها؛

ساخت نمودارهای دو بعدی و سه بعدی.

تبدیلات یکسان عبارات (از جمله ساده سازی)، تحلیلی

انتخاب نرم افزار برای حل موفقیت آمیز مسائل دانشجویی و پژوهشی در زمینه علوم ریاضی و طبیعی موضوع بسیار مهمی است. در حال حاضر، برنامه های ریاضی تجاری قدرتمند منبع بسته وجود دارد: Matlab، Maple، Mathcad، Mathematica. با این حال، تعداد زیادی برنامه آزادانه توزیع شده، هم منبع باز و هم منبع بسته وجود دارد. توزیع های رایگان شامل برنامه هایی است که تحت مجوز GNU GPL و تغییرات مختلف آن منتشر می شوند. این توافقنامه مجوز باز اجازه راه اندازی برنامه، اصلاح آن، توزیع رایگان کپی های منبع و کد اجرایی را می دهد.

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

علیرغم تمرکز آنها بر محاسبات جدی ریاضی، سیستم های کلاس ریاضیاتیادگیری آسان است و می تواند توسط دسته نسبتاً گسترده ای از کاربران - دانش آموزان و معلمان دانشگاه ها، مهندسان، دانشجویان فارغ التحصیل، دانشمندان و حتی دانش آموزان کلاس های ریاضی در آموزش عمومی و مدارس خاص استفاده شود. همه آنها در چنین سیستمی کاربردهای مفید متعددی پیدا خواهند کرد.

گسترده ترین عملکردهای برنامه رابط آن را بیش از حد بارگذاری نمی کند و محاسبات را کند نمی کند. ریاضیاتبه طور مداوم سرعت بالای تبدیل نمادین و محاسبات عددی را نشان می دهد. سیستم ریاضیاتامروزه به عنوان رهبر جهانی در بین سیستم های کامپیوتری ریاضیات نمادین برای رایانه شخصی در نظر گرفته می شود که نه تنها توانایی انجام محاسبات عددی پیچیده با خروجی نتایج آنها را در پیچیده ترین شکل گرافیکی فراهم می کند، بلکه همچنین امکان انجام تجزیه و تحلیل های زمان بر را نیز فراهم می کند. تبدیل ها و محاسبات نسخه های سیستم تحت ویندوز دارای یک رابط کاربری مدرن هستند و به شما امکان می دهند اسناد را در قالب نوت بوک (نوت بوک) تهیه کنید. آنها داده های منبع، توصیف الگوریتم ها برای حل مسائل، برنامه ها و نتایج راه حل را در اشکال مختلف (فرمول های ریاضی، اعداد، بردارها، ماتریس ها، جداول و نمودارها) ترکیب می کنند.

از همان ابتدا، توجه زیادی به گرافیک، از جمله موارد پویا، و حتی قابلیت های چند رسانه ای - پخش پویا پویانمایی و سنتز صدا معطوف شد. مجموعه ای از توابع و گزینه های گرافیکی که عمل آنها را تغییر می دهد بسیار گسترده است. گرافیک همیشه نقطه قوت نسخه‌های مختلف Mathematica بوده است و آنها را در بین سیستم‌های ریاضی کامپیوتری پیشتاز کرده است.

اتفاقاً در سیستم های طبقاتی مرکزی است ریاضیاتهسته عملیات ریاضی مستقل از ماشین را اشغال می کند که به شما امکان می دهد سیستم را به سیستم عامل های مختلف رایانه منتقل کنید.

به این ترتیب، ریاضیات-از یک طرف یک سیستم برنامه نویسی معمولی مبتنی بر یکی از قدرتمندترین زبان های برنامه نویسی تابعی مسئله محور سطح بالا است که برای حل مسائل مختلف (از جمله مسائل ریاضی) طراحی شده است و از طرف دیگر یک سیستم تعاملی برای حل اکثر مسائل ریاضی در حالت تعاملی بدون برنامه نویسی سنتی. بعلاوه، ریاضیات،به عنوان یک سیستم برنامه نویسی، تمام امکانات برای توسعه و ایجاد تقریباً هر ساختار کنترلی، سازماندهی ورودی-خروجی، کار با توابع سیستم و سرویس دهی به هر دستگاه جانبی را دارد. در اینجا، با کمک بسته های افزونه ( افزونه ها) انطباق با نیازهای هر کاربری ممکن می شود (اگرچه کاربر معمولی ممکن است به این ابزارهای برنامه نویسی نیاز نداشته باشد. با توابع ریاضی داخلی سیستم که حتی ریاضیدانان با تجربه را با فراوانی و تنوع خود شگفت زده می کند، کاملاً مدیریت خواهد شد.

به معایب سیستم ریاضیاتفقط یک زبان برنامه نویسی بسیار غیرمعمول باید نسبت داده شود که جذابیت آن، با این حال، توسط یک سیستم راهنمای دقیق تسهیل می شود.

به عنوان جایگزین های ساده تر، اما از نظر ایدئولوژیکی نزدیک به برنامه ریاضیاتشما می توانید بسته هایی مانند ماکسیما.

سیستم ماکسیما این یک پروژه متن باز غیر تجاری است. در یک برنامه ماکسیمابرای کار ریاضی از زبانی مشابه زبان داخل بسته استفاده می شود ریاضیاتو رابط گرافیکی نیز بر اساس همان اصول ساخته شده است.

علاوه بر این، در حال حاضر سیستم ماکسیمایک رابط گرافیکی قدرتمندتر، کارآمدتر و دوستانه‌تر بین پلتفرمی وجود دارد که به آن می‌گویند wxmaxima.

SCM افرا این یک نوع پدرسالار در خانواده سیستم های ریاضیات نمادین است و هنوز هم یکی از پیشروها در بین سیستم های جهانی محاسبات نمادین است. این یک محیط فکری مناسب را برای تحقیقات ریاضی در هر سطحی در اختیار کاربر قرار می دهد و به ویژه در جامعه علمی محبوب است.

بسته افرا این توسعه مشترک دانشگاه واترلو (انتاریو، کانادا) و مدرسه عالی فنی (ETHZ، زوریخ، سوئیس) است.

افرا یک محیط مناسب برای آزمایش های کامپیوتری فراهم می کند که در طی آن رویکردهای مختلفی برای مسئله امتحان می شود، راه حل های خاص تجزیه و تحلیل می شوند و در صورت لزوم، قطعات برنامه نویسی که نیاز به سرعت خاصی دارند انتخاب می شوند. این بسته به شما امکان می دهد با مشارکت سایر سیستم ها و زبان های برنامه نویسی جهانی سطح بالا، محیط های یکپارچه ایجاد کنید. هنگامی که محاسبات انجام شد و نیاز به رسمی سازی نتایج است، می توانید از ابزارهای این بسته برای تجسم داده ها و آماده سازی تصاویر برای انتشار استفاده کنید. برای تکمیل کار، باقی مانده است که مطالب چاپی (گزارش، مقاله، کتاب) را مستقیماً در محیط تهیه کنید افرا، و سپس می توانید به مطالعه بعدی بروید. کار تعاملی است کاربر دستورات را وارد می کند و بلافاصله نتیجه اجرای آنها را روی صفحه می بیند. در همان زمان، بسته افرااین به هیچ وجه شبیه یک محیط برنامه نویسی سنتی نیست، که در آن به رسمی سازی دقیق همه متغیرها و اقدامات با آنها نیاز است. در اینجا از انتخاب انواع متغیرهای مناسب به طور خودکار اطمینان حاصل می شود و صحت عملیات بررسی می شود، به طوری که در حالت کلی نیازی به شرح متغیرها و رسمی سازی دقیق علامت گذاری نیست.

بسته افراشامل یک هسته (روش های نوشته شده به زبان از جانبو به خوبی بهینه شده است)، یک کتابخانه نوشته شده در افرازبان، و یک رابط خارجی توسعه یافته است. هسته اکثر عملیات های اساسی را انجام می دهد و کتابخانه حاوی دستورات زیادی است رویه های انجام شده در حالت تفسیر

رابط افرابر اساس مفهوم یک کاربرگ یا سند حاوی خطوط و متن I/O و همچنین گرافیک. بسته در حالت مفسر پردازش می شود. در خط ورودی، کاربر دستور را تنظیم می کند، کلید Enter را فشار می دهد و نتیجه را می گیرد خط (یا خطوط) خروجی یا پیامی در مورد دستوری که به اشتباه وارد شده است. بلافاصله دعوتنامه برای ورود به یک فرمان جدید صادر می شود و غیره.

پنجره های کاری (صفحات) سیستم Maple را می توان یا به عنوان محیط های تعاملی برای حل مسائل و یا به عنوان سیستمی برای تهیه اسناد فنی استفاده کرد. گروه‌های اجرایی و صفحات گسترده تعامل کاربر با موتور Maple را تسهیل می‌کنند و به عنوان ابزار اصلی برای ارسال درخواست‌های اجرایی به سیستم Maple عمل می‌کنند. وظایف مخصوصو خروجی نتایج هر دوی این نوع ابزارهای اولیه اجازه ورود دستورات Maple را می دهند.

کاربرگ ها را می توان به صورت سلسله مراتبی در بخش ها و زیربخش ها سازماندهی کرد. بخش ها و زیربخش ها را می توان گسترش داد یا جمع کرد. سیستم Maple، مانند سایر ویرایشگرهای متن، از گزینه نشانک پشتیبانی می کند.

سیستم افرامی تواند در ابتدایی ترین سطح از قابلیت های خود استفاده شود به عنوان یک ماشین حساب بسیار قدرتمند برای محاسبات با استفاده از فرمول های داده شده، اما مزیت اصلی آن توانایی انجام عملیات حسابی به صورت نمادین است، یعنی روشی که شخص آن را انجام می دهد. هنگام کار با کسرها و ریشه ها، برنامه در طول محاسبات آنها را به شکل اعشاری کاهش نمی دهد، بلکه کاهش ها و تبدیل های لازم را به یک ستون انجام می دهد که به شما امکان می دهد از خطاهای گرد کردن جلوگیری کنید. برای کار با معادل های اعشاری در سیستم افرایک دستور خاص وجود دارد که مقدار یک عبارت را در قالب ممیز شناور تقریبی می کند. سیستم افرامحاسبه مجموع و محصورات متناهی و نامتناهی، انجام عملیات محاسباتی با اعداد مختلط، تبدیل یک عدد مختلط به عدد در مختصات قطبی، محاسبه مقادیر عددی توابع ابتدایی و همچنین دانستن بسیاری از توابع خاص و ثابت های ریاضی (مانند e. و "pi"). افرااز صدها توابع و اعداد خاص که در بسیاری از زمینه های ریاضیات، علوم و فناوری یافت می شوند، پشتیبانی می کند.

سیستم افراراه های مختلفی برای نمایش، کاهش و تبدیل عبارات ارائه می دهد، مانند عملیاتی مانند ساده سازی و فاکتورگیری عبارات جبری و آوردن آنها به اشکال مختلف. بنابراین می توان از Maple برای حل معادلات و سیستم ها استفاده کرد.این برنامه می تواند برای حل مسائل حساب دیفرانسیل و انتگرال، محاسبه حدود، بسط در سری، جمع سری، ضرب، تبدیل های انتگرالی (مانند تبدیل لاپلاس، Z-) استفاده شود. تبدیل، تبدیل ملین یا فوریه)، و همچنین برای مطالعه توابع پیوسته یا تکه ای پیوسته.

افرامی تواند حدود توابع را محاسبه کند، اعم از محدود و تمایل به بی نهایت، و همچنین عدم قطعیت ها را در محدوده تشخیص می دهد. در این سیستم می توانید بسیاری از معادلات دیفرانسیل معمولی و همچنین معادلات دیفرانسیل جزئی از جمله مسائل با شرایط اولیه و مسائل با شرایط مرزی را حل کنید.

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

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

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

افرااولین بسته جهانی ریاضی است که از استاندارد MathML 2.0 پشتیبانی کامل می کند، که هم ظاهر و هم احساس ریاضی در وب را کنترل می کند. این ویژگی انحصاری نسخه فعلی MathML را به ابزاری برای ریاضیات اینترنتی تبدیل می کند و همچنین سطح جدیدی از سازگاری چند کاربره را تنظیم می کند. پروتکل TCP/IP دسترسی پویا به اطلاعات منابع اینترنتی دیگر، مانند داده‌ها برای تجزیه و تحلیل مالی بلادرنگ یا داده‌های آب و هوا را فراهم می‌کند.

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

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

به کاستی های سیستم Mapleفقط می توان به او مقداری "تفکر" نسبت داد، و نه همیشه قابل توجیه، و همچنین هزینه بسیار بالای این برنامه

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

تعداد زیادی وجود دارد جایگزینبسته ها . به عنوان جایگزین های ساده تر، اما از نظر ایدئولوژیکی نزدیک به برنامه افرابسته هایی مانند استخراج ,محل کار علمی به لطف سیستم جبر رایانه ای داخلی، می توانید محاسبات را مستقیماً در سند انجام دهید. البته این برنامه امکانات مشابه Maple را ندارد اما کم حجم و کاربری آسانی دارد.

یکی دیگر از سیستم های ریاضی تجاری کوچک استخراج (نسخه فعلی 6.1) مدت زیادی است که وجود داشته است، اما، البته، نمی توان آن را به عنوان یک جایگزین کامل برای Maple در نظر گرفت، اگرچه به دلیل عدم تقاضای منابع سخت افزاری رایانه شخصی همچنان جذاب است. علاوه بر این، هنگام حل مسائل با پیچیدگی متوسط، حتی عملکرد بالاتر و قابلیت اطمینان بیشتری از راه حل را نسبت به نسخه های اولیه سیستم های Maple و Mathematica نشان می دهد. با این حال، برای سیستم Derive دشوار است که به طور جدی با این سیستم ها رقابت کند - هم از نظر فراوانی توابع و قوانین برای تحولات تحلیلی، و هم از نظر قابلیت های گرافیک کامپیوتری و از نظر راحتی رابط کاربری. در حال حاضر استخراجبیشتر یک سیستم آموزش جبر کامپیوتری سطح مقدماتی است.

و اگرچه آخرین نسخه Derive 6 برای ویندوز در حال حاضر دارای یک رابط کاربر پسند مدرن است، اما از بسیاری جهات از رابط کاربری تصفیه شده رقبای محترم پایین تر است. و از نظر امکان تجسم گرافیکی نتایج محاسبات، Derive به طور کلی از رقبای خود فاصله زیادی دارد.

SCM متلب به سطح متوسط ​​محصولات طراحی شده برای ریاضیات نمادین اشاره دارد، اما برای استفاده گسترده در زمینه CAE طراحی شده است (یعنی در سایر زمینه ها قوی است). متلب - این یکی از قدیمی‌ترین سیستم‌هایی است که با دقت طراحی شده و با زمان آزمایش شده برای خودکار کردن محاسبات ریاضی، بر اساس نمایش گسترده و کاربرد عملیات ماتریس ساخته شده است. این در نام سیستم منعکس شده است - آزمایشگاه ماتریکس یعنی آزمایشگاه ماتریس. با این حال، نحو زبان برنامه نویسی سیستم به قدری دقیق در نظر گرفته شده است که این جهت گیری تقریباً توسط آن دسته از کاربرانی که مستقیماً به محاسبات ماتریس علاقه ندارند احساس نمی شود.

علیرغم اینکه در ابتدا متلببه طور انحصاری برای محاسبات در نظر گرفته شده بود، در فرآیند تکامل (و اکنون نسخه 12 قبلا منتشر شده است)، علاوه بر ابزارهای محاسباتی عالی، یک موتور تبدیل نمادین از Waterloo Maple برای MatLab خریداری شد و کتابخانه هایی ظاهر شدند که توابع منحصر به فرد ریاضی را ارائه می دهند. بسته ها در MatLab

در سیستم متلبهمچنین فرصت های زیادی برای برنامه نویسی وجود دارد. کتابخانه C ریاضی او (کامپایلر MatLab) است هدف - شیو شامل بیش از 300 رویه پردازش داده در زبان C است. در داخل بسته می توانید هم از رویه های خود MatLab و هم از رویه های استاندارد زبان C استفاده کنید که این ابزار را به کمک قدرتمندی در توسعه برنامه ها (با استفاده از کامپایلر C Math می کند). ، می توانید هر رویه MatLab را در برنامه های آماده جاسازی کنید).

کتابخانه C Math به شما امکان می دهد از دسته بندی های زیر استفاده کنید:

    عملیات با ماتریس؛

    مقایسه ماتریس ها؛

    حل معادلات خطی;

    تجزیه عملگرها و جستجو برای مقادیر ویژه.

    پیدا کردن ماتریس معکوس؛

    جستجو برای تعیین کننده؛

    محاسبه نمایی ماتریس؛

    ریاضیات ابتدایی؛

    توابع بتا، گاما، erf و توابع بیضوی.

    مبانی آمار و تجزیه و تحلیل داده ها؛

    جستجو برای ریشه های چند جمله ای

    فیلتر کردن، پیچیدگی؛

    تبدیل فوریه سریع (FFT)؛

    درون یابی;

    عملیات رشته؛

    عملیات ورودی/خروجی فایل و غیره

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

برای تجسم سیستم شبیه سازی متلبکتابخانه دارد جعبه ابزار پردازش تصویر، که طیف گسترده ای از توابع را ارائه می دهد که از تجسم محاسبات در حال انجام مستقیماً از محیط MatLab، بزرگنمایی و تجزیه و تحلیل و همچنین توانایی ساخت الگوریتم های پردازش تصویر پشتیبانی می کند. بهبود روش های کتابخانه گرافیکی در ارتباط با یک زبان برنامه نویسی متلبارائه یک سیستم باز و قابل توسعه که می تواند برای ایجاد برنامه های کاربردی سفارشی مناسب برای پردازش گرافیکی استفاده شود.

ابزارهای اصلی کتابخانه Tollbox پردازش تصویر:

    ساخت فیلتر، فیلتر کردن و بازیابی تصاویر.

    بزرگ شدن تصویر؛

    تجزیه و تحلیل و پردازش آماری تصاویر؛

    انتخاب مناطق مورد علاقه، عملیات هندسی و مورفولوژیکی؛

    دستکاری رنگ؛

    تحولات دو بعدی؛

    واحد پردازش؛

    ابزار تجسم؛

    نوشتن/خواندن فایل های گرافیکی

بنابراین سیستم متلبمی توان برای پردازش تصویر با ساخت الگوریتم های خود استفاده کرد که با آرایه های گرافیکی مانند ماتریس های داده کار می کند. چون زبان متلببرای کار با ماتریس ها بهینه شده است، که منجر به سهولت استفاده، سرعت بالا و مقرون به صرفه بودن عملیات روی تصاویر می شود.

برنامه متلبمی تواند برای بازیابی تصاویر خراب، تشخیص الگوی اشیاء در تصاویر، یا توسعه هر یک از الگوریتم های پردازش تصویر اصلی خود استفاده شود. کتابخانه Image Processing Tollbox توسعه الگوریتم های با دقت بالا را ساده می کند زیرا هر یک از توابع موجود در این کتابخانه برای حداکثر سرعت، کارایی و قابلیت اطمینان محاسباتی بهینه شده است. علاوه بر این، کتابخانه ابزارهای متعددی را برای ایجاد راه‌حل‌های خود و اجرای برنامه‌های پیچیده پردازش گرافیکی در اختیار توسعه‌دهنده قرار می‌دهد. و هنگام تجزیه و تحلیل تصاویر، استفاده از دسترسی فوری به ابزارهای تجسم قدرتمند به شما کمک می کند فوراً اثرات بزرگنمایی، بازیابی و فیلتر را مشاهده کنید.

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

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

همانطور که برای محاسبات ریاضی، پس متلبدسترسی به تعداد زیادی از برنامه های فرعی موجود در کتابخانه بنیادی NAG's Numerical Algorithms Group Ltd را فراهم می کند (این جعبه ابزار دارای صدها عملکرد از حوزه های مختلف ریاضیات است و بسیاری از این برنامه ها توسط متخصصان مشهور جهان توسعه داده شده اند). این مجموعه ای منحصر به فرد از پیاده سازی روش های عددی مدرن ریاضیات کامپیوتری است که در سه دهه گذشته ایجاد شده است. بنابراین، MatLab تجربه، قوانین و روش‌های محاسبات ریاضی را که در طول هزاران سال توسعه ریاضیات انباشته شده است، جذب کرده است. اسناد گسترده ای که همراه با سیستم به تنهایی ارائه می شود را می توان به عنوان یک کتاب مرجع الکترونیکی چند جلدی اساسی در مورد نرم افزار در نظر گرفت.

از کاستی های سیستم MatLab می توان به یکپارچگی کم محیط (پنجره های زیادی وجود دارد که بهتر است روی دو مانیتور با آنها کار کرد)، سیستم کمکی نه چندان قابل فهم (و در عین حال حجم اسناد اختصاصی). تقریباً به 5 هزار صفحه می رسد که دیدن آن را دشوار می کند) و ویرایشگر کد خاص برنامه های MatLab. امروزه سیستم MatLab به طور گسترده در فناوری، علم و آموزش استفاده می شود، اما هنوز برای تجزیه و تحلیل داده ها و سازماندهی محاسبات مناسب تر از محاسبات صرفاً ریاضی است.

برای انجام تبدیل‌های تحلیلی در MatLab، از هسته تبدیل نمادین Maple استفاده می‌شود و از Maple برای محاسبات عددی، می‌توانید به MatLab دسترسی پیدا کنید. از این گذشته، بی جهت نیست که ریاضیات نمادین Maple به بخشی جدایی ناپذیر از تعدادی از بسته های مدرن تبدیل شده است و تجزیه و تحلیل عددی از MatLab و جعبه ابزار منحصر به فرد است. بسته های ریاضی Maple و MatLab رهبران فکری در کلاس های خود هستند، آنها نمونه هایی هستند که توسعه ریاضیات رایانه را تعیین می کنند.

به عنوان جایگزین های ساده تر، اما از نظر ایدئولوژیکی نزدیک به برنامه MatLab، می توان به بسته هایی مانند اکتاو ,KOctave و نابغه .

اکتاو یک برنامه محاسبه عددی است که به خوبی با MatLab سازگار است. البته رابط کاربری سیستم اکتاو ضعیف‌تر است و کتابخانه‌های منحصربه‌فردی مانند MatLab ندارد، اما این یک برنامه بسیار آسان برای یادگیری است که برای منابع سیستم بی‌توجه است. Octave تحت مجوز منبع باز (OpenSource) توزیع می شود و می تواند کمک خوبی برای موسسات آموزشی باشد.

برنامه KOctave اساسا یک رابط گرافیکی پیشرفته تر برای سیستم Octave است. در نتیجه استفاده از KOctave، سیستم Octave کاملاً شبیه MatLab می شود.

یک برنامه ریاضی ساده نابغه البته از نظر قدرت نمی تواند با رقبای برجسته رقابت کند، اما ایدئولوژی تبدیل های ریاضی مشابه MatLab و Maple است. Genius همچنین تحت یک مجوز منبع باز (OpenSource) توزیع می شود. دارای زبان GEL خود، یک ابزار ریاضی پیشرفته Genius و یک سیستم خوب برای آماده سازی اسناد برای انتشار (با استفاده از زبان هایی مانند LaTeX، Troff (eqn) و MathML). رابط گرافیکی بسیار خوب برنامه Genius کار با آن را ساده و راحت می کند.

SCM MathCad برخلاف یک بسته تجزیه و تحلیل داده مبتنی بر محاسبات قدرتمند و با کارایی بالا متلب، برنامه MathCad(نسخه فعلی 14-15) یک ویرایشگر متن ریاضی ساده اما پیشرفته با طیف گسترده ای از محاسبات نمادین و یک رابط عالی است. MathCadبه این ترتیب زبان برنامه نویسی ندارد و موتور محاسبات نمادین از بسته قرض گرفته شده است افرا. اما رابط برنامه MathCadبسیار ساده، و امکانات تجسم غنی است. تمام محاسبات در اینجا در سطح ضبط بصری عبارات در یک فرم ریاضی به طور کلی پذیرفته شده انجام می شود. این بسته دارای نکات خوب، مستندات دقیق، آموزش نحوه استفاده از آن، تعدادی ماژول الحاقی و پشتیبانی فنی مناسب است. در حالی که احتمالات ریاضی MathCadدر زمینه جبر کامپیوتری بسیار پایین تر از سیستم ها هستند افرا,ریاضیات، MatLab و حتی baby Derive. با این حال، طبق برنامه MathCadکتاب ها و دوره های آموزشی زیادی از جمله اینجا در روسیه منتشر شده است. امروزه این سیستم به معنای واقعی کلمه استاندارد بین المللی برای دانشجویان شده است.

برای مقدار کمی از بسته محاسباتی MathCadعالیه. در اینجا همه چیز را می توان بسیار سریع و کارآمد انجام داد و سپس کار را به روش معمول ترتیب داد ( MathCadفرصت های زیادی را برای طراحی نتایج تا انتشار در اینترنت فراهم می کند). بسته دارای قابلیت‌های مناسب واردات/صادرات داده است. به عنوان مثال، می توانید با صفحات گسترده مایکروسافت اکسل درست در داخل کار کنید MathCad-سند

به طور کلی، MathCad این یک برنامه بسیار ساده و راحت است که می توان آن را به طیف گسترده ای از کاربران، از جمله کسانی که در ریاضیات دانش چندانی ندارند، و به خصوص کسانی که به تازگی اصول آن را یاد می گیرند، توصیه کرد.

MathCad این یک SCM بسیار شبیه به بسته Mathematica است.MathCad بر پشتیبانی از مفاهیم کاربرگ متمرکز شده است. معادلات و عبارات بر روی کاربرگ همانطور که در یک ارائه بیان می شوند، بیان می شوند، نه آنطور که در یک زبان برنامه نویسی هستند. برخی از کارهایی که برنامه انجام می دهد حل معادلات دیفرانسیل، رسم نمودارها در صفحه و فضا، حساب نمادین، عملیات با بردارها و ماتریس ها، حل نمادین سیستم معادلات، انتخاب نمودارها، مجموعه ای از توابع آماری و توزیع احتمال است. .

برنامه ماکسیما از نوادگان DOE Macsyma است که در اواخر سال 1960 در MIT (انستیتوی فناوری ماساچوست _موسسه فناوری ماساچوست) MIT شروع به کار کرد. ماکسیما او ابتدا یک سیستم جبر رایانه ای ایجاد کرد، او راه را برای برنامه هایی مانند افراو ریاضیات.نوع اصلی حداکثر a از سال 1982 تا 2001 توسط ویلیام شلتر توسعه داده شد. در سال 1998، او مجوز انتشار کد منبع باز تحت GPL را دریافت کرد. به لطف مهارت او، ماکسیما توانست زنده بماند و کد اصلی خود را در حالت کار نگه دارد. به زودی، ویلیام ماکسیما را به گروهی از کاربران و توسعه دهندگان سپرد که از پشتیبانی و توسعه آن اطمینان حاصل کردند. تا به امروز، این بسته کاملاً فعال در حال توسعه است و از بسیاری جهات نسبت به سیستم های ریاضیات رایانه ای پیشرفته مانند Maple یا Matematica پایین تر نیست.

برنامه های توزیع شده رایگان برای حل مسائل ریاضی را می توان به 4 گروه تقسیم کرد: برنامه های محاسبات عددی، برنامه هایی برای محاسبات تحلیلی، برنامه هایی برای ترسیم نمودارها و برنامه هایی برای طرح بندی متون ریاضی.

برنامه های شبیه سازی عددی و محاسبات مهندسی شامل برنامه می باشد Scilab، تحت مجوز CeCILL توسعه یافته است. این برنامه کراس پلتفرم است و قابل نصب بر روی لینوکس، ویندوز، سیستم عامل مک است. همه داده ها دارای یک نمایش ماتریسی با زبان برنامه نویسی و نحو خاص خود هستند Scilabکاملا مشابه پکیج تجاری متلب، که به شما امکان می دهد بدون هزینه خرید برنامه های گران قیمت به دانش آموزان آموزش دهید. در آینده، یک متخصص می تواند به سرعت و به طور کامل بر یک محصول تجاری تسلط یابد متلاب اگر شرایط ایجاب کند.

برنامه های کاربردی اصلی Scilabدر مسائل جبر خطی، تجزیه و تحلیل آماری، مدل سازی ریاضی و همچنین در محاسبات مهندسی با استفاده از کتابخانه های توسعه جعبه ابزار پیدا می کند. جعبه ابزارپیاده سازی توابع ریاضی خاص، الگوریتم های خطی سریع.

بسته ریاضی GNU Octave تحت GNU GPL منتشر شده است. این برنامه می تواند با سیستم عامل های مختلف کار کند. متغیرها و داده ها به صورت ماتریس نمایش داده می شوند. نحو زبان برنامه نویسی و فرمت دستور مشابه است Scilab، Matlab. علاوه بر توابع ریاضی داخلی، یک جعبه ابزار قدرتمند برای ایجاد توابع سفارشی وجود دارد. در GNU Octavرابط های گرافیکی مختلفی وجود دارد. پسندیدن Scilabاین پکیج می تواند جایگزینی برای پکیج تجاری باشد متلبدر یادگیری.

بسته محاسباتی تحلیلی آزادانه توزیع شده بسته است حداکثر. این برنامه بر انجام محاسبات و تبدیل عبارات نمادین و عددی، اعم از ساده سازی عبارات جبری تا تمایز، ادغام، بسط سری، تبدیل لاپلاس، حل معادلات دیفرانسیل، مسائل تانسور و جبر خطی متمرکز است. توسعه این بسته به عنوان یکی از جهت گیری های سیستم Macsyma توسط Wilm Shelter از سال 1982 انجام شده است. پس از مرگ او در سال 2001، این پروژه به توسعه خود ادامه داد. مستندات حداکثر در حال حاضر به روسی ترجمه می شود. این برنامه در حالت خط فرمان کار می کند، با این حال، چندین وجود دارد پوسته های گرافیکی: TeXmacs، wxMaxima، imaxima. این پکیج با توجه به عملکردی که دارد می تواند با جایگزینی پکیج های تجاری مورد استفاده قرار گیرد افرا، Mathematica.

استفاده از بسته های آفیس برای ساخت نمودارهای علمی و ریاضی با محدودیت قابل توجهی در امکان تنظیم دقیق و تجسم توابع و داده های تجربی مواجه است. یکی از بسته های ترسیمی با کیفیت، بسته gnuplot است که در اکثر بسته های ریاضی به عنوان یک زیر سیستم تجسم ادغام شده است. Gnuplot- سیار، بسته گرافیکی، از خط فرمان در سیستم عامل های مختلف Linux، OS/2، MS Windows و بسیاری دیگر اجرا می شود. کدهای منبع برنامه توسط حق چاپ محافظت می شوند، با این حال، آنها به صورت رایگان توزیع می شوند. Gnuplot از سال 1986 به طور خاص برای کاربردهای دانشجویی و تحقیقاتی توسعه یافته است. این بسته از انواع گرافیک های دو بعدی و سه بعدی به شکل خطوط، نقاط، خطوط سطح، فیلدهای برداری، سطوح و متن سفارشی روی نمودارها پشتیبانی می کند. یکی از ویژگی های متمایز gnuplot گزینه های مختلف برای نمایش تصاویر تمام شده است: یک ترمینال صفحه نمایش تعاملی، خروجی مستقیم به یک پلاتر یا چاپگر گرافیکی و همچنین به گرافیک. فایل های eps, fig, jpeg, LaTeX, metafont, pbm, pdf, png, postscript, svg. بنابراین، gnuplot باید بخشی از مجموعه ای از برنامه ها برای ترسیم مقالات دانشجویی و پژوهشی باشد.

گسترده ترین سیستم صفحه بندی متون ریاضی و فنی، سیستم انتشار است لاتکس، به عنوان یک بسته پسوند کلان سیستم انتشار ایجاد شده است TeXتوسط دونالد کنوت برخلاف سیستم‌های چیدمان متن، که کاربر بلافاصله محل اشیاء و متن را در صفحه‌آرایی می‌بیند، در LaTeX نویسنده به طراحی متن فکر نمی‌کند. برای طراحی صفحه، اندازه فونت، تورفتگی و غیره مربوط به فایل سبک است که متن سند را ترسیم می کند. عملا این سیستم DTP فرمت استاندارد برای نوشتن مقالات علمی در سراسر جهان است. علاوه بر پسوندهای ماکرو از پیش نصب شده، کاربر این امکان را دارد که ماکروهای خود را برای تایپ خودکار ایجاد کند. یکپارچه سازی استاندارد طرح بندی برای مقالات پیچیده ریاضی و علمی به شما این امکان را می دهد که به طور خودکار مقالات و اسلایدهای ارائه را بر اساس متن یکسان ایجاد کنید، به سادگی با جایگزینی سبک سند. در آموزش دانشجویان رشته های ریاضی لاتکسباید برای طراحی دوره و دیپلم استفاده شود.

با جمع بندی موارد فوق، لازم به ذکر است که استفاده از برنامه های ریاضی واقعاً باز می شود امکانات بی پایان! این به دلیل این واقعیت است که سیستم های CAE تقریباً تمام زمینه های ریاضیات و محاسبات مهندسی را پوشش می دهند.

زمانی سیستم های ریاضیات نمادین به طور انحصاری بر روی دایره باریکی از متخصصان متمرکز بودند و روی رایانه های بزرگ (مین فریم) کار می کردند. اما با ظهور رایانه شخصی، این سیستم ها برای آنها دوباره طراحی شد و به سطح سیستم های نرم افزاری سریال انبوه رسید. در حال حاضر، سیستم‌های ریاضی نمادین با کالیبرهای مختلف در بازار وجود دارند: از سیستمی که برای طیف وسیعی از مصرف‌کنندگان طراحی شده است (سیستم‌های MathCad) تا هیولاهای رایانه‌ای (Mathematica، MatLab و Maple).

تقریباً همه این سیستم‌ها نه تنها بر روی رایانه‌های شخصی مجهز به سیستم‌عامل‌های معروف ویندوز، بلکه در سیستم‌عامل‌های لینوکس، یونیکس، مک او اس و همچنین بر روی رایانه‌های شخصی کار می‌کنند. آنها مدتهاست که برای کاربران آشنا هستند و به طور گسترده در همه پلتفرم ها - از دستی گرفته تا ابر رایانه ها - توزیع شده اند.

از نظر توزیع و استفاده از نرم افزار، نرم افزار به بسته / غیر رایگان، باز و رایگان تقسیم می شود:

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

    باز کن نرم افزار - دارای یک کد منبع باز است که به هر کسی اجازه می دهد در مورد روش ها، الگوریتم ها، رابط ها و قابلیت اطمینان محصول نرم افزار قضاوت کند. کد منبع باز به معنای توزیع رایگان برنامه نیست. مجوز شرایطی را مشخص می کند که کاربر می تواند کد برنامه را به منظور بهبود آن تغییر دهد یا از قطعاتی از کد برنامه در پیشرفت های خود استفاده کند. مسئولیت نقض شرایط توافق نامه مجوز برای نرم افزار منبع باز مشابه نرم افزار بسته / غیر آزاد است.

    نرم افزار آزاد- به کاربر حقوق، یا به عبارت دقیق تر، آزادی نصب و راه اندازی نامحدود، استفاده و مطالعه رایگان کد برنامه، توزیع و اصلاح آن را اعطا می کند. نرم افزار رایگان نیز از نظر قانونی محافظت می شود، مشمول قوانین کپی رایت.

برای اولین بار به صراحت اصول نرم افزار آزاد در دهه 70 قرن گذشته توسط ریچارد متیو استالمن فرموله شد. به این دلایل، نویسندگان نرم افزار آزاد به هر کاربر حقوق و آزادی های زیر را اعطا می کنند:

    « آزادی صفر ". این برنامه را می توان آزادانه برای هر هدفی استفاده کرد

    « اول آزادی ". می توانید نحوه عملکرد برنامه را مطالعه کرده و آن را برای اهداف خود تطبیق دهید. شرط این امر در دسترس بودن کد منبع برنامه است.

    « آزادی دوم ". شما می توانید آزادانه نسخه هایی از برنامه را توزیع کنید.

    « آزادی سوم ". این برنامه برای بهبود و انتشار نسخه بهبود یافته شما رایگان است - به منظور بهره مندی کل جامعه. شرط این آزادی سوم، در دسترس بودن کد منبع برنامه و امکان انجام اصلاحات و اصلاحات در آنها است.

این اصول اساس اولین مجوز نرم افزار آزاد، مجوز عمومی عمومی گنو (GPL) را تشکیل دادند که توسط بنیاد نرم افزار آزاد (بنیاد نرم افزار آزاد انگلیسی، به اختصار FSF) ایجاد شد که توسط استالمن تأسیس شد. یکی از اهداف این صندوق کنترل انطباق با شرایط مجوزها و همچنین دفاع از حقوق توسعه دهندگان و کاربران نرم افزارهای توسعه یافته تحت GPL است.

با گذشت زمان، نسخه‌های دیگری از مجوز نرم‌افزار آزاد به وجود آمد، اما مفهوم «مجوز سازگار با GPL» همچنان باقی است، که نشان‌دهنده نزدیکی این مجوز به اصولی است که ابتدا به طور قانونی در GPL ذکر شده است.

تا به امروز، آخرین نسخه GPL نسخه 3 است. از زمان معرفی آن، برخی از توسعه دهندگان ترجیح داده اند شرایط استفاده از نرم افزار خود را تحت GPL 2.1 حفظ کنند، در حالی که برخی دیگر مجوز جدید و محدودتر را اتخاذ کرده اند.

نرم افزار متن باز (نرم افزار آزاد / متن باز) - نرم افزاری است که به شما آزادی استفاده، کپی، توزیع، یادگیری، بهبود و تغییر نرم افزار را می دهد.

این «قوانین آزادی‌خواه» در سال‌های گذشته رونق زیادی به ایجاد جوامع توسعه‌دهنده داده است. گنو/لینوکسیکی از موفق ترین نمونه های توسعه در میان پروژه های جامعه نرم افزار آزاد/منبع باز است.

نرم افزار آزاد ( نرم افزار رایگان ) برنامه های رایانه شخصی که بر اساس شرایطی توزیع می شوند که چهار آزادی (حقوق) کلیدی را در اختیار کاربران قرار می دهند:

    استفاده رایگان از نرم افزار برای هر هدفی.

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

    توزیع رایگان نرم افزار (به صورت پولی یا رایگان).

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

هر کاربر یک برنامه رایگان، بر خلاف مجانی نیست(اختصاصی)، مالک کامل برنامه است (دارای حقوق مالکیت غیر انحصاری حق چاپ در مورد آن است) و به اراده توسعه دهنده برنامه یا دارنده حق چاپ بستگی ندارد.

مهمترین پیامد حقوق (2) و (4) این است که یک برنامه رایگان تنها در صورتی قابل توزیع است که کد منبع آن در دسترس عموم باشد.

کپی لفت ( کپی-ایفت ) - سیستمی برای حمایت از حقوق کاربران نرم افزار رایگان که علاوه بر قانون حق چاپ فعلی توسعه یافته است ( کپی رایت ) . ایده اصلی کپی‌لفت تضمین آزادی برنامه است، به این معنی که پس از انتشار تحت مجوز کپی‌لفت، برنامه‌ای دیگر نمی‌تواند اختصاصی شود. با این حال، همه نرم‌افزارهای آزاد کپی‌لفت نیستند؛ بسیاری از مجوزهای رایگان رایج اجازه می‌دهند تا یک برنامه به صورت اختصاصی درآید. این در درجه اول برای خانواده مجوزهای BSD اعمال می شود.

چرا این همه مجوز رایگان وجود دارد؟ چه تفاوتی با یکدیگر دارند؟

تنوع مجوزهای رایگان در درجه اول به دلایل تاریخی است: مجوزهای اولیه ساده تر هستند، شرایط کمتری دارند و وارد جزئیات قانونی نمی شوند. با تکامل جنبش نرم‌افزار آزاد، توسعه‌دهندگان نرم‌افزار آزاد با چالش‌های جدیدی مانند نیاز به حل مشکل پتنت نرم‌افزار یا هماهنگ کردن متون مجوز با قوانین کپی رایت کشورهای مختلف مواجه شده‌اند. تلاش برای حل این مشکلات منجر به ظهور مجوزهای جدید و پیچیدگی محتوای آنها می شود.

بنابراین، بسته به وضعیت حقوقی خاص و نیت نویسنده، مجوزهای مختلف ممکن است در موارد مختلف بهینه باشد.

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

مجوز GNUGeneralPublicLicense - محبوب ترین مجوز رایگان تا به امروز، که نسخه فعلی آن (3.0) توسط بنیاد نرم افزار آزاد در 29 ژوئن 2007 منتشر شد. متن مجوز با شکل نسبتاً رایگان ارائه و در عین حال دقت قانونی متمایز است .

GPL - یکی از مجوزهای رسمی پروژه گنو که در خاستگاه نهضت نرم افزار آزاد قرار دارد. تحت شرایط GPL و نسخه ویژه آن LGPL، که در برخی موارد امکان ترکیب با برنامه های توزیع شده تحت شرایط مجوزهای دیگر را فراهم می کند، پیشرفت های اساسی مانند هسته سیستم عامل منتشر شده است. لینوکس ، محیط توسعه ایمکس ، مجموعه کامپایلر شورای همکاری خلیج فارس و سایر برنامه هایی که در زرادخانه توسعه دهندگان نرم افزار گنجانده شده است. علاوه بر این، GPL اولین مجوزی است که شامل یک بند کپی لفت (مکانیسمی برای حفظ آزادی یک برنامه) است. اعتبار بنیاد نرم‌افزار آزاد، یکپارچگی موقعیت‌ها و تکنیک حقوقی سنجیده‌شده باعث شده است که GPL در بین توسعه‌دهندگان محبوبیت خوبی داشته باشد.

بر این اساس، من نتوانستم همه چیز را پوشش دهم - حدود 15 دقیقه برای گزارش وقت داشتم.

مقدمه

بسته های معروف غول هستند همه در یک

وقتی در مورد نرم افزار ریاضی صحبت می کنیم، غول هایی مانند Maple، Mathematica، MatLAB به ذهن می رسند... آنها یک چیز مشترک دارند: آنها سعی می کنند همه چیز را پوشش دهند. البته Mathematica در درجه اول به عنوان یک سیستم برای محاسبات نمادین و Matlab برای عددی شناخته می شود، اما در عین حال Mathematica دارای الگوریتم های قدرتمندی برای محاسبات ممیز شناور است و Matlab دارای بسته ای برای محاسبات نمادین است. و اینها ثانویتوابع در برنامه ها، در مقایسه با برنامه های در نظر گرفته شده برای این، ضعیف و مضحک به نظر می رسند. و MathCAD بدنام سعی می کند همه چیز را شامل شود، در حالی که همه چیز به این صورت اجرا می شود. دلیل آن ساده است: پذیرش بیکرانی غیرممکن است.

نرم افزار رایگان یک کار را به خوبی انجام می دهد

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

با این حال، برنامه هایی نیز وجود دارد که، به یک درجه یا دیگری، آنالوگ بسته های شناخته شده هستند. من در مورد سه صحبت خواهم کرد.

محاسبات نمادین: ماکسیما

تاریخچه پروژه

من با تاریخچه این پروژه شروع می کنم.

ابتدا به شما یادآوری می‌کنم که رایانه‌ها در واقع ماشین‌های محاسباتی الکترونیکی هستند، آنها برای محاسبات روی اعداد ایجاد شده‌اند. با این حال، در اواخر دهه 50، این ایده ظاهر شد که می توان رایانه را نه تنها با اعداد، بلکه با عبارات جبری نیز کار کرد. در اوایل دهه 1960، اولین سیستم های جبری کامپیوتری شروع به ظهور کردند. و البته، یک بخش صلح آمیز آمریکایی به چنین سیستمی نیاز داشت (وزارت انرژی، این عملاً بخشی از پنتاگون است). مناقصه ای راه اندازی شد و توسط پروژه ای به نام Macsyma (املای CS) برنده شد. در طول سال ها، DOE Macsyma به عنوان یک پروژه تجاری با بودجه دولتی تکامل یافته است. در سال 1982، ویلیام شیلتر یک چنگال از Macsyma به نام ماکسیما ایجاد کرد. در اوایل دهه 90، اتحاد جماهیر شوروی فروپاشید، جنگ سرد به پایان رسید، و پیامد غیرمستقیم آن قطع تقریباً کامل بودجه برای DOE Macsyma بود. در پایان دهه 90، این پروژه تقریباً مرده بود. منابع Macsyma تکه تکه فروخته شد و به Maple و Mathematica ختم شد. در سال 1998، ویلیام شیلتر از DOE برای انتشار کد منبع ماکسیما تحت GPL مجوز گرفت. ماکسیما به نرم افزار رایگان تبدیل شد. Shelter در سال 2001 درگذشت، اما در آن زمان افراد زیادی در حال کار بر روی Maxima بودند و آنها این پروژه را انتخاب کردند.

رابط: خط فرمان یا wxMaxima

Maxima دارای یک رابط خط فرمان سنتی یونیکس است، اما همچنین می تواند در یک پورت شبکه گوش دهد و به عنوان یک سرور عمل کند. این واقعیت توسط پوسته های مختلف (frontends) استفاده می شود که یک رابط گرافیکی ارائه می دهند. رایج ترین آنها TeXmacs و wxMaxima هستند. TeXmacs علمی است ویرایشگر متن، جایی که می توانید یک جلسه Maxima را در سند وارد کنید. wxMaxima چیزی شبیه به این است:

آخرین نسخه، 0.8.0، بیشتر شبیه Mathematica و Maple شده است: قبلاً، خط فرمان برای ورودی جدا بود، در پایین.

زبان Lisp مانند

زبان ماکسیما ایده های اصلی خود را از Lisp گرفته است، زیرا Maxima در Lisp-e نوشته شده است. در عین حال، به طور همزمان شبیه به زبان های Mathematica و Maple است، زیرا این برنامه ها بسیاری از ایده ها و بخشی از کد را از Macsyma به عاریت گرفته اند. برای جلوگیری از برشمردن طولانی و خسته کننده احتمالات، من مثالی از حل مسائل معمولی را از دوره اول ارائه می کنم.

اجازه دهید تابع

حداکثر>> f(x) := x*tanh(x) + x + 1/x + 2;

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

همانطور که می بینید، تابع نه زوج است و نه فرد. بیایید حدود تابع را در مثبت یا منهای بی نهایت پیدا کنیم:

maxima>> limit(f(x),x,-inf);

maxima>> limit(f(x),x,inf);

بنابراین، در به علاوه بی نهایت، تابع به بی نهایت می رود. مجانب مورب دارد؟

maxima>> limit(f(x)/x, x,inf);

مجانب مایل این است - y=kx+bو k=2. بیایید پیدا کنیم ب:

maxima>> limit(f(x)-2*x, x,inf);

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

maxima>> plot2d(f(x), , );

بیایید مشتق تابع خود را پیدا کنیم:

maxima>> diff(f(x),x);

و در عین حال - یک انتگرال نامعین:

maxima>> integrate(f(x)، x);

انتگرال "نبرد" تا انتها. می توان نشان داد که این انتگرال در توابع ابتدایی گرفته نمی شود. با این حال، ماکسیما می تواند برخی از این انتگرال ها را با استفاده از توابع ویژه بگیرد:

maxima>> part: risch(x/(exp(2*x)+1), x);

maxima>> ir: -2*part + log(x) + x^2 + 2*x;

یه چیز وحشتناک بیایید براکت ها را گسترش دهیم:

maxima>> expand(ir);

معادلات دیفرانسیل

یا در اینجا نمونه ای از محاسبات پیچیده تر است. بیایید معادله دیفرانسیل را حل کنیم:

حداکثر>> معادله: "diff(y,x) + x*y = 1-x^2;

maxima>> راه حل: ode2(eq,y,x);

maxima>> expand(راه حل);

ماکسیما تعدادی کتابچه راهنما به زبان روسی دارد که در اینترنت یافت می شوند. به نظر من، موفق ترین مقدمه با مروری بر ویژگی ها در مجموعه ای از مقالات تیخون تارناوسکی در مجله LinuxFormat آمده است. اکنون این مقالات در مالکیت عمومی از جمله در سایت روسی ماکسیما ارسال شده است. مستندات مربوط به ویژگی های پیشرفته maxima، متأسفانه، فقط به زبان انگلیسی وجود دارد. اسناد رسمی 712 صفحه است.

محاسبات عددی: Scilab

Scilab سازگار با MatLAB

شناخته شده ترین بسته برای محاسبات عددی MatLAB است. Scilab به عنوان رقیبی برای matlab ایجاد شد که از نظر قیمت گذاری متوسط ​​تر است. با این حال، این پروژه خود را از نظر تجاری توجیه نکرد و کدهای منبع تحت مجوزی مشابه GNU GPL باز بودند. زبان scilab تا حد امکان سازگار با matlab ساخته شده است، بنابراین اکثر کارهای متلب شما در scilab کار می کنند. فقط در حال حاضر، همانطور که می دانید، قدرت اصلی matlab در جعبه ابزار آن متمرکز شده است - ماژول های جداگانه ارائه شده است. همچنین ماژول هایی برای scilab وجود دارد، اما تعداد آنها بسیار کمتر است.

Octave معادل GPL Matlab است

بعداً، پروژه GNU Octave ظاهر شد، با هدف ایجاد آنالوگ matlab-a، که تحت GNU GPL بدون هیچ مشکلی توزیع شد. این زبان همچنین عملاً با Matlab سازگار است، اما هیچ آنالوگ Simulink در اینجا وجود ندارد - ابزاری برای مدل‌سازی و شبیه‌سازی سیستم‌های پویا.

اما Octave یک رابط صرفاً کنسولی دارد (البته، فرانت‌اندهای گرافیکی نیز وجود دارد، توسعه‌یافته‌ترین آنها QtOctave است)، که به آن اجازه می‌دهد در اسکریپت‌ها استفاده شود، محاسبات را خودکار کند، و جاسازی در سیستم‌های نرم‌افزاری پیچیده را ساده‌تر می‌کند. ده ها بسته افزونه برای Octave نوشته شده است.

مقالاتی در مورد Scilab به زبان روسی وجود دارد، علاوه بر این، چندی پیش، AltLinux کتاب "Scilab: حل مسائل مهندسی و ریاضی" را منتشر کرد. این کتاب را می توان در فروشگاه آنلاین خریداری کرد، علاوه بر این، نسخه الکترونیکی آن به صورت رایگان در دسترس است. وب سایت AltLinux

پردازش داده: GNU R

به طور رسمی، ابزارهای پردازش داده، برنامه هایی برای محاسبات عددی هستند، زیرا تنها کاری که انجام می دهند، محاسبات بر روی اعداد است. با این حال، همانطور که می دانید، یک ابزار تخصصی همیشه بهتر از یک ابزار جهانی است. زیر کلمات پردازش داده هابسیاری از فعالیت های مختلف پنهان هستند: تجزیه و تحلیل آماری، مدل سازی آماری، نمونه برداری از داده های لازم، تبدیل داده ها، ساخت نمودارها و هیستوگرام های مختلف.

برنامه های پردازش داده را می توان بر اساس حجم نمونه معمولی که برای آن در نظر گرفته شده است طبقه بندی کرد. برای نمونه های کوچک، به عنوان مثال، Statistica مناسب است. برای نمونه‌های با اندازه متوسط، GNU R به خوبی کار می‌کند (همه داده‌ها را در RAM ذخیره می‌کند، بنابراین در یک رایانه معمولی محدودیت 1-2-4 گیگابایت داریم). برای مقادیر زیاد و بسیار زیاد داده (از صدها گیگابایت تا صدها ترابایت)، سیستم های رایگان PAW و ROOT توسعه یافته در CERN در نظر گرفته شده است.

گنو R یک زبان برنامه نویسی تفسیر شده برای تحلیل و مدل سازی آماری است. R یک پیاده‌سازی رایگان از زبان قدیمی S است. این زبان بسیار التقاطی است، در مکان‌ها شبیه به C، در مکان‌ها Python و در مکان‌ها Haskell است. برای GNU R، نزدیک به 1500 بسته الحاقی (نوشته شده در خود R، در C یا Fortran) وجود دارد که در مخزن CRAN (شبکه آرشیو جامع R) کامپایل شده است.

انواع داده ها - اعداد، رشته ها، عوامل، بردارها، لیست ها و جداول داده

انواع داده های اصلی در زبان عبارتند از اعداد، رشته ها، عوامل، بردارها، لیست ها و قاب های داده. فاکتور داده‌ای است که می‌تواند یکی از چندین مقدار را بگیرد (جنس؛ نوع درخت؛ نوع بولیو غیره). بردارها آنالوگ آرایه ها هستند - آنها مجموعه ای از چندین مقدار از یک نوع هستند، اندازه بردار نمی تواند تغییر کند. همچنین لازم به ذکر است که در R وجود ندارد اسکالرها; به عنوان مثال، یک عدد، از دیدگاه R، بردار یک عنصر است. لیست ها تعمیم بردارها هستند، آنها می توانند شامل اشیاء باشند انواع متفاوت، و طول آنها ممکن است متفاوت باشد. علاوه بر این، می‌توان به تک تک عناصر فهرست نام داد و عناصر را نه با اعداد، بلکه با نام اشاره کرد. مثال:

(تخصیص در R معمولا با نشان داده می شود ، اگرچه می توانید از آشناتر استفاده کنید = ; علاوه بر این، یک فرم وجود دارد مقدار → متغیر). دوبل ها برای اشاره به عناصر یک لیست با شماره استفاده می شوند. براکت های مربع:

نام ها را به عناصر لیست اختصاص دهید:

(عملکرد جبردارها را ایجاد می کند). اکنون عناصر لیست با نام قابل دسترسی هستند:

جدول داده (فریم داده) در R فهرستی از بردارها است. جداول داده اغلب با بارگیری از یک فایل خارجی ایجاد می شوند.

زنگ

کسانی هستند که قبل از شما این خبر را می خوانند.
برای دریافت آخرین مقالات مشترک شوید.
پست الکترونیک
نام
نام خانوادگی
چگونه دوست دارید زنگ را بخوانید
بدون هرزنامه