3.8. التكامل والتفاضل الرمزي باستخدام MATLAB

172

173174175176177178179180181

  • التكامل والتفاضل الرمزي باستخدام MATLAB

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

            ملاحظة مهمة: لقد قمنا بتصميم الأمثلة والتمارين والمسائل باستخدام الإصدار R2008a من MATLAB، والذي يستخدم نواة Maple من Maplesoft للرياضيات الرمزية. بدءا من الإصدار R2008b من MATLAB، أصبح اعتماد أداة الترميز على MuPAD. منذ منتصف الـ 2009، لم يعد بالإمكان تشغيل كافة الأمثلة والمسائل في هذا الكتاب بنجاح باستخدام الإصدارات الجديدة. إنّ شركة Mathworks القائمة على صنع MATLAB على علم بهذه المشكلة وتعمل على

الشكل 3.25 دارة المثال 3.8.

إصلاحها. عليك معرفة أنه في حال استخدامك لإصدارات أقدم من R2008a، فلن يكون باستطاعتك الحصول على النتائج ذاتها. جرب تشغيل ملف التعليمات (m-file) الخاص بنا قبل أن تصرف الكثير من الوقت في حل المسائل. نأمل في أن يكون معلمك قادرا على لفت انتباهك إلى النتائج التي يمكن توقعها من إصدار الـ MATLAB الموجود لديك.

            نحن نفترض في المراحل التالية أنك على علم مسبق ببيئة MATLAB. يوجد العديد من الدورات التعليمية التفاعلية على الانترنت في الموقع http://www.mathworks.com/academia/student_center/tutorials/
register.html
. وبجميع الأحوال، فيجب عليك أن تتمكن من كتابة تعليمات MATLAB الخاصة بالتمارين والمسائل بسهولة في هذا الفصل، وذلك عن طريق نمذجة حلك الخاص بعد كتابة الشيفرة الموجودة في أمثلتنا.

المثال 3.8  التكامل والتفاضل باستخدام أداة الرموز في MATLAB

أوجد معادلة كل من الكمونات الثلاثة الموضحة في الشكل 3.25 باستخدام MATLAB، علما أن  و:

(3.39)

قم أيضا برسم الخط البياني لكل من التيار والكمونات عندما يكون . (لقد تم اختيار هذه القيم من أجل سهولة توضيح قدرات MATLAB.) التيارات تقاس بالأمبير، والكمونات بالفولت، و  بالراديان، والزمن  بالثانية. ملاحظة: لقد تم تنفيذ هذا المثال بنجاح مع MATLAB R2008a, R2008b, R2009a.

الحل        في البداية، نستخدم الرموز لتعريف المقادير المختلفة (k, a, w, L, C)، ونرمز للتيار والكمونات بالرموز ix, vx, vL, vC. ومن ثم نعوض القيم الرقمية للرموز وتظهر النتائج كـ ixn, vxn, vLn, vCn. (تمت إضافة الحرف n إلى الرموز السابقة لتوضيح أنه تم تعويض القيم الرقمية للمقادير في المعادلات.

            يتم إظهار الأوامر بالخط العريض، والتعليقات بالخط العادي، واستجابة MATLAB بالخط الملوّن. يقوم MATLAB بالتغاضي عن التعليقات (كل ما يبدأ بالرمز %). سنقوم بتقديم الحل كما لو أننا ندخل كل أمر على حدة في نافذة الأوامر في MATLAB، لكن من الأفضل أن يتم وضع جميع هذه الأوامر في ملف (.m) ومن ثم تنفيذها كمجموعة واحدة من الأوامر.

            نبدأ من خلال تعريف المقادير على أنها عناصر رمزية في MATLAB، ونعرف التيار على أنه ix، ومن ثم نعوض القيم العددية للمقادير للحصول على ixn.

>> clear % لمسح مساحة العملي من الأعمال السابقة.

>> syms vx ix vC vL vxn ixn vCn vLn k a w t L C

>> % يجب أن تبدأ أسماء العناصر الرمزية بحرف

>> %وتحتوي فقط على أحرف أو أرقام

>> % الآن نقوم بتعريف معادلة التيار

>> ix=k*t^2*exp(-a*t)*sin(w*t)

ix =

k*t^2*exp(-a*t)*sin(t*w)

>> % ومن ثم نعوض قيم المقادير

>> ixn = subs(ix, [k a w], [3 2 1])

ixn=

3*t^2*exp(-2*t)*sin(t)

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

إذا قمنا باختبار هذه المعادلة ذهنيا (أو باستخدام بسيط للآلة الحاسبة) نجد أن التيار سيكون مساويا للصفر عند اللحظة ، ومن ثم تزداد قيمته بسرعة بعد تلك اللحظة، ذلك بسبب الحد ، ومن ثم يتناقص إلى قيم صغيرة نسبيا بعد اللحظة  وذلك بسبب الحد الأسّي “exp”. لهذا السبب، نقوم بتحديد المجال الزمني من 0 إلى 10 ثانية على المخطط البياني. نتابع في MATLAB:

>> % نقوم الآن برسم المخطط البياني للتيار

>> % وذلك بين اللحظتين 0 و 10 ثانية

>> ezplot(ixn,[0,10])

            تقوم هذه التعليمة بفتح نافذة جديدة مرسوم ضمنها المخطط البياني للتيار بالنسبة للزمن كما يوضح الشكل 3,26. كما هو متوقع، سيزداد التيار بسرعة بعد اللحظة 0، ومن ثم يتناقص إلى أن تصبح قيمته بالغة في الصغر عند اللحظة 10 ثانية. (لقد تم استخدام العديد من الأوامر في قائمة Edit، وذلك لتحسين شكل المخطط عند تضمينه في هذا الكتاب.)

            نحدد الآن كمون الوشيعة والذي يعطى بالعلاقة

نتعامل في هذه العلاقة مع المقادير a, k ,w على أنها ثوابت، وفيما يلي نكتب أوامر MATLAB المناسبة والنتائج:

>> vL=L*diff(ix,t) % المحارضة مضروبة بمشتق التيار بالنسبة للزمن

vL =

L*(2*k*t*exp(-a*t)*sin(w*t)-k*t*2*a*exp(-a*t)*sin(w-t)

+k*t^2*exp(-a*t)*cos(w*t)*w)

>> % يمكن تحسين شكل المعادلة السابقة بالأوامر التالية

>> vL=simple(vL);

>> pretty(vL)

(2sin(w t) – t a sin(w t) + t cos(w t) w) L k t exp(-a t)

يمكن كتابة هذه المعادلة بشكل رياضي أفضل كالتالي:

الشكل 3.26 المخطط البياني لـ  الذي قام MATLAB برسمه.

والتي يمكننا التأكد منها عن طريق إجراء التفاضل يدويا للطرف الأيمن من المعادلة 3,39 وضربها بـ L. الآن نقوم بحساب الكمون على طرفي المكثفة.

نعوض التيار من معادلته وقيمة الكمون البدائي فنحصل على العلاقة

وهي ليست عملية تكامل سهلة يمكن تنفيذها يدويا، لكن يمكننا تنفيذها بسهولة باستخدام MATLAB:

>> % مكاملة التيار بالنسبة للزمن ضمن المجال المحدد

>> vC=(1/C)*int(ix,t,0,t);

>> % نستخدم الفاصلة المنقوطة لمنع الجواب من الظهور

>> % وذلك لأن الجواب معقد وليس من السهل كتابته هنا

>> % الآن نقوم بإيجاد الكمون الكلي

>> vx = vC + vL;

>> % الآن نعوض القيم الرقمية للمقادير

>> vLn=subs(vL,[k a w L C],[3 2 1 0.5 1]);

>> vCn=subs(vC,[k a w L C],[3 2 1 0.5 1]);

>> vxn=subs(vx,[k a w L C],[3 2 1 0.5 1]);

>> % في النهاية نرسم الكمونات الثلاثة ضمن النافذة ذاتها

>> figure % تقوم بفتح نافذة جديد لهذا المخطط البياني

>> ezplot(vLn,[0,10])

>> hold on % تقوم بالحفاظ على النافذة المفتوحة

>> % وذلك لرسم المخططين التاليين على المحاور ذاتها

>> ezplot(vCn,[0,10])

>> ezplot(vxn,[0,10])

يوضح الشكل 3,27 المخطط البياني الناتج. (قمنا أيضا هنا باستخدام عدة أوامر من القائمة Edit لتغيير نسبة المحور العمودي وتهيئة المخطط البياني لوضعه في هذا الكتاب.)

            أوامر هذا المثال موجودة كملف .m اسمه Example_3_8 في ملفات MATLAB. (انظر الملحق F للحصول على المعلومات اللازمة للوصول إلى ملفات MATLAB.) إذا قمت بنسخ الملف ووضعه في مجلد مسار MATLAB على حاسبك، عندها يمكنك تشغيل الملف واختباره، كأن تدخل التعليمة التالية بعد تشغيل الـ m-file

>> simple(vC)
الشكل 3.27 المخططات البيانية للكمونات في المثال 3.8
الشكل 3.28 تابع الخطوة الواحدية.

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

التوابع متعددة التعريف في MATLAB

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

(3.40)

يبين الشكل 3.28 تابع الخطوة الواحدية. يعرف هذا التابع في الرياضيات وMATLAB باسم تابع خطوة Heaviside

الشكل 3.29 تأخذ المعادلة  القيمة الواحدية فقط عندما يكون

تكريما لـ Oliver Heaviside، وهو مهندس كهربائي قديم كان يحترف تحليل الدارات الكهربائية وقام بصياغة العديد من المصطلحات التي نستخدمها في يومنا هذا، مثل التحريضية، والسعة، والممانعة، وغيرها الكثير. [عندما  فإن  غير معرّف، وذلك لعدم وجود قيمة فيزيائية مهمة له.]

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

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

المثال 3.9  مكاملة مفاضلة التوابع المستمرة متعددة التعاريف

نعبر عن التيار المار من خلال مكثفة سعتها 0.5 ميكروفاراد بتابع متعدد التعاريف كالتالي

قم بكتابة معادلة وحيدة لـ  باستخدام تابع الخطوة الواحدية. ثم استخدم MATLAB لرسم التيار من أجل ، وحدد هبوط الجهد على طرفي المكثفة كتابع للزمن وقم برسمه على مخطط بياني. افرض أن قاعدة المرجع المجهول محققة بالنسبة لكل من الجهد والكمون. (أي أن مرجع التيار يدخل المكثفة من المرجع الموجب للكمون.) (ملاحظة: لقد تم تنفيذ هذا المثال بنجاح باستخدام MATLAB R2008a.)

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

لاحظ أن الحد  له قيمة واحدية في الفترة بين 0 و 2 ميللي ثانية فقط، والحد  له قيمة واحدية في الفترة بين 2 و 4 ميللي ثانية فقط، وهكذا. أي أن كل حد من توابع الخطوة الواحدية يعبر عن جزء من التابع متعدد التعاريف.

            تظهر المعادلة بشكل مطابق في MATLAB، لكن يتم التعبير عن  على أنه . فيما يلي التعليمات التي تقوم بتعريف التيار ورسم مخططه البياني:

الشكل 3.30 تيار المكثفة بالنسبة للزمن كما يظهر في المخطط البياني على MATLAB.
>> clear

>> syms t iC vC % تعريف هذه المتحولات الثلاثة على أنها عناصر رمزية

>> iC = 2.5*t*(heaviside(t) – heaviside(t-2e-3)) + …

5e-3*(heaviside(t-2e-3) – heaviside(t-4e-3)) + …

      ((-10e-3)*sin(500*pi*t))*(heaviside(t-4e-3) – heaviside(t-6e-3));

>> ezplot(iC, [-2e-3 8e-3])

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

بالمتابعة في MATLAB:

>> figure % ارسم المخطط البياني للكمون في نافذة جديدة

>> vC=2e6*int(iC,t,0,t); % الكمون يساوي مقلوب السعة مضروبة بتكامل التيار

>> ezplot(vC, [-2e-3 8e-3])

الشكل 3.31 كمون المكثفة بالنسبة للزمن كما يقوم MATLAB برسمها.

يظهر الشكل 3.31 المخطط البياني الناتج. يوجد ملف m-file (اسمه Example_3_9) يحتوي على التعليمات المدخلة لهذا المثال، ويمكن رؤيته في حافظة الـ MATLAB. (انظر الملحق F لمعرفة كيفية الدخول إلى ملفات الـ MATLAB.)

التمرين 3.11      استخدم MATLAB للعمل على المثال 3.2 والحصول على مخططات مثل التي في الشكل 3.5.

الجواب   فيما يلي تعليمات الـ MATLAB متضمنة بعض الشرح:

clear % تفريغ مساحة العمل

نحاول ألا نستخدم i كرمز للتيار %

% وذلك لأننا نستخدمها فقط كالجذر التربيعي لـ -1 في ماتلاب

ولذلك سنستخدم Ic كرمز لتيار المكثفة %

syms t iC qC vC % تعريف العناصر الرمزية

iC = 0.5*sin((1e4)*t);

ezplot(iC, [0 3*pi*1e-4])

qC=int(iC,t,0,t); % الشحنة تساوي تكامل التيار

figure % ارسم الشحنة في نافذة جديدة

ezplot (qC, [0 3*pi*1e-4])

vC = 1e7*qC;

figure % ارسم الكمون في نافذة جديدة

ezplot(vC, [0 3*pi*1e-4])

ستكون المخططات البيانية مشابهة كثيرا لتلك الموجودة في الشكل 3.5. يمكن إيجاد التمرين كملف m-file (اسمه Exercise_3_11) في مجلد MATLAB.

التمرين 3.12       استخدم MATLAB لعمل المثال 3.3 ورسم المخططات البيانية الموجودة في الشكل 3.6. استخدم تابع خطوة Heaviside في كتابة .

الجواب   فيما يلي تعليمات الـ MATLAB متضمنة بعض الشرح:

clear % تفريغ مساحة العمل

نحاول ألا نستخدم i كرمز للتيار %

% وذلك لأننا نستخدمها فقط كالجذر التربيعي لـ -1 في ماتلاب

ولذلك سنستخدم Ic كرمز لتيار المكثفة %

syms t vC iC pC wC % تعريف العناصر الرمزية

vC = 1000*t*(heaviside(t) – heaviside(t-1) + …

     1000*(heaviside(t-1) – heaviside(t-3)) + …

     500*(5-t)*(heaviside(t-3) – heaviside(t-5));

Ezplot(vC, [0 6])

iC = (10e-6)*diff(vC, ‘t’); % التيار يساوي السعة مضربة بمشتق الكمون

figure % ارسم التيار في نافذة جديدة

ezplot(iC, [0 6])

pC = vC*iC;

figure % ارسم الاستطاعة في نافذة جديدة

ezplot(pC, [0 6])

wC = (1/2)*(10e-6)*vC^2;

figure % ارسم الطاقة في نافذة جديدة

ezplot(wC, [0 6])

ستكون المخططات البيانية شبيهة بتلك التي في الشكل 3.6. يوجد ملف m-file (اسمه Exercise_3_12) في مجلد MATLAB. (انظر الملحق F لمعرفة مكان هذا المجلد.) لقد قمنا بتطبيق هذه التعليمات بنجاح باستخدام الإصدارات التالية R2008a, R2008b, R2009a.

 

Advertisements

اترك رد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

شعار وردبرس.كوم

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   /  تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   /  تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   /  تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   /  تغيير )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d مدونون معجبون بهذه: