Warning: Only variables should be passed by reference in ..../includes/class_postbit.php(345) : eval()'d code(371) : runtime-created function on line 1

Warning: Only variables should be passed by reference in ..../includes/class_postbit.php(345) : eval()'d code(371) : runtime-created function on line 1

Warning: Only variables should be passed by reference in ..../includes/class_postbit.php(345) : eval()'d code(371) : runtime-created function on line 1

Warning: Only variables should be passed by reference in ..../includes/class_postbit.php(345) : eval()'d code(371) : runtime-created function on line 1

Warning: Only variables should be passed by reference in ..../includes/class_postbit.php(345) : eval()'d code(371) : runtime-created function on line 1
حل المعادلات التفاضلية بأستخدام الماتلاب

 

الملاحظات
صفحة 1 من 4 1234 الأخيرةالأخيرة
النتائج 1 إلى 10 من 32

الموضوع: حل المعادلات التفاضلية بأستخدام الماتلاب

كيفية حل معادلة تفاضلية صريحة من الدرجة الاولى ODE بأستخدام الماتلاب :- الكل يعلم مدى أهمية المعادلات التفاضلية في الهندسة فنحن لانستطيع وصف أي نظام الا بكتابة معادلات

  1. #1 Thumbs up حل المعادلات التفاضلية بأستخدام الماتلاب 
    تاريخ التسجيل
    Oct 2006
    المشاركات
    362
    Thumbs Up
    Received: 4
    Given: 0

    كيفية حل معادلة تفاضلية صريحة من الدرجة الاولى ODE بأستخدام الماتلاب :-

    الكل يعلم مدى أهمية المعادلات التفاضلية في الهندسة فنحن لانستطيع وصف أي نظام الا بكتابة معادلات الحركة التي تعطينا فكرة عن سلوك النظام عند تعرضه لمختلف المؤثرات الخارجيه, هذه المعادلات تكون بالاساس معادلات تفاضلية. ولمعرفة سلوك النظام يجب علينا إيجاد الحلول لهذه المعادلات .
    توجد معادلات تفاضليه من مختلف الدرجات والسبب لأننا عندما نتعامل مع الانظمه بشكل عملي فلا يوجد بما يسمى نظام من درجة واحدة one degree of freedom وإنما الانظمة الحقيقية تتكون من عدد غير متناهي من الدرجات .
    بالطبع إن كتابة معادلات الحركة لهذه الانظمة ليس بالسهولة التي نتصورها فضلا عن حلول هذه المعادلات التي تصف النظام ولتسهيل الامر نضطر لأستخدام طرق تقريبيه لكتابة معادلات الحركة ومن هذه الطرق التقريبية والمقنعه جداً هي الـ finite element analysis حيث تعتمد الطريقة على تقسيم الجسم لعدد من الـ elements وكتابة المعادلات لكل جزء ثم تجميع المعادلات سوية لينتج لدينا system of equations يصف النظام بشكل كامل .إن المعادلات الناتجة سوف تكون على شكل معادلات من الدرجة الاولى وعند معرفة الحلول لهذه المعادلات يمكننا معرفة سلوك النظام بالكامل .
    للأنظمة البسيطة نستخدم مايسمى state space representation وهي طريقة تحول المعادلات التفاضلية الى معادلات بسيطة من الدرجة الاولى ويكون الناتج في نهاية الامر أيضا معادلات من الدرجة الاولى .
    سوف نشرح حل هذه المعادلات ODE – Ordnary Differential Equation بأستخدام الماتلاب . لنأخذ مثال بسيط وهو نظام يتكون من كتلة وسبرنك ودامبر كما موضح بالشكل :-


    المعادلات التفاضلية بأستخدام الماتلاب sysnj4.jpg
    المعادلات التفاضلية بأستخدام الماتلاب eqncm2.jpg

    مايهمنا الان هو الناتج النهائي أعلاه وبحل المعادلات سوف تكون النتيجة السرعة والازاحة للكتلة المتحركة . لاحظ أن أي نظام ومهما كان معقد يمكن كتابة معادلاته بنفس الصيغه .

    خطوات الحل
    :-

    بأستخدام الماتلاب سوف نحتاج ملف لكتابة البرنامج الرئيسي وملف آخر لكتابة الـ function التي تصف النظام بـ state space بعدها يتم إستدعاء الـ function من البرنامج الرئيسي .
    -أفتح ملف جديد m-file وعرف المعادلات كالاتي :
    function zdot=oscillator(t,z) % definition of the function
    global m k
    d = 2; % [Ns/m]damping coefficient
    zdot = [(-d/m)*z(1)+(-k/m)*z(2);1*z(1)+0] % output

    نلاحظ أن الـ function فيها مدخلين z,t والناتج هو zdot وهو متجه من مركبتين كما عرفناه مسبقا .


    في البرنامج الرئيسي حيث يتم أستدعاء الـfunction وحلها :-


    clear,clc
    global m k
    m = 1; % [kg]
    k = 4; % [N/m]
    tspan =0:0.1:10; % integration time
    z0 = [0 ; 1]; % arbitrary initial values, z0=[zdot;z]
    [t,z]=ode45('oscillator',tspan,z0);
    plot(t,z(:,1)); grid on
    title('Velocity of the oscilating mass')
    xlabel('Time(s)')
    ylabel('Velocity')
    figure,plot(t,z(:,2)); grid on
    title('Displacement of the oscilating mass')
    xlabel('Time(s)')
    ylabel('Displacement')

    الايعاز المستخدم لحل المعادلات هو ODE45 وهو سهل الاستخدام وكل ماعليك فعله هو إستدعاء الدالة وإعطاء زمن التكامل و initial conditions .

    بعد تنفيذ البرنامج يمكننا مشاهدة الحل وسوف يكون كما بالشكل أدناه ويمكن مقارنة الحل العددي الذي أستخدمناه مع الحل التحليلي حيث أننا نعرف مسبقا أن حل المعادلات السابقه هو : -

    المعادلات التفاضلية بأستخدام الماتلاب analysolgc6.jpg
    المعادلات التفاضلية بأستخدام الماتلاب plot1lr9.jpg
    المعادلات التفاضلية بأستخدام الماتلاب plot2qf6.jpg


    أرجو أن يكون الموضوع مفيد
    الموضوع في الملف المرفق





    مواضيع ذات صلة



    0 Not allowed!


    الملفات المرفقة
    رد مع اقتباس  

  2. #2  
    تاريخ التسجيل
    Sep 2008
    المشاركات
    30
    Thumbs Up
    Received: 0
    Given: 0
    مشكوررررررررررررر لك


    0 Not allowed!


    رد مع اقتباس  

  3. #3  
    تاريخ التسجيل
    Mar 2007
    المشاركات
    511
    Thumbs Up
    Received: 9
    Given: 12
    مشـــــــــــــــــكور


    0 Not allowed!


    رد مع اقتباس  

  4. #4  
    تاريخ التسجيل
    May 2008
    المشاركات
    535
    Thumbs Up
    Received: 6
    Given: 33
    بارك الله فيك يا أخي


    0 Not allowed!


    رد مع اقتباس  

  5. #5  
    تاريخ التسجيل
    Aug 2006
    المشاركات
    47
    Thumbs Up
    Received: 0
    Given: 0
    بارك الله بكم


    0 Not allowed!


    رد مع اقتباس  

  6. #6  
    تاريخ التسجيل
    Sep 2007
    المشاركات
    25
    Thumbs Up
    Received: 0
    Given: 0
    شكراً جزيلاً لك على هذا الموضوع الرائع


    0 Not allowed!


    رد مع اقتباس  

  7. #7  
    تاريخ التسجيل
    Jul 2007
    المشاركات
    17
    Thumbs Up
    Received: 0
    Given: 0
    جزاك الله خيراااااااااا


    0 Not allowed!


    رد مع اقتباس  

  8. #8  
    تاريخ التسجيل
    Dec 2005
    المشاركات
    15
    Thumbs Up
    Received: 0
    Given: 0
    الف شكر اخي وفقكم الله


    0 Not allowed!


    رد مع اقتباس  

  9. #9  
    تاريخ التسجيل
    Sep 2006
    المشاركات
    22
    Thumbs Up
    Received: 0
    Given: 0
    جـــــــــــــــــــــــــــــزاك الله خيرااااااااااااااااا


    0 Not allowed!


    رد مع اقتباس  

  10. #10  
    تاريخ التسجيل
    Jan 2010
    المشاركات
    3
    Thumbs Up
    Received: 0
    Given: 0
    شكرا على هذا التقديم الرائع اخي


    0 Not allowed!


    رد مع اقتباس  

  
صفحة 1 من 4 1234 الأخيرةالأخيرة
RSS RSS 2.0 XML MAP HTML