কেন কোনও ওডির সংখ্যাসম্য সমাধান অস্থির ভারসাম্য থেকে দূরে সরে যায়?


15

আমি ডাবল-দুলের মতো সিস্টেমের ব্যবহার অনুকরণ করতে চাই। সিস্টেমটি হ'ল 2-ডিগ্রি অফ স্বাধীনতা রোবট ম্যানিপুলেটর যা কার্যকর হয় না এবং তাই, বেশিরভাগ মাধ্যাকর্ষণ দ্বারা প্রভাবিত ডাবল-দুলের মতো আচরণ করে। ডাবল-দুলের সাথে একমাত্র প্রধান পার্থক্য হ'ল এটি দুটি ভর এবং জড় বৈশিষ্ট্যগুলির সাথে তাদের ভর কেন্দ্রগুলিতে দুটি কঠোর সংস্থার সমন্বয়ে গঠিত।

মূলত, আমি ode45নিম্নলিখিত ধরণের ওডিইডিগুলির একটি সিস্টেম সমাধানের জন্য মতলবের অধীনে প্রোগ্রাম করেছি :

[10000এম110এম1200100এম120এম22][এক্স˙1এক্স˙2এক্স˙3এক্স˙4]=[এক্স2-ভী1-জি1এক্স4-ভী2-জি2]

যেখানে এক্স1 হ'ল অনুভূমিকের সাথে সম্মানযুক্ত প্রথম দেহের কোণ, এক্স2 হ'ল প্রথম দেহের কৌণিক বেগ; এক্স3 হ'ল প্রথম দেহের সম্মানের সাথে দ্বিতীয় দেহের কোণ এবং এক্স4 হ'ল দ্বিতীয় দেহের কৌণিক বেগ। সহগের সমস্তগুলি নীচের কোডে সুনির্দিষ্ট করা হয়েছে, আমি rhsএবং fMassতৈরি করা ফাংশনগুলিতে।

clear all
opts= odeset('Mass',@fMass,'MStateDependence','strong','MassSingular','no','OutputFcn',@odeplot);
sol = ode45(@(t,x) rhs(t,x),[0 5],[pi/2 0 0 0],opts);

function F=rhs(t,x)
    m=[1 1];
    l=0.5;
    a=[0.25 0.25];
    g=9.81;
    c1=cos(x(1));
    s2=sin(x(3));
    c12=cos(x(1)+x(3));
    n1=m(2)*a(2)*l;
    V1=-n1*s2*x(4)^2-2*n1*s2*x(2)*x(4);
    V2=n1*s2*x(2)^2;
    G1=m(1)*a(1)*g*c1+m(2)*g*(l*c1+a(2)*c12);
    G2=m(2)*g*a(2)*c12;

    F(1)=x(2);
    F(2)=-V1-G1;
    F(3)=x(4);
    F(4)=-V2-G2;
    F=F';     
end

function M=fMass(t,x)
    m=[1 1];
    l=0.5;
    Izz=[0.11 0.11];
    a=[0.25 0.25];
    c2=cos(x(3));
    n1=m(2)*a(2)*l;
    M11=m(1)*a(1)^2+Izz(1)+m(2)*(a(2)^2+l^2)+2*n1*c2+Izz(2);
    M12=m(2)*a(2)^2+n1*c2+Izz(2);
    M22=m(2)*a(2)^2+Izz(2);
    M=[1 0 0 0;0 M11 0 M12;0 0 1 0;0 M12 0 M22];
end

আমি কীভাবে এক্স1 এর প্রাথমিক শর্তটি নির্ধারণ করেছি (অনুভূমিকের সাথে সম্মানের সাথে প্রথম দেহের কোণ) যাতে সিস্টেমটি সম্পূর্ণ উল্লম্ব অবস্থানে শুরু হয়। এইভাবে, যেহেতু কেবলমাত্র মহাকর্ষই অভিনয় করছে, তাই এর সুস্পষ্ট পরিণতি হ'ল সিস্টেমটি সেই অবস্থান থেকে মোটেও চলবে না।

দ্রষ্টব্য: নীচের সমস্ত গ্রাফিকগুলিতে, আমি সময়ের সাথে সম্মত এক্স1 এবং এক্স3 সমাধান প্লট করেছি ।

ODE45

আমি যখন সিমুলেশনটি 6 সেকেন্ডের সাথে চালিত করি, তখন আমি ode45কোনও সমস্যা ছাড়াই প্রত্যাশিত সমাধান পাই, সিস্টেমটি যেখানে রয়েছে সেখানেই রয়েছে এবং সরায় না:

এখানে চিত্র বর্ণনা লিখুন

যাইহোক, আমি যখন 10 সেকেন্ডের জন্য সিমুলেশনটি চালাই, সিস্টেমটি অযৌক্তিকভাবে চলতে শুরু করে:

এখানে চিত্র বর্ণনা লিখুন

ODE23

আমি তখন ode23সমস্যাটি বজায় রয়েছে কিনা তা দেখতে সিমুলেশনটি চালিয়েছি। আমি একই আচরণের সাথে শেষ করছি, কেবলমাত্র এই সময়টির পরিবর্তন 1 সেকেন্ড পরে শুরু হবে:

এখানে চিত্র বর্ণনা লিখুন

ODE15s

আমি তখন ode15sসমস্যাটি স্থির রেখেছি এবং না তা সিমুলেশনটি চালিয়েছি, 100 সেকেন্ডের মধ্যেও সিস্টেমটি স্থিতিশীল বলে মনে হচ্ছে:

এখানে চিত্র বর্ণনা লিখুন

ode15sode15sMaxStep0.01ode45ode23

এখানে চিত্র বর্ণনা লিখুন

সাধারণত, এই অনুকরণগুলির সুস্পষ্ট পরিণতিটি হ'ল সিস্টেমটি তার প্রাথমিক অবস্থানে থেকে যায় কারণ কোনও কিছুই এটিকে ঘৃণা করছে না। কেন এই বিচ্যুতি ঘটছে? এই ধরণের ব্যবস্থা প্রকৃতির বিশৃঙ্খলাযুক্ত হওয়ার সাথে কি এর কোনও যোগসূত্র রয়েছে? odeমতলব-এ ফাংশনগুলির জন্য এটি কি সাধারণ আচরণ ?


সমীকরণগুলি ছাড়াও, আমি মনে করি একটি পরিকল্পনাকারী প্রশ্নটি বি বুঝতে অনেক সহায়তা করবে।
nicoguaro

আপনি যদি এটি যথাযথ মনে করেন তবে আপনি একটি উত্তর গ্রহণ করতে পারেন (একটি সবুজ বোতাম আছে)।
এরটেক্সিম - মনিকা

আপনি বলবেন না, তবে আপনি চক্রান্ত করছেন বলে মনে করছেন x1এবং x3। (কিংবদন্তি বা বর্ণনা ছাড়াই গ্রাফ সম্পর্কে শুকনো মন্তব্য sertোকান)) (এর নিখুঁত মান) x2এবং এর লগারিদমগুলি প্লট করার চেষ্টা করুন x4
এরিক টাওয়ার

উত্তর:


15

আমি মনে করি দুটি প্রধান পয়েন্ট ইতিমধ্যে ব্রায়ান এবং এরটেক্সিম তৈরি করেছেন: আপনার প্রাথমিক মানটি একটি অস্থির ভারসাম্য এবং আপনার সংখ্যাসঙ্গী গণনাগুলি কখনই যথার্থরূপে সঠিক হয় না তা অস্থিরতাটিকে লাভবান করে তোলে।

এটি কীভাবে কার্যকর হয় তার আরও কিছুটা বিশদ দেওয়ার জন্য, একটি সাধারণ প্রাথমিক মান সমস্যা আকারে আপনার সমস্যা বিবেচনা করুন

Y˙(টি)=এম-1(টি,Y(টি))
Y(টি)=(এক্স1(টি),এক্স2(টি),এক্স3(টি),এক্স4(টি))

(টি,Y(টি))=[এক্স2-ভী1-জি1এক্স4-ভী2-জি2]

সঠিক গাণিতিক ক্ষেত্রে, আপনি থাকতেন(0,Y0)=0Y˙(0)=0~ যা প্রায় তবে বেশ শূন্য নয়।

আপনার কোডে, আপনি এটি গণনা করে পরীক্ষা করতে পারেন

norm(rhs(0,[pi/2 0 0 0]))

যা 6.191e-16 দেয় - প্রায় তবে ঠিক শূন্য নয়। কীভাবে এটি আপনার সিস্টেমের গতিশীলতায় প্রভাব ফেলবে?

Y0Y~0

তদতিরিক্ত, খুব অল্প সময়ের মধ্যে, আপনার সিস্টেমের সমাধানটি লিনিয়ারাইজড সিস্টেমের সমাধানের মতো দেখায় looks

Y˙(টি)=(0,Y0)+ +'(0,Y0)(Y(টি)-Y0)='(0,Y0)(Y(টি)-Y0)

'rhsY0(টি): =Y(টি)-Y0

˙(টি)='(0,Y0)(টি)

আমি হাতে হাতে জ্যাকবিয়ান গণনা করতে বিরক্ত করতে পারি না তাই আমি একটি ভাল আনুমানিকতা পেতে স্বয়ংক্রিয় বিভেদ ব্যবহার করেছি :

জে: ='(0,Y0)=[01009,8102,4525000012,452502,45250]

যাতে আপনার সমীকরণ হয়

˙(টি)=জে(টি),(0)=Y~0-Y0

এখন আমাদের একটি চূড়ান্ত পদক্ষেপ দরকার: আমরা জ্যাকবীয়দের একটি প্রাকৃতিক মূল্য পচিয়ে এটি গণনা করতে পারি

জে=প্রশ্নঃডিপ্রশ্নঃ-1

ডিজেপ্রশ্নঃ(টি): =প্রশ্নঃ-1(টি)

˙(টি)=ডি(টি),(0)=প্রশ্নঃ-10

ডি

˙আমি(টি)=λআমিআমি(টি),আমি(0)=আমি-এর তম উপাদান প্রশ্নঃ-10

আমি=1,2,3,4λ1=3,2485

1(টি)=1(0)3,2485টি

(0)=0(0)=প্রশ্নঃ-1(0)=01(0)=01(0)


16

π/2π/2


4
আপনি যদি রাষ্ট্রের পরিবর্তনশীলগুলি সাবধানে পর্যবেক্ষণ করেন (বৈজ্ঞানিক স্বরলিপিতে মুদ্রিত মানগুলি দেখে) আপনার ভারসাম্যহীনতা থেকে দূরে প্রাথমিক খুব ধীর গতিবিধি দেখতে সক্ষম হওয়া উচিত।
ব্রায়ান বোর্চারস

এটি উপলব্ধি করে এবং প্রকৃতপক্ষে, যখন আমি সিস্টেমটি একটি নীচের দিকে উল্লম্ব অবস্থানে (স্থিতিশীল ভারসাম্যের বিন্দু হিসাবে) শুরু করি তখন সিস্টেমটি মোটেও সরে যায় না, অন্তত 1000 সেকেন্ডের সিমুলেশনের জন্য যা আমি খুব দীর্ঘ সময়ের বিবেচনা করি consider ।
jrojasqu

6
এক্স1sin(0)cos(0)sin(pi/2)cos(pi/2)rhs(t,[0,0,0 0] == [0,0,0,0]

π/2

1
মনে রাখবেন যে সোজা ডাউন দিকটি যদি দ্বারা প্রতিনিধিত্ব না করা হয়θ=0 10-16

4

আপনার কার্যগুলিতে গণনা করা বাহিনীর উপাদানগুলি দেখুন।

π কম্পিউটার হুবহু এবং ট্রাইগ ফাংশন গণনা করার রুটিনগুলিও ঠিক নয়।

10-16

সিস্টেমের স্থানচ্যুতিটি এখনও খুব সামান্য হলেও সমস্ত হিসাবগুলি গোলাকার ত্রুটির মাধ্যমে অনেক নির্ভুলতা হারাবে (আপনি মতো গণনা করছেন)একটি=1.0 ;একটি=একটি+ +10-16) সুতরাং সিমুলেশনটিতে সিস্টেম "টপলস" হওয়ার আগে সময়ের পরিমাণটি নির্ভর করে আপনি কোন সংহতকরণ পদ্ধতিটি ব্যবহার করেছেন, কোন সময় আপনি কী অনুরোধ করেছেন ইত্যাদি ঠিক উপর নির্ভর করে etc.


4

প্রাথমিক অনুমানটি ছিল যে প্রাথমিক অবস্থানটি একটি স্থিতিশীল ভারসাম্য (অর্থাৎ সম্ভাব্য শক্তির ন্যূনতম) শূন্য গতিশক্তি নিয়ে ছিল এবং সিস্টেমটি ভারসাম্য থেকে দূরে সরে যেতে শুরু করে।
যেহেতু শারীরিকভাবে এটি ঘটতে পারে না (যদি আমরা শাস্ত্রীয় যান্ত্রিকগুলি বিবেচনা করি), তখন দুটি জিনিস আমার মনে আসে:

  1. প্রথমটি হ'ল সম্ভবত প্রাথমিক অবস্থানটি হ'ল: উভয় দুলটি উপরের দিকে নির্দেশ করছে (π/2 পরিবর্তে -π/2?), যা অস্থির ভারসাম্যের একটি বিন্দু;

  2. দ্বিতীয়টি হ'ল সম্ভবত আন্দোলনের সমীকরণগুলির সাথে কিছু ভুল আছে (সম্ভবত কোথাও একটি টাইপো?) আপনি দয়া করে স্পষ্টভাবে সমীকরণ লিখতে পারেন? সম্ভবত আপনি প্রতিটি পেনডুলামের প্রাথমিক অবস্থার ফাংশন হিসাবে কৌণিক ত্বরণকে প্লট করতে পারেন, শূন্য কৌণিক গতি ধরে রেখে অদ্ভুত কিছু আছে কিনা তা পরীক্ষা করে নিতে পারেন।


1
প্রকৃতপক্ষে, আমি সিস্টেমটি একটি wardsর্ধ্বমুখী উল্লম্ব অবস্থানে শুরু করেছি। অতএব, এটি অস্থিতিশীল ভারসাম্যের একটি বিন্দু। ব্রায়ান বোরচারের মন্তব্যটি আপনার সমস্যার উত্তরটি দিয়ে উত্তরটি পূর্ণ করেπ আনুমানিক যা সিস্টেমকে শেষ পর্যন্ত সেই অবস্থান থেকে সরিয়ে নিয়ে যায়।
jrojasqu

2
যাইহোক, কেবল মজাদার জন্য, আপনি যদি সিস্টেমটিকে অস্থিতিশীল উল্লম্ব অবস্থানটিতে রাখতে চান, তবে আপনি স্থানাঙ্কগুলির উত্স পরিবর্তন করতে পারেন কোণটি শূন্যের সমান দিকে উপরের দিকে রাখতে।
এরটেক্সিম - মনিকা

@ আর্টসিয়েম আরেকটি বিকল্প হ'ল পিনগুলিতে ছোট ঘর্ষণ শুরু করা যা সংখ্যাসূচক ত্রুটি খাবে।
সোভিল

@ এর্টক্সিম মজা করার জন্য, আমি স্থানাঙ্ক ব্যবস্থাকে পরিবর্তন করার চেষ্টা করেছি যাতে শূন্য কোণটি সিস্টেমটিকে উপরের দিকে দিকে তোলে। এটি এখানে সেরা প্যারামিটারাইজেশন। স্পষ্টতই সিস্টেমটি অনির্দিষ্টকালের জন্য wardsর্ধ্বমুখী অবস্থানে থাকে। তবে দোলনগুলি এখনও স্থির ভারসাম্য স্থানে (সরাসরি নীচের দিকে) স্থির (সিমুলেশনের 1000 সেকেন্ডের জন্য ন্যূনতম তবে সেখানে) উত্থিত হয় কারণ তখন সেখানে একটিপাপ(π)সম্ভাব্য শক্তি থেকে প্রাপ্ত শক্তি গণনা করা। সুতরাং আমি এই দৃ ins়তার সাথে জোর দিয়ে বলছি যে আমি যদি এটিকে দীর্ঘকাল অনুকরণ করি তবে সিস্টেমটি সেই অবস্থান থেকে বিচ্যুতিও শুরু করবে।
jrojasqu

যেহেতু শারীরিকভাবে এটি ঘটতে পারে না - আমরা একটি অস্থির ভারসাম্য রক্ষার অন্তর্দৃষ্টি দিয়ে, আমি কিছুটা এটিকে চ্যালেঞ্জ জানাই। শারীরিক সিস্টেমগুলি (খুব বেশি ঘর্ষণ ছাড়াই) অস্থির ভারসাম্যহীনতায় থাকে না। আরও সাধারণভাবে, আপনি যদি সত্যিকারের সিস্টেমগুলি অনুকরণ করেন তবে আপনি এড়াতে চাইবেন যে এটি দুর্ঘটনাক্রমে একটি অস্থির ভারসাম্য (যদিও এটি সেখানে পেয়েছিল) আটকে যায় - এটি একটি বৈশিষ্ট্য, কোনও বাগ নয়। (এটির ক্ষেত্রে কিছু বিরল ব্যতিক্রম রয়েছে যেমন ইমিউনোলজিতে অনির্দিষ্ট অবস্থা, যা একটি অস্থির ভারসাম্য বজায় রাখা যায়))
Wrzlprmft

0

ডাবল পেনডুলাম সম্পর্কে আপনার আরও অনুসন্ধান করা উচিত: এগুলিকে আমরা "বিশৃঙ্খলা ব্যবস্থা" বলে থাকি। যদিও তারা কিছু সহজ প্রাথমিক শর্ত থেকে শুরু করে সাধারণ নিয়ম অনুসরণ করে, সমাধানগুলি বেশ দ্রুত ডাইভারেজ করে। এই জাতীয় সিস্টেমের জন্য সংখ্যাসূচক সিমুলেশনগুলি করা সহজ নয়। সমস্যার আরও অন্তর্দৃষ্টি পেতে নীচের ভিডিওটি একবার দেখুন ।

সাধারণ বা ডাবল দুলের জন্য আপনি সিস্টেমের মোট শক্তির জন্য একটি সূত্র লিখতে পারেন। ধরে নেওয়া যে ঘর্ষণ শক্তিগুলি অবহেলিত, এই মোট শক্তি বিশ্লেষক সিস্টেম দ্বারা সংরক্ষিত। সংখ্যাগতভাবে এটি একটি সম্পূর্ণ অন্যান্য ইস্যু।

ডাবল দুলের চেষ্টা করার আগে, সহজ দুলটি চেষ্টা করে দেখুন। আপনি লক্ষ্য করবেন যে ছোট ক্রমের রানেজ-কত্তা পদ্ধতির জন্য সিস্টেমের শক্তি সংখ্যাবৃত্তের সিমুলেশনে বৃদ্ধি পাবে, ধ্রুবক স্থির হওয়ার পরিবর্তে (এটি আপনার সিমুলেশনে ঘটে যা ঘটে: আপনি কিছুতেই চলাফেরা করেন না)। এটি প্রতিরোধ করতে, উচ্চতর অর্ডার আরকে পদ্ধতিগুলি ব্যবহার করা যেতে পারে (ode45 অর্ডার 4 4; আরকে 8 এর আরকে আরও ভাল কাজ করবে)। "সিম্প্লেটিক পদ্ধতি" নামে আরও কিছু পদ্ধতি রয়েছে যা এমন ডিজাইন করা হয়েছে যে সংখ্যার সিমুলেশনগুলি শক্তি সংরক্ষণ করে। আপনার প্রাথমিককরণের তুলনায় শক্তি উল্লেখযোগ্যভাবে বৃদ্ধি পাওয়ার সাথে সাথে সাধারণভাবে আপনার সিমুলেশনটি বন্ধ করা উচিত।

এবং দ্বিগুণে যাওয়ার আগে সাধারণ দুলটি বোঝার চেষ্টা করুন।


2
যদিও এটি সিস্টেম বিশৃঙ্খলাযুক্ত হওয়ার বিষয় নয়। অ-বিশৃঙ্খল সিস্টেমে আপনার অস্থির সাম্যাবস্থাও থাকতে পারে, যেমন একক দুলটি "এর মাথায়" থাকে, এবং এটি প্রশ্নে বর্ণিত একই আচরণ প্রদর্শন করবে।
ড্যানিয়েল

1
এটিও সত্য নয় যে ক্ষুদ্র অর্ডারের আরকেএমের জন্য শক্তি বৃদ্ধি পায়: অন্তর্নিহিত ইউলার প্রথম আদেশ এবং ঠিক বিপরীত আচরণ দেখায়।
ড্যানিয়েল

@ বেনিবোগোসেল আপনি সিম্পিলিক পদ্ধতিগুলি উল্লেখ করেছেন যা আমার দৃষ্টি আকর্ষণ করেছে কারণ স্পষ্টতই, উদাহরণস্বরূপ, শক্তি সংরক্ষণ করা হয়নি। যাইহোক, আপনি কি এখানে নির্দিষ্ট কিছু লক্ষণীয় পদ্ধতি প্রয়োগ করতে পারেন?
jrojasqu

@ জ্রোজাস্কু আপনি কেন বলছেন যে আপনার সিস্টেমে শক্তি সংরক্ষণ করা হয়নি?
এরটেক্সিম - মনিকা

@ ইরটক্সিম যখন আমি প্রদত্ত আউটপুটগুলির সাথে সিস্টেমের মোট মেকানিকাল এনার্জি (গতিবেত + সম্ভাব্য শক্তি) গণনা করি তখন আমি ode45একটি মান পাই যা শূন্য দিয়ে শুরু হয়, তারপরে সময়ের সাথে বৃদ্ধি পায়। প্রথম সেকেন্ডে মানটি খুব সামান্য তবে তবুও এটি ধারাবাহিকভাবে শূন্য থেকে দূরে বৃদ্ধি পায়। আমি বিশ্বাস করি যে এটি উপরের উত্তরে যে বিষয়গুলি সম্বোধন করা হয়েছিল তার কারণেই (প্রায় কাছাকাছি হওয়া)πইত্যাদি))
jrojasqu
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.