Maxima

Maxima

ماكسيما البرنامج المجاني لحل المعادلات الجبرية

maxima

4.6
تقييم داونزن
5.0
تقييم الزوار

ماكسيما Maxima هو برنامج مجاني لحل المعادلات الجبرية، يقوم البرنامج بحل المعادلات بصورة رمزية أو حل المعادلات بصورة رقمية. يستخدم البرنامج في عدد من الجامعات لتدريس الرياضيات والعلوم وهو مبني على برنامج آخر طوّر في معهد ماساتشوستس للتقنية MIT باسم Macsyma.


الجيد
يشمل العديد من الأدوات لحل مختلف المسائل الرياضية.
يعمل على عدة أنظمة تشغيل منها أندرويد.
مجاني بالكامل.
يمكن رسم المنحنيات للدوال عبر البرنامج بكل سهولة.
السيئ
تصدير المعادلة بصيغة Latex تعطي خطأ في نسخة الويندوز.
بقلم
Ammar Kurd
4.6
تقييم المراجع

نبذة عن برنامج ماكسيما

بدأ المشروع في معهد ماساتشوستس للتقنية بتمويل من وزارة الطاقة الأمريكية تحت اسم Macsyma وقد كتب بلغة Common Lisp. إحدى النسخ المصدرية من البرنامج كانت بحوزة Bill Schelter (بروفيسور رياضيات في جامعة تكساس) وقد قام في العام 1998 بأخذ أذن من وزارة الطاقة الأمريكية لنشر البرنامج تحت ترخيص GPL بشكل مجاني، هذه النسخة هي المعروفة اليوم باسم ماكسيما (Maxima).

البرنامج الآن يشرف عليه مجموعة من المتطوعين والمبرمجين حول العالم، ولكن البرنامج الأصلي Macsyma يختلف عن النسخة المجانية Maxima رغم التشابه بين البرنامجين، حيث أن دورة تطوير البرنامجين اختلفت منذ نشر النسخة المجانية في 1998.

تحميل برنامج ماكسيما على الويندوز

يمكن تحميل وتنصيب برنامج ماكسيما بسهولة بالضغط على زر التحميل في الصفحة، يحث يأخذك الرابط إلى موقع التحميل الرسمي للبرنامج. ثم اختر النسخة المناسبة لنظام التشغيل الخاص بك سواءاً 64 بت أو 32 بت.

وتنصيب البرنامج على الويندوز سهل للغاية ولا يحتاج أي معرفة تقنية أو ما شابه كل ما عليك فعله هو الضغط على التالي ثم موافق فقط.

تحميل برنامج ماكسيما على الاندرويد

تتوفر نسخة من برنامج ماكسيما على نظام تشغيل أندرويد وتعمل بنفس الآلية التي تعمل بها نسخة الويندوز، ويمكن تحميل نسخة الأندرويد من جوجل بلاي ستور عبر هذا الرابط.

تحميل برنامج ماكسيما على لينكس

يتوفر برنامج ماكسيما على نظام تشغيل لينكس على كل التوزيعات، وقد قمنا بتجربة البرنامج على توزيعة أوبنتو الشهيرة وذلك بسبب انتشارها، وخطوات تنصيب البرنامج باستخدام مدير حزم أوبنتو سهل للغاية ولا يحتاج معرفة تقنية، كما يمكن تحميل البرنامج بصورته المصدرية ثم بناء البرنامج من المصدر.

خطوات تحميل البرنامج وتنصيبه على أوبنتو هي كالتالي:

  • يجب توفر جهاز كمبيوتر متصل بالانترنت للقيام بالخطوات.
  • قم بفتح الطرفية (Terminal) عن طريق الضغط على Ctrl+Alt+t.
  • اكتب الأمر التالي في الطرفية sudo apt-get install maxima.
  • سيطلب منك إدخال كلمة السر، وبعد قيامك بإدخالها سيبدأ تحميل وتنصيب البرنامج على جهازك.
  • بعد الانتهاء من تحميل يمكنك البدء في استخدام البرنامج من الطرفية بإدخال الأمر maxima.
  • يمكن تحميل وتنصيب واجهة رسومية للبرنامج لتسهيل استخدامه، وذلك عن طريق كتابة الأمر التالي في الطرفية sudo apt-get install wxmaxima.
  • بعد الانتهاء من تحميل وتنصيب الواجهة الرسومية يمكن الوصول للبرنامج من قائمة البرامج أو عبر كتابة wxmaxima في الطرفية.

كيفية استخدام برنامج ماكسيما (دليل الاستخدام السريع)

يستخدم برنامج ماكسيما لحل معادلات رياضية رمزية مثل معادلات غير خطية لإيجاد قيمة المتغير، أو معادلات تفاضلية أو تبسيط المعادلات كما يمكن استخدامه كآلة حاسبة علمية لحل مسائل رياضية عددية كتبسيط الكسور أو إيجاد قيمة الجذر وغيرها.

برنامج ماكسيما برنامج كبير وشامل للعديد من المميزات، ولكن في الفقرات التالية سنحاول تغطية بعض من الطرق التي من الممكن استخدام البرنامج فيها.

سنقوم بعرض أهم مميزات البرنامج وكيفية استخدام العديد من الأوامر لحل الكثير من المسائل الرياضية، واعتمدنا في هذا الدليل على توضيح الأوامر بإعطاء أمثلة لكيفية استخدامها، وقد حاولنا عرض الأدوات الأكثر استخداماً رغم وجود الكثير من الأدوات الأخرى في دليل الاستخدام باللغة الإنجليزية، ونرجو أن نكون قد وفقنا في ذلك.

الأساسيات واستخدام ماكسيما كآلة حاسبة

يستقبل البرنامج الأوامر متبوعة بالفاصلة المنقوطة (;) كما في لغات برمجة مثل لغة C، ويمكن إدخال أمر واحد أو عدة أوامر ويقوم البرنامج بتنفيذ الأمر مباشرة بعد الضغط على Shift+Enter، إذا لم ترغب في عرض ناتج العملية استبدل الفاصلة المنقوطة برمز الدولار ($) عندها ستنفذ العملية ولكن لن تعرض النتيجة، واستخدام رمز الدولار يناسب العمليات الوسطى قبل عرض الناتج النهائي. 

سطر إدخال الأمر يرمز له بالحرف (i) اختصاراً لكلمة إدخال بالانجليزية (input) متبوعاً برقم، ويبدأ سطر الناتج بالحرف (o) اختصار لكلمة ناتج أو خارج (output)، كما يظهر في الصورة في الأسفل، ويمكنك تغيير رمز الإدخال والإخراج عبر الأمرين (inchar) والأمر (outchar)، مثلا:

(input3) inchar: "input";

outchar: "output";

(inchar) "input"

(outchar) "output"

يمكن استخدام برنامج ماكسيما كآلة حاسبة علمية للقيام بعمليات حسابية معقدة أو بسيطة، كما يمكن تبسيط الكسور وحل المسائل إيجاد الجذور والقوى واللوغاريتم، حيث يتم إدخال المعادلة بالطريقة المعتادة باستخدام الرموز المعتادة لعمليات الجمع والطرح والضرب والقسمة (+، -، *، /) باستخدام الأقواس لترتيب العمليات حسب المراد لها أو سيتم إتباع ترتيب العمليات الحسابية.

إذا تم إدخال الأعداد بصورتها الصحيحة (أي بدون فاصلة عشرية) مثلا (1/7) يقوم البرنامج على تبسيطها وعرضها بشكل كسور ويمكن تبسيطها إلى الصورة العشرية باستخدام الأمر float، إذا تم إدخال الأعداد بصورة أعداد عشرية مثلاً (1.0/7.0) يقوم البرنامج مباشرة بعرض النتائج على شكل كسر عشري، كما يظهر في الصورة في الأعلى.

يمكن الإشارة إلى آخر تعبير رياضي عبر استخدام الرمز (%) كما يمكن إعادة استخدام التعبير الرياضي عبر كتابة رمز الإدخال أو الإخراج الخاص به كما يظهر في الصورة بالأعلى، عرض الأوامر السابقة يتم عبر الضغط في الكيبورد على (alt+up arrow) أي رمز (alt) و السهم الأعلى.

لعرض معلومات حول أداة معينة يستخدم الأمر (؟؟) متبوعاً باسم تلك الأداة، مثلاً:

(%i7) ?? trigsimp;

-- Function: trigsimp (<expr>)

    Employs the identities sin(x)^2 + cos(x)^2 = 1 and cosh(x)^2 -

    sinh(x)^2 = 1 to simplify expressions containing 'tan', 'sec',

    etc., to 'sin', 'cos', 'sinh', 'cosh'.

    'trigreduce', 'ratsimp', and 'radcan' may be able to further

    simplify the result.

    'demo ("trgsmp.dem")' displays some examples of 'trigsimp'.

(%o7) true

للقيام بالعمليات في أنظمة عد من أساس يختلف عن النظام العشري كالنظام الثنائي (binary) والثماني (Octal) يتم عبر تغيير الأساس من طريق تغيير قيمة المتغير (ibase) للمدخلات و (obase) للمخرجات، مثلاً لتغيير النظام إلى النظام الثنائي:

(%i101) obase: 2;

        ibase: 2;

(obase) 10

(ibase) 10

لإعادة النظام العشري:

(%i111) ibase: 1010;

        obase: 10;

(ibase) 1010

(obase) 10

الثوابت (Constants)

يوجد العديد من الثوابت المحفوظة في البرنامج وسنقوم هنا بسردها سريعاُ:

  1. عدد أويلر ويرمز له في برنامج ماكسيما بالرمز (e%).
  2. الوحدة التخيلية ويرمز لها في برنامج ماكسيما بالرمز (i%).
  3. ثابت أويلر-ماسكيروني ويرمز له في برنامج ماكسيما بالرمز (gamma%).
  4. لانهاية موجبة ويرمز له في برنامج ماكسيما بالرمز (inf).
  5. لانهاية سالبة ويرمز لها في برنامج ماكسيما بالرمز (minf).
  6. النسبة الذهبية ويرمز لها في برنامج ماكسيما بالرمز (phi%).
  7. ثابت الدائرة ويرمز لها في برنامج ماكسيما بالرمز (pi%).

كيفية تعريف الدوال والمتغيرات

يمكن تعريف متغير باستخدام الرمز (:) بالصورة التالية:

(%i1) x:9; y:7;(%o1) (x) 9(%o2) (y) 7

يمكن الآن استخدام المتغير في العمليات الحسابية، مثلاً:

(%i2) x+y;(%o3) 16

يمكن تعريف المتغير بشكل مسألة حسابية مثلاً:

(%i3) a:((1.0+sqrt(2.0))/7);(%o4) (a) 0.344887651767585

ويمكن تعريف دالة باستخدام (=:)، وذلك كالتالي:

(%i4) f(x) := x^2+2*x+1;(%o5) f(x) :=  x^2+2*x+1

ثم من الممكن حساب قيمة الدالة لمتغير معين بسهولة كالتالي:

(%i5) f(4);(%o6) 25

استخراج عوامل الأعداد ومتعددة الحدود

يمكن استخراج عوامل العدد باستخدام الأمر (factor)، مثلاً:

(%i6) factor(10);(%o7) 2 5

كما يمكن استخراج عوامل متعددة الحدود، مثلاً:

(%i7) factor(3*x^2-2*x+12*x-8);(%o8) (x+4)(3*x-2)

يمكن فك متعددة الحدود وكتابتها بالصورة القياسية باستخدام الأمر(expand)، مثلاً:

(%i8) expand((x+7)^3);(%o9) x^3+21*x^2+147*x+343

كما يمكن تبسيط كثيرات الحدود الكسرية باستخدام الأمر(ratsimp)، مثلاً:

(%i9) ratsimp((x^2+x-6)/(x+3));(%o10) x - 2

عمليات على العبارات المثلثية

يمكن استخدام الأمر (trigsimp) لتبسيط العبارات المثلثية وكتبتها بابسط صورة، مثلاً

(%i10) trigsimp(2*cos(x)^2+7*tan(x)*cot(x)+2*sin(x)^2);(%o11) 9

يستخدم الأمر (trigsimp) المتطابقتان المثلثية:

  1. sin(x)2 + cos(x)2 = 1.
  2. cosh(x)2 + sinh(x)2 = 1.

لتبسيط العبارات المثلثية التي تحتوي على tan، sec وغيرها الى sin، cos، sinh، cosh.

يمكن استخدام الأمر (trigreduce) لتبسيط التعابير المثلثية وذلك بتجميع القوى والحدود المتشابهة وكما يحاول التخلص من أي تعابير مثلثية في المقام، مثلاً:

(%i11) trigreduce((4*sin(x)^2+6*cos(x)*sin(x)+3*sin(x)^2)/7*cos(x));(%o12) (6*sin(3*x)-7*cos(3*x)+6*sin(x)+7*cos(x))/28

كما يمكن فك التعابير المثلثية باستخدام (trigexpand) وفقاً للعلاقات الخاصة بالزاوية في التعبير المثلثي مثل الجمع أو الضرب في الزوايا، مثلاً:

(%i12) trigexpand(sin(x+2)+cos(4*x));(%o13) sin(x)^4-6*cos(x)^2*sin(x)^2+cos(2)*sin(x)+cos(x)^4+sin(2)*cos(x)

توليد الأرقام العشوائية في ماكسيما

يستخدم الأمر (random(x في توليد رقم شبه عشوائي (pseudorandom)، ويمكن توليد عدد صحيح (integer) عبر إدخال عدد صحيح للأمر أو عدد حقيقي (float) عبر إدخال عدد حقيقي ويكون العدد العشوائي الناتج عدد موجب أقل من x، مثلاً:

(%i13) random(100);(%o14) 85

(%i14) random(12.8);(%o15) 3.228657621572876

حل معادلات ذات متغير وحل نظام من المعادلات الخطية

يمكن حل معادلات عبر الأمر (solve)، ويمكن حل المعادلة من أي درجة، مثال لحل معادلة من الدرجة الثانية:

(%i15) solve(x^2-6*x+5=0,x);(%o16) [x=1,x=5]

يمكن تغيير اسم المتغير كما يلي:

(%i16) solve(v^2-6*v+5=0, v); (%o17) [v=1,v=5]

تستخدم نفس الأمر لحل نظام من المعادلات الخطية، كما يلي مثال لحل نظام معادلتين بمتغييرين:

(%i17) solve([x-4*y=0, x+12*y=4], [x,y]);(%o18) [[x=1,y=1/4]]

رسم المنحنيات

يمكن لبرنامج ماكسيما رسم منحنيات الدوال ثنائية الأبعاد وثلاثية الأبعاد باستخدام الأمرين (plot2d) والأمر (plot3d)، مثال لرسم منحى دالة ثنائي الأبعاد:

(%i18) plot2d(2*x^3-2*x^2+1, [x, -10, 10]);

ويكون الناتج عبارة عن شكل رسومي حيث يستخدم برنامج ماكسيما برنامج (gnuplot) المجاني لرسم المنحنيات، وتظهر النتيجة في الصورة بالأسفل.

وعليك إدخال الفترة التي يتم الرسم عليها في المثال السابق الفترة كانت من -10 إلى 10. وكمثال لرسم منحى دالة ثلاثية الأبعاد:

(%i19) plot3d(x^2+y^2, [x, -10, 10], [y, -10, 10]);

والناتج هو منحنى الدالة السابقة مرسومة بنفس البرنامج السابق، ويمكن تحرك الصورة وتغيير وضعها بسحبها بالماوس، ويظهر المنحنى كما في الصورة التالية:

وكما في السابق يجب عليك وضع فترة كل متغير في الأمر.

النهايات

برنامج ماكسيما يمكنه حساب النهايات للدوال باستخدام الأمر (limit)، ومثال بسيط لاستخدام الأمر limit هو كالتالي:

(%i20) limit(x^2,x,50);(%o19) 2500

المسألة البسيطة هذه توضح كيفية استخدام الأمر limit، حيث يتطلب البرنامج ثلاثة مدخلات على الأقل، وهم الدالة (x^2) والمتغير (x) والنهاية التي يصبو لها المتغير (50)، مثال آخر يوضح استخدام الأمر لإكتشاف النهاية لدالة لها نهاية مختلفة من اليمين واليسار:

(%i21) limit((1/(1+2^(-1/x))), x, 0);(%o20) und

في المثال السابق كانت النهاية غير معرفة (und) لأن النهاية من اليمين تختلف عن النهاية من اليسار، ولإكتشاف النهاية من الجهتين، يمكن إضافة (plus) و (minus) لمعرفة النهاية من اليمين واليسار على الترتيب، وهذا المثال يوضح ذلك:

(%i22) limit((1/(1+2^(-1/x))), x, 0, plus);(%o21) 1(%i23) limit((1/(1+2^(-1/x))), x, 0, minus);(%o22) 0

ويظهر عدم اتصال الدالة عند الصفر حيث من اليمين لها النهاية 1 ومن اليسار لها النهاية 0، ويظهر هذا جلياً برسم منحنى الدالة باستخدام الأمر (plot2d)، كما يلي:

(%i24) plot2d((1/(1+2^(-1/x))), [x, -5, 5]);

التفاضل

يمكن لبرنامج ماكسيما القيام بعمليات مثل التفاضل مثل حساب المشتقة، باستخدام الأمر (diff)، مثال على ذلك:

(%i25) diff(x^2+1,x);(%o23) 2*x

كما يمكن حساب المشتقة النونية الدالة (مشتقة من درجة أعلى من واحد) بتحديدها في الأمر:

(%i26) diff(x^4+x^3+2*x, x, 3);(%o24) 24 x+6

حيث في المثال السابق قمنا بتحديد درجة المشتقة للدرجة الثالثة.

التكامل

يمكن القيام بالتكامل المحدد وغير المحدد عبر الأمر (integrate)، ولتوضيح كيفية استخدام الأمر، يمكن الإطلاع على المثال التالي:

(%i27) integrate(cos(x), x);(%o25) sin(x)

في المثال السابق تم حساب تكامل غير محدد للدالة cos x للمتغير (x)، وأعطي الناتج ((sin (x)، ولكن لحساب تكامل محدد يجب تحديد فترة التكامل، كما في المثال التالي:

(%i28) integrate(cos(x), x, %pi/2, -%pi/2);(%o26) -2

في المثال السابق تلاحظ تحديد فترة التكامل في الأمر integrate باستخدام الثابت ط (pi%).

حساب وتوليد المجموع والضرب

يمكن حساب المجموع لتعبير رياضي أو لدالة (f) لمتغير (x) لعدد من المدخلات (L) باستخدام الأمر (lsum)، وذلك كالتالي:

(%i29) f(x):= x^2;(%o27) f(x):=x^2(%i30) lsum(f(x), x, [1, 2, 3, 4, 5]);(%o27) 55

كم يظهر في المثال السابق فإن المدخلات هي (L = 1, 2, 3, 4, 5) والدالة المعرفة في الأمر (i29) للمتغير (x)، ليكون ناتج الجمع هو 55.

ولكن لتوليد قائمة من الأرقام بشكل آلي يمكن استخدام الأمر (makelist)، مثال يوضح ذلك كما يلي:

(%i31) l : makelist(x, x, 1, 10);(%o28) (l) [1,2,3,4,5,6,7,8,9,10]

حيث قمنا بتوليد عدد 10 أرقام من 1 وحتى 10، ويمكن استخدام الأمر makelist لتوليد أعداد بطرق عديدة، ومثال على ذلك:

(%i32) l2: makelist(2^i+3^(2*i), i , 1, 9);(%o29) (l2) [11,085,737,6577,59081,531505,4783097,43046977,387421001]

ويمكن استخدام القائمة في حساب المجموع باستخدام الرمز الخاص بالمجموعة، مثلاً:

(%i33) lsum(f(x), x, l2);(%o30) 12309643838285959594

حيث استخدمنا قائمة الإعداد (l2) التي تم توليدها في الأمر (i32) ليتم حساب المجموع للدالة (f).

كما يمكن استخدام الأمر (sum) لحساب المجموع وما يميز هذا الأمر عن الأمر lsum هو أمكانية توليد قائمة من الأمر نفسه، حيث لا يقبل إدخال القائمة بشكل يدوي أو عبر توليدها بالأمر mkaelist، ولكن القائمة المولدة باستخدام الأمر sum هي قائمة من الأعداد الصحيحة فقط مثلا من 1 إلى 10 أو من -9 إلى 9 وهكذا، مثال يوضح ذلك:

(%i34) sum(x^2, x, -9, 9);(%o31) 570

يمكن استخدام الأمرين sum و lsum لتوليد مجموع رمزي وليس عددي فقط، مثال:

(%i35) lsum(x^(2*i)+2*x^i+4*x+1, i, [1, 2, 3]);(%o32) x^6+x^4+2*x^3+3*x^2+14*x+3

(%i36) sum(cos(i*x)+sin(i*x), i, 1, n);

كما يمكن بعدها القيام بعمليات على ناتج الجمع الرمزي، مثلاً للقيام بالتكامل للصيغة السابقة بالنسبة للمتغير (x):

(%i37) integrate(%,x);

كما يمكن بنفس آلية استخدام الأمر (sum) استخدام الأمر (product) وذلك لضرب قائمة من الأعداد، مثال على ذلك:

(%i37) product(x, x, 1, 7);(%o34) 5040

يمكن توليد ضرب بشكل رمزي كالتالي:

(%i38) product(x^i+x, i, 1, 3);(%o35) 2 x (x^2+x) (x^3+x)

يمكنك تبسيط الناتج كالآتي:

(%i39) factor(%);(%o36) 2*x^3 (x+1) (x^2+1)

متتالية تايلور

يمكن توليد متتالية تايلور باستخدام الأمر (taylor)، مثال لاستخدام الأمر لتوليد المتتالية للدالة (sin x) هو كالتالي:

(%i40) taylor(sin(x), x, 0, 9);

حيث أن عدد الحدود الناتجة نتحكم بها عن طريق تحديد فترة القوى وفي هذا المثال اخترنا القوى من 0 إلى 9

يمكن توليد المتتالية على شكل مجموع باستخدام الأمر (powerseries)، وذلك كالتالي:

(%i41) (powerseries(sin(x), x, 0));

ويمكنك تحسين شكل المتتالية باستخدام الأمر (niceindices)، حيث يقوم بترتيب ترقيم الحدود (index) كالتالي:



(%42) niceindices((powerseries(sin(x), x, 0)));

المصفوفات

يتم تعريف مصفوفة باستخدام الأمر (matrix)، ويوضع كل صف في المصفوفة بداخل أقواس مربعة ([ ]) ويفصل بين كل صف باستخدام الفاصلة (،) وبداخل الصف يفصل بين كل أعضاء الصف باستخدام الفاصلة كذلك، مثال يوضح تعريف مصفوفة (M):



(%i43) M : matrix([1, 2, 3], [4, 5, 6], [7, 8, 9]);

يتم انشاء مصفوفة قطرية، عبر الأمر (diagmatrix)، ويقوم الأمر بإنشاء مصفوفة مربعة (n×n) تحتوي على على (x) في قطر المصفوفة وما خلا القطر يحتوي على أصفار، مثال:

(%i44) D_mat : diagmatrix(3, x*y);

يتم إنشاء مصفوفة الوحدة عبر الأمر (ident)، مثال على هذا:

I : ident(3);

ايجاد منقولة المصفوفة يتم عبر الأمر (transpose)، مثال يوضح ذلك:

(%i46) M2 : transpose(M);

إضافة صف للمصفوفة يتم عبر الأمر (addrow) وإضافة عمود عبر الأمر (addcol)، مثال يوضح ذلك:

(%i47) M3 : addcol(M, [x, y, z]);

(%i48) M4: addrow(M, [a, b, c]);

حساب المحدد للمصفوفة المربعة يتم عبر الأمر (determinant)، مثال على ذلك:

(%i47) R : matrix([1, 0, 1],[x, 3, 4],[0, 0, y])$

       d : determinant(R);



(d) 3*y

حساب القيم الذاتية (eigenvalues) يتم عبر الأمر (eivals)، مثال على ذلك:

(%i49) E : matrix([1, 1],[1, 1])$

       eivals(E);

(%o49) [[0,2],[1,1]]

ويتم حساب المتجه الذاتي للمصفوفة بالأمر (eivects)، مثال على ذلك:

(%i50) eivects(E);

(%o50) [[[0,2],[1,1]],[[[1,-1]],[[1,1]]]]

ضرب المصفوفات يتم عبر الأمر (innerproduct)، مثال يوضح ضرب مصفوفة (I) بمصفوفة (R):

(%i55) I : matrix([1, 2], [3, 4])$

       R : matrix([1, 2])$

       A : innerproduct(I, R);

الأعداد المركبة

يتم الإشارة إلى العدد التخيلي باستخدام (i%) حيث يمكن كتابة عدد مركب بالشكل التالي:

(%i59) 1 + %i*4;

ويمكن القيام بالعمليات على الأعداد المركبة مثل الجمع والضرب والطرح والقسمة، مثلاً:

(%i62) A : (1 + %i*4)^2$

       B : (1 + %i*4)$

       C : expand(A + B);

       D : expand(A * B);

       E : expand(A - B);

       F : expand(A / B);

       (C) 12*%i-14

       (D) -52*%i-47

       (E) 4*%i-16

       (F) 4*%i+1

ستلاحظ استخدامنا للأمر (expand) لفك الأقواس وتبسيط الشكل، حيث يمكن استخدام كل أدوات التبسيط التي تستخدم للمعادلات الحقيقية لتبسيط المعادلات المركبة.

حساب التمثيل القطبي أو الهندسي للعدد المركب يتم عبر إيجاد القيمة المطلقة للعدد المركب باستخدام الأمر (cabs) والزاوية عبر الأمر (carg) مثال على هذا حساب الصورة القطبية للعدد المركب (B) المعرف مسبقاً:

(%i62) r : cabs(B);

       theta: carg(B);

(%o59) (r) sqrt(17)

       theta) atan(4

كما يمكن حساب كلا القيمتين باستخدام أمر  واحد وهو (polarform)، مثال:

(%i63) P : polarform(B);

حساب العدد المركب في الشكل الجبري باستخدام الأمر (rectform)، مثال على ذلك:

(%i64) C : (1+4*%i) / (6 - 3*%i)$

       rectform(C);

(%o62) (3*%i)/5-2/15

المعادلات التفاضلية

لحل المعادلات التفاضلية يجب عليك أن تعرف طريقة كتابتها أولاً، لكتابة معادلة تفاضلية ستحتاج للأمر (diff') والذي يختلف عن الأمر (diff) الذي قمنا باستخدامه سابقاً أنه يقوم بإخراج التفاضل بشكل رمزي دون القيام بعملية التفاضل وإنتاج حل نهائي، مثال يوضح ذلك:

(%i66) diff(y+x+x^2,x);

(%o63) 2*x+1

(%i67) 'diff(y+x+x^2,x);

ويستخدم الأمر (ode2) معادلات تفاضلية من الدرجة الأولى أو الثانية، مثل يوضح طريقة استخدام هذا الأمر:

(%i68) ode2(x+2*'diff(y,x) = 2 ,y ,x);

(%o65) y=%c-(x^2/2-2*x)/2

ويأخذ الأمر (ode2) المعادلة التفاضلية المراد حلها ثم المتغير التابع (y) ثم المتغير المستقل (x) بنفس الترتيب هذا، والحل يحتوي على ثابت الاشتقاق (c%).

تحويل لابلاس

يمكن القيام بمسائل تحويل لابلاس عبر الأمر (laplace)، مثال على استخدام الأمر:

(%i69) laplace(sin(t), t, s);

(%o66) 1/(s^2+1)

يأخذ الأمر الدالة المراد إيجاد تحويل لابلاس لها ((sint (t) ومتغير الدالة (t) ومتغير التحويل (s).

متسلسلة فورييه

لحل متسلسلة فورييه لدالة معينة يتوجب أولاً تحميل مستودع فورييه على برنامج ماكسيما ويتم ذلك عن طريق الأمر (load)، كما يلي:

load("fourie") $

بعد ذلك نستخدم الأمر (fourier)، للحصول على معاملات فورييه للدالة المراد تحليلها، مثلاً للحصول على معاملات فورييه للدالة (sin (x) + 1) في الفترة (-1 ، 1) نقوم بالتالي:

(%i70) fourier(sin(x)+1, x, 1);

ستلاحظ أن في الناتج الأخير (o79) فإن المعاملات تم ترتيبها داخل قائمة ([ ]) و سنستخدم هذه القائمة في كتابة متسلسة فورييه باستخدام الأمر (fourexpand)، كما يلي:

(%i80) fourexpand(%o70, x, 1, 2);

برامج مشابهة لبرنامج ماكسيما

  1. برنامج جنو أوكتاف.
  2. برنامج فوتوماث للأندرويد.
  3. برنامج مايكروسوف ماثماتيكس.
  4. برنامج Scilab.
  5. برنامج SageMath.

المصادر

للحصول على البرنامج بإمكانك لتنزيل برنامج ماكسيما في نسخته الأخير عبر موقع داونزن من خلال الأضغط على زر التحميل في هذه الصفحة.

معلومات إضافية

  • الإصدار
    5.45.1s
  • التحديث
    2021-07-23
  • التنزيلات
    2.8K
  • الترخيص
    مجاني
  • حجم الملف
    133.5MB
  • متطلبات التشغيل
    Windows XP وأعلى

قوائم التطبيق