шешімінің графигін салуда Maple жүйесін пайдалану
Дифференциалдық теңдеулердің (Коши есебінің немесе шектік есептің) сандық шешімдерін dsolve командасында type=numeric (немесе жай ғана numeric) параметрін көрсетіп қою қажет. Дифференциалдық теңдеудің шешімін көрсету командасының жалпы түрі мынадай болады:
dsolve(eq, vars, type=numeric, options),
мұндағы eq – теңдеудер, vars – белгісіз функциялардың тізімі, options – дифференциалдық теңдеуді сандық интегралдау әдісін көрсететін параметрлер. Maple жүйесінде мынадай тәсілдер пайдаланылады: method=rkf45 – 4-5-ретті Рунге-Кутт-Фельберг әдісі; method=dverk78 – 7-8 -ретті Рунге-Кутт әдісі; mtthod=classical – 3-ретті классикалық Рунге-Кутт әдісі; method=gear және method=mgear – бір қадамдық және көп қадамдық Гир әдісі.
Дифференциалдық теңдеудің сандық шешімінің графигін құру үшін odeplot(dd, [x,y(x)], x=x1..x2) командасы қолданылады да ондағы және сандық шешімнің функциясы ретінде dd:=dsolve({eq,cond}, y(x), numeric) командасы алынып, бұл командадан кейін квадраттық жақшаның ішінде айнымалыны және белгісіз функцияны [x,y(x)] түрінде, сонымен қатар график салынатын x=x1..x2 интервалды көрсетіп қояды.
Мысалдар қарастырайық. 1. Мынадай Коши есебінің сандық және жуық шешімін 6-ретті дәрежелік қатар түрінде табу керек болсын: .
Алдымен Коши есебінің сандық шешімін тауып алайық және оның графигін салайық.
> restart; Ordev=6:
> eq:=diff(y(x),x$2)-x*sin(y(x))=sin(2*x):
> cond:=y(0)=0, D(y)(0)=1:
> de:=dsolve({eq,cond},y(x),numeric);
de:=proc(rkf45_x)...end
Ескере кететіні: нәтиженің шығарылу жолында есепті шешу rkf45 әдісінің көмегімен шығарылғандығы жайлы мәлімет көрсетіледі. Қажетті мәліметтердің дұрыс шығарылуларын қамтамасыз ету үшін аралық командалардың арасын қос нүкте арқылы ажыратып отыру керек. Ал енді х айнымалысының нақты бір мәніндегі нәтижені шығару керек болған жағдайда, мысалы, х=0.5 мәні үшін нәтижесін алу үшін мынадай төмендегі команданы теру керек болады.
> de(0.5);
> with(plots):
odeplot(de,[x,y(x)],-10..10,thickness=2);
Ал енді Коши есебінің жуық шешімін дәрежелік қатар түрінде табайық және табылған сандық шешім мен дәрежелік қатар түрінде табылған шешімдердің бір біріне жуықтайтын мәндерінің графиктерін салып көрсетейік.
> dsolve({eq, cond}, y(x), series);
> convert(%, polynom):p:=rhs(%):
> p1:=odeplot(de,[x,y(x)],-2..3, thickness=2,
color=black):
> p2:=plot(p,x=-2..3,thickness=2,linestyle=3,
color=blue):
> display(p1,p2);
Дәрежелік қатардың мәні жуық шешім барынша жақындайтын мәндері шамамен -1 интервалында екені графиктен көрініп тұр.
2. Төменде көрсетілген дифференциалдық теңдеулер жүйесінің Коши есебі шешімдерінің графигін салу керек:
х'(t)=2y(t)sin(t) х(t) t,
y'(t)=x(t),
х(0)=1, y(0)=2.
> restart; cond:=x(0)=1,y(0)=2:
sys:=diff(x(t),t)=2*y(t)*sin(t)-x(t)-t,
diff(y(t),t)=x(t):
F:=dsolve({sys,cond},[x(t),y(t)],numeric):
with(plots):
p1:=odeplot(F,[t,x(t)],-3..7, color=black,
thickness=2,linestyle=3):
p2:=odeplot(F,[t,y(t)],-3..7,color=green,
thickness=2):
> display(p1,p2);
№20. Дифференциалдық теңдеулердің шешімін графиктік түрде
Достарыңызбен бөлісу: |