دورات هندسية

 

 

ضروري جدا........... سلسلة من المعادلات التفاضلية

النتائج 1 إلى 6 من 6
  1. [1]
    الشرقاوية
    الشرقاوية غير متواجد حالياً

    جديد

    تاريخ التسجيل: Sep 2008
    المشاركات: 5
    Thumbs Up
    Received: 0
    Given: 0

    ضروري جدا........... سلسلة من المعادلات التفاضلية

    السلام عليكم ورحمة الله...كل عام وأنتم بخير

    أنا مبتدأة في الماتلاب وعندي طلب ضروري ضروري جدا فأرجوا المساعدة كاتالي:
    أريد أن أعد برنامج لمعادلات تفاضلية من الدرجة الأولى حيث أن كل معادلة ترتبط بسابقتها (أي لدينا سلسلة) كما يلي:
    dm1/dt = - c1× m1
    dm2/dt = c1×m1 - c2×m2
    dm3/dt = c2×m2 - c3×m3
    dm4/dt = c3×m3 - c4×m4
    dm5/dt = c4×m4 - c5×m5
    dm6/dt = c5×m5 - c6×m6
    dm7/dt = c6×m6 - c7×m7
    dm8/dt = c7×m7 - c8×m8
    dm9/dt = c8×m8 - c9×m9
    dm10/dt = c9×m9 - c10×m10
    dm11/dt = c10×m10 - c11×m11
    dm12/dt = c11×m11
    حيث أن m1,m2,m3,............هي المطلوب إيجادها. t الزمن وهو متغير وندخله كمدى (من صفر وحتى زمن معين). c1,c2,c3,...............هي قيم ثابتة ندخلها كثوابت في البرنامج.

    والمطلوب من ذلك هو إيجاد حل المعادلات التفاضلية السابقة حيث أوجدنا حل المعادلات تلك يدويا وكانت أول معادلة كالتالي: (m1 = m01 × e(-c1×t
    و m01 ثابتة ندخلها في البرنامج.
    بعد ذلك نطبق أمر الرسم حيث m تمثل محور X و t تمثل محور Y فنلاحظ سلوك تلك المعادلات.


    مع شكري الجزيل وتقديري:)

  2. [2]
    ahmedmecha
    ahmedmecha غير متواجد حالياً
    عضو متميز
    الصورة الرمزية ahmedmecha


    تاريخ التسجيل: Oct 2006
    المشاركات: 365
    Thumbs Up
    Received: 5
    Given: 0
    وعليكم السلام ورحمة الله ... ورمضان كريم

    السؤال سهل لكن ماهي قيم الـ boundary conditions لكل معادلة ؟

    0 Not allowed!


    Imagination is more important than knowledge


  3. [3]
    الشرقاوية
    الشرقاوية غير متواجد حالياً
    جديد


    تاريخ التسجيل: Sep 2008
    المشاركات: 5
    Thumbs Up
    Received: 0
    Given: 0
    الشروط الحدية هنا:
    للمعادلة الأولى: عند t=0 فإن m1 = m01
    للمعادلة الثانية: عند t=0 فإن m2 = m02
    للمعادلة الثالثة: عند t=0 فإن m3 = m03
    وهكذا للمعادلات التي تليها.



    وشكرا لحرصكم...

    0 Not allowed!



  4. [4]
    الشرقاوية
    الشرقاوية غير متواجد حالياً
    جديد


    تاريخ التسجيل: Sep 2008
    المشاركات: 5
    Thumbs Up
    Received: 0
    Given: 0
    عذرا أخي الكريم هناك ملاحظة:
    حيث أننا نعتبر أنه عند t=0 فإن m02,m03,...........مساوية للصفر ماعدا m01 فإن لها قيمة معينة.

    وشكرا

    0 Not allowed!



  5. [5]
    ahmedmecha
    ahmedmecha غير متواجد حالياً
    عضو متميز
    الصورة الرمزية ahmedmecha


    تاريخ التسجيل: Oct 2006
    المشاركات: 365
    Thumbs Up
    Received: 5
    Given: 0
    الحل سيكون كالتالي :

    أعملي ملفين m-files أحدهما للبرنامج الرئيسي والاخر لكتابة الـ function .... في البرنامج الرئيسي يكون الـ code


    clear,clc
    global C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11
    C1 = input('value of C1 =');
    C2 = input('value of C2 =');
    C3 = input('value of C3 =');
    C4 = input('value of C4 =');
    C5 = input('value of C5 =');
    C6 = input('value of C6 =');
    C7 = input('value of C7 =');
    C8 = input('value of C8 =');
    C9 = input('value of C9 =');
    C10 = input('value of C10 =');
    C11 = input('value of C11 =');
    M01 = 5; % please choice a suitable value !!
    tspan = 0:0.1:10; % integration time
    M0 = zeros(12,1);
    M0(1) = M01; % first initial condition = M01
    [t,M] = ode45(@DiffEquations,tspan,M0);
    % some plots as example
    plot(t,M(:,1))
    hold on
    plot(t,M(:,3),'r')
    plot(t,M(:,6),'g')
    plot(t,M(:,9),'k')
    plot(t,M(:,12),'m')
    grid on
    title('plotting of some results')
    xlabel('time (s)')
    ylabel('value of M')
    legend('M1','M3','M6','M9','M12')
    hold off


    حيث يتم تعريف الثوابت C1,C2, .....etc وقيم الـ boundary conditions ويتم إستدعاء الدالة وحلها بطريقة Runge-Kutta .
    في الـ function يتم تعريف المعادلات التفاضليه كما يلي :

    function dM = DiffEquations(t,M)

    global C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11

    dM(1) = -C1*M(1);
    dM(2) = C1*M(1)- C2*M(2);
    dM(3) = C2*M(2)- C3*M(3);
    dM(4) = C3*M(3)- C4*M(4);
    dM(5) = C4*M(4)- C5*M(5);
    dM(6) = C5*M(5)- C6*M(6);
    dM(7) = C6*M(6)- C7*M(7);
    dM(8) = C7*M(7)- C8*M(8);
    dM(9) = C8*M(8)- C9*M(9);
    dM(10) = C9*M(9)- C10*M(10);
    dM(11) = C10*M(10)- C11*M(11);
    dM(12) = C11*M(11);

    dM = dM'; % to get column vector

    قومي بحفظ الملفين في الـ directory ونفذي البرنامج .
    الحل أيضا في المرفقات .. إذا كان لديك سؤال أنا بالخدمة.

    تحياتي

    0 Not allowed!


    الملفات المرفقة
    Imagination is more important than knowledge


  6. [6]
    الشرقاوية
    الشرقاوية غير متواجد حالياً
    جديد


    تاريخ التسجيل: Sep 2008
    المشاركات: 5
    Thumbs Up
    Received: 0
    Given: 0
    شكرا على حسن تعاونكم وحرصكم......

    0 Not allowed!



  
الكلمات الدلالية لهذا الموضوع

عرض سحابة الكلمة الدلالية

RSS RSS 2.0 XML MAP HTML