ПӘннің ОҚУ-Әдістемелік кешені (ПОӘК) «Қолданбалы программамен жабдықтау»



жүктеу 0.93 Mb.
Pdf просмотр
бет8/10
Дата27.04.2017
өлшемі0.93 Mb.
1   2   3   4   5   6   7   8   9   10

Жинақсыз  интегралдар  туралы.  Егер анықталған интегралдың мәні шексіздікке 

тең  болса,  ондай  интегралды  жинақсыз  интеграл  деп  аталық.  Егер  есептеп  отырған 

интеграл  жинақсыз  болса,  онда  редактор  қате  туралы  қабар  береді,  сол  қабармен  қатар 

интегралдау  операторы  қызыл  түспен  белгіленеді.  Кӛп  жағдайда  хабар  мына  түрде 

беріледі:  "Found  a  number  with  a  magnitude  greater  than  10



307

"  (Найдено  число, 

превышающее значение 10

307

 - 10

307

 санынан үлкен шама шықты) болмаса "Can't converge 

to  a  solution"  (Не  сходится  к  решению  –  шешіміне  жинақталмайды).  Ал  мұның  ӛзі 

шынтуайттап келгенде редактор интегралдың мәнінің шексіздікке тең екенін тапты деген 

сӛз (7.4 листингі). 

 

7.5-6  листингте  кӛрсетілгендей  символдық  процессор  интегралды  аналитикалық 



түрде  есептеуге  мүмкіндік  береді,  сонымен  қатар  ол  интегралды  параметрлік  түрде  де 

есептей алады, анықталмаған интеграл есептеуге де мүмкіндік береді.  

 

Егер  7.4  листингтегі  шектері  шексіздікке  тең  интегралды  (Infinite  Limit) 



алгоритмінен бӛлек алгоритммен есептеуге тырыссаңыз қате шешім аласыз (7.7 листингі). 

Интегралдың  мәні  шексіздік  ретінде  процессорда  алынған  санға  (10



307

)  жетпейтін  үлкен 

сан  беріп  тұр.  Егер  алгоритмді  редактордың  ӛзі  таңдаса  (AutoSelect)  ол  Infinite  Limit 

алгоритмін таңдаған болар еді. 

 

Еселік интегралдар. Еселіе интегралды есептеу үшін: 

 

Кәдімгі әдіспен интегралдау операторын енгізіңіз; 



 

Сәйкес  орынкӛрсеткіштерінің  орнына  бірінші  интегралдау  айнымалысының  аты 



мен осы айнымалы бойынша интегралдау шектерін қойыңыз; 

 



Интеграл  астындағы  функциия  енгізетін  орынкӛрсеткішіне  интегралдау 

операторын енгізіңіз; 

 

Алдындағы  әдіспен  екінші  интегралды  есептеу  айнымалысының  атын,  осы 



айнымалы  бойынша  интегралдау  шектерін  сәйкес  орынкӛрсеткіштеріне  енгізіңіз. 

Егер  интеграл  екі  еселі  болатын  болса  интеграл  астындағы  функцияның 

орынкӛрсеткішіне интеграл астындағы функцияны енгізесіз, ал интеграл екі еселік 

интегралдан  кӛп  еселі  болатын  болса  интеграл  астындағы  функцияның 



68 

 

орынкӛрсеткішіне  тағы  да  интегралдау  операторын  енгізіп  процесті  әрі  қарай 



жалғастыра береді. 

 

7.8 листингте шектері шексіздік болып келген екі еселі интегралды сандық әдіспен 



есептеу келтірілген.  

 

Еселік  интегралды  жазған  кезде  ӛте  ұқыпты  болған  жӛн,  интегралдау 



айнымалыларының,  интегралдау  шектерінің  орындарының  алмасып  кетпегеніне  кӛңіл 

аударыңыз.  Екі  еселі  интеграл  есептеу  7.9  листингте  кӛрсетілген.  Мұндағы  бірінші 

жолдағы  [а,b]  интегралдау  шектері  у  айнымалысына  қатысты,  ал  екінші  жолдағы  –  x 

айнымалысына қатысты. 

 

Дифференциалдау есептерін шығару

 

 

 



Mathcad  редакторының  кӛмегі  арқылы  кӛп  айнымалы  скалярлық  функцияның 

(айнымалылар  да,  функцияның  мәні  де  комплекс  сан  болуы  мүмкін)  1-5  ретті 

туындыларын есептеуге болады. Функцияның сингулярлық нүктелерінің тӛңірегінде ғана 

редактордың туынды табуы мүмкін болмай қалады. 

 

Редактордың  туынды  есептеудегі  дәлдігі  ӛте  зор.  Сонымен  қатар  қолмен 



туындысын есептегенде ұзақ уақыт алатын ӛте күрделі функциялардың туындысын да оп 

оңай есептей алады.  

 

Бірінші  ретті  туынды.f(х)  функциясының  берілген  нүктеде  бірінші  ретті 

туындысын табу үшін: 

 

Туынды есептелетінт нүктені енгізу керек, мысалы х:=1



 

Calculus (Вычисления)  панеліндегі  Derivative (Производная) пернесін басу  арқылы 

дифференциалдау  операторын  енгізіңіз  (перетақтай  арқылы  енгізгенде   

пернесін басады; 

 

Пайда болған орынкӛрсеткішіне (7.3 сурет) х аргументінен тәуелді функцияны f(х),  



х аргументінің атын енгізіңіз; 

 



Сандық шығару операторы <=> мен символдық шығару операторының <→> бірін 

енгізіңіз. 



69 

 

 



f(x)=cos(x)ln(x) функциясының туындысын табу мысалы 7.10 листингте келтірілген. 

 

Егер  сандық  дифференциалдау  қолданылып  отырса  туынды  есептелетін  нүктені 



енгізуді  ұмытпаңыз,  болмаса  ӛрнекке  кіріп  тұрған  функция  немесе  айнымалы 

анықталмады  деген  қате  туралы  ескерту  береді  (7.4  сурет).  Ал  егер  символдық 

дифференциалдау  әдісі  қолданылып  тұрса  онда  туынды  табу  керек  нүктені  кӛрсету 

міндетті емес. 

 

Әрине  басқа  операторлармен  жұмыс  істегендегідей  сияқты  функцияны  алдын  ала 



бӛлек  ӛрнекте  анықтап  алып  барып  оның  туындысын  сосын  есептеуге  болады  (7.11 

листингі).  Пайдаланушы  енгізген  функцияға да  дифференциалдау  операторын  қолдануға 

болады (7.12 листингі). 

 

Екі  листингің  бірінші  жолында  әуелі  f(x)=1/x  функциясы  анықталады.  7.11 



листингтің  содан  кейінгі  жолында  символдық  оператор  кӛмегімен  оның  туындысының 

аналитикалық ӛрнегі табылады, ал литстингтің қалған бӛлігінде 7.10 листингтағыдай әуілі 

сандық  түрде,  сосын  аналитикалық  түрде  х=0.1  нүктесіндегі  туынды  табылады.  7.12 

листингте  туындвының  кӛмегі  арқылы  пайдаланушының  функциясы  енгізіліп,  ол 

функцияның х=0.1 нүктесіндегі мәні есептеледі. 

 

Қазір  кӛргендейіңіздей  дифференциал  табу  операторының  жазылуы  кәдімгі 



үйреншікті  математикалық  түрінде  жазылады.  Дегенмен  де  кей  жағдайда  абай  болған 

дұрыс. Мынандай мысал қарастыралық (7.13 листингі). Ондағы алғашқы екі жолда  sin(x) 

функциясының 

х=0.5 

нүктесіндегі 

туындысы 

есептелген. 

Соңғы 

жолда 


диффкеренциалдық  оператордың  дұрыс  қолданылмаған  кезі  кӛрсетілген.  Оның  себебі 

sin(x)  функциясының  сол  нүктедегі  аргументі  х  айнымалысы  түрінде  емес  сандық  түрде 

енгізілген. Сондықтан Mathcad соңғы жолды әуелі х=0.5 нүктесінде синус функциясының 

мәнін есептеп сосын соның туындысын (константаның туындысын) табу керек деп түсініп 

соны  табады.  Сондықтан  константаның  қай  нүктеде  туындысын  тапсаң  да  ноль  саны 

шығады. 

 

Mathcad  сандық  түрде  туынды  тапқанда  үтірден  кейінгі  7-8  таңбаға  дейінгі 



дәлдікпен  табады.  Туындыны  есептегендегі  дәлдіктің  шамасы  TOL,  CTOL 

константаларынан тәуелсіз, керек деп табылған дәлдікті алгоритмнің ӛзі анықтайды. 

 

Тек  қана  бұл  айтылғандар  функцияны  сингулярлық  нүктенің  маңында 



дифференциалдаған кезде келмейді. Мысалы біз қарастырған f(x)=1/x функцисы үшін х=0 

70 

 

сингулярлық нүкте болады. Осы нүктеде туынды табуға тырысқанда "Can't divide by zero" 



(Деление на ноль невозможно) 

деген  қате  туралы  ескерту 

хабары 

келеді. 


Болмаса 

келетін  хабар  мынандай  да 

болуы  мүмкін:  "Found  a 

singularity while evaluating this 

expression. You may be dividing 

by 

zero" 

(Найдена 

сингулярность 

при 

вычислении 

этого 

выражения.Возможно,  Вы  делите  на  ноль).  Егер  туындыны  нольге  мейлінше  жақын 

нүктеде  (мысалы  х=10



-100

  нүктесінде)  табуға  тырысқанда  "Can't  converge  to  a  solution" 



(Невозможно найти решение) түрінде қате туралы ескерту хабары келуі мүмкін. 

 

Жоғарғы  ретті  туындылар.  Біз  жоғарыда  Mathcadтың  кӛмегі  арқылы  бесінші 

реттіге  дейінгі  туындыларды  есептеуге  болатынын  айтып  кеткен  болатынбыз.  f(х) 

функциясының  N  ретті  туындысын  х  нүктесінде  есептеу  үшін  бірінші  ретті  туынды 

есептегендей  операциялар  қолданылады.  Тек  қана  бұл  кезде  дифференциал  есептеу 

операторының  орнына   N  ретті  туынды  табу  операторын  (Nth  Derivative)  қолдану  керек. 

Бұл  операторды  Calculus  (Вычисления)  панелінің  кӛмегі  арқылы,  немесе  + 

пернелерінің кӛмегі арқылы енгізеді. Енгізгеннен кейін шыққан екі орынкӛрсеткіштерінің 

біріне  N  санын  енгізу  керек.  Сонда  екінші  орынкӛрсеткішіне  автоматты  түрде  сол  сан 

енеді. 


 

N=0  болғандағы  туынды  сол  функцияның  ӛзі,  ал  N=1  болған  кезде  бірінші  ретті 

туынды есептеледі. 7.14 листинг сандық және символдық түрде екінші ретті туындының 

қалай  есептелетінін  кӛрсетеді.  Айта  кететін  жайт,  бірінші  ретті  туынды  есептегендей 

алдын ала функция аргументіне туынды есептелетін нүктенің мәні берілуі керек.  

 

5  тен  жоғары  ретті  туындыларды  есептеу  үшін  бірнеше  рет  N  ретті  туынды  табу 

операторын  қайталап  қолдану  керек.  Бұл  тек  сандық  түрде  туынды  табу  үшін 

қолданылатын  әдіс.  Символдық  процессор  5  реттен  жоғары  ретті  туындыларды  есептей 

алады. 7.15 листингте осы айтылғандар кӛрсетілген. 

 

Сандық түрде туынды есептегенде бірінші ретті туынды үтірден кейінгі 7-8 цифрға 



дейінгі дәлдіпен табылады. Табылып отырған туындының реті жоғарылаған сайын дәлдік 

азая береді (жобамен әр рет үшін бір цифрға кеміп отырады).  

 

 

 



 

 

 



 

 

 



Дербес туындылар 

71 

 

 



Дербес  туынды  есептеу  үшін  туындының  операторын  Calculus  (Вычисления) 

панелінен енгізеді, сәйкес орынкӛрсеткішке туындысы табылуы керек айнымалының аты 

енгізіледі. 7.16 листингтің бірінші жолында екі айнымалының функциясы анықталған, ал 

келесі  екі  жолда  екі  айнымалының  (х  пен  у)  екеуі  арқылы  символдық  әдіспен  дербес 

туынды  есептелген.  Ал  енді  сандық  әдіспен  дербес  туынды  табу  үшін,  әуелі 

аргументтердің  бәріне  мін  беру  керек,  бұл  листингтің  екелесі  екі  жолында  істелген. 

Листингтің  соңғы  жолында  тағы  да  (үшінші  жолдағы  сияқты)  у  айнымалысы  бойынша 

символдық  әдіспен  дербес  туынды  анықталған.  Бірақ  айнымалыларға  нақты  мәндер 

беріліп қойғандықтан нәтиежесінде символдық ӛрнек емес сан шығады. 

 

Жоғарғы ретті дербес туындылар жоғарғы ретті жай туындылар сияқты есептеледі. 



7.17 листингте алдыңғы мысалдағы функцияның х, у айнымалылары бойынша екінші ретті 

дербес туындылары мен аралас туындыларын есептеу кӛрсетілген. 

 

7.16-17  листингтердегі  дифференциалдау  операторлары  дербес  туынды  түрінде 



жазылған,  бірақ  дифференциалдау  операторынығ  жазылу  түрін  ӛзгертуге  болады  (жай 

немесе  дербес  туындылар  түрінде).  Оператордың  жазылу  формасы  есептеу  нәтежесіне 

әсер етпейді. Дифференциалдау операторының формасын ӛзгерту үшін: 

 



дифференциалдау 

операторы тұрған тұста 

жүгірмектің 

оң 


кнопкасын 

басу 


арқылы 

жолшыбай 

менюді шақыру керек; 

 



жолшыбай 

менюдің 


жоғарғы 

View 

Derivative 

As 

(Показывать 

производную 

как) 

пунктін таңдайды; 

 

сонда  шыққан  кіші 



менюден  (7.5  сурет) 

Partial 

Derivative 

(Частная производная) пунктін таңдайды. 

 

Редактордың ӛзі таңдайтын (принятый по  умолчанию) оператор формасына қайта 



кӛшу  үшін  кіші  менюден  Default  (По  умолчанию)  пунктін  таңдау  керек,  болмаса  оны 

кәдімгі үйреншікті формаға келтіру үшін Derivative (Производная) пунктін таңдау керек. 



72 

 

 



Енді  іс  жүзінде  жиі  кездесетін  екі  мысалды  қарастыралық.  Оның  біріншісі  екі 

айнымалының функциясының градиентін есептеу, оны есептеу 7.18 листингте келтірілген. 

Мысал үшін алынған f(x,y) функция листингтің бірінші жолында анықталған, 7.6 суретте 

оның графигі деңгей сызықтарының графигі ретінде берілген. Екі айнымалының графигі 

сол  айнымалылардың  дербес  туындылары  құрап  тұрған  вектор  функция  екенін  білеміз 

(7.18 листингтің екінші  жолы). Листингтің қалған бӛлігінде реттелген айнымалылар мен 

матрицаны анықтайды, олар функция мен оның градиентінің графигін салуға керек.  

 

f(x,y) функциясының есептелген градиентінің графигі 7.7 суретте кӛрсетілген. 7.6-7 

суреттерді  салыстыра  отырып  (х,у)  нүктесіндегі  градиент  f(х,у)  функциясының  тез  ӛсу 

бағытын сипаттайтынын аңғаруға болады. 

 

Осы  уақытқа  дейін  біз  тек  скаляр  функциялармен  жұмыс  істедік.  Кӛп  жағдайда 



вектор  функциямен  де  жұмыс  істеуге  тура  келеді.  Математикада  кей  жағдайда 

функцияның  якобианын  есептеуге  тура  келеді.  Якобиан  дегеніміз  вектор  функцияның 

барлық аргументтері бойынша дербес туындыларынан тұратын матрица. Якобиан есептеу 

мысалы  7.19  листингте  кӛрсетілген.  Якобиан  есептеген  вектор  функцияның  әр  скаляр 

компоненті символдық түрде дифференциалданады. Әрине осы якобианды басқа әдіспен 

де  есептеуге  болады,  ол  үшін  бір  векторлық  аргументі  бар  функцияның  орнына  үш 

скалярлық аргументі бар f(x,y,z) функция қарастырылады (7.20 листингі). 

 

Якобианды  сандық  түрде  анықтау  үшін  әуелі  якобиан  есептелуге  тиіс  нүкте 



анықталуы керек, яғни 7.19 листингте х векторына, 7.20 листингте х,у,z айнымалыларына 

сандық мәндер берілуі керек. 

 

 

Алгебралық теңдеулер 



 

 

Бір белгісізі бар алгебралық теңдеуді қаралық: 



f(x)=0, (1) 

мысалы sin(x)=0

 

Мұндай  теңдеулерді  шешу  үшін  Mathcadта  root  функциясы  бар.  Есептің  түріне 



қарап  бұл  функцияда  екі  немесе  тӛрт  аргумент  болуы  мүмкін,  және  олардың  жұмыс 

істеулері де әртүрлі. 

 

root(f(х),х); 



 

root(f(х),х,а,b), 

 

f(х) функциясы (1) теңдеудегі скалярлық функция



 

х – скалярлық айнымалы, теңдеу осы айнымалы бойынша шешілуі керек; 

 

а, b – теңдеудің түбірін шекарасы осы сандар болатын аралықтан іздейді. 



73 

 

 



Қарасырып  отырған  root  функциясының  бірінші  түрі  үшін  х  айнымалысының 

бастапқы  мәнін  (guess  value)  беру  керек.  Теңдеудің  түбірі  осы  бастапқы  мәннің 

түңірегінен  іздестіріледі.  Сонымен  бұл  кезде  пайдаланушы  теңдеу  түбірінің  қай  жерде 

орналасқаны туралы мәліметті білуі керек. 

 

Мысал  ретінде  sin(x)=0  теңдеуін  қарастыралық,  оның  түбірлері  қай  жерде  екенін 



біз мектетегі математика курсынан білеміз.   

 

f(x)=sin(x)  функциясының  графигі  мен  теңдеудің  табылған  шешімі  8.1  суретте 

кӛрсетілген.  Теңдеудің  шексіз  кӛп  шешімдері  (x

n

=nπ,  n=0,±1,±2,...)  болғанына  қарамай 

Mathcad берілген дәлдікпен х=0.5 нүктесіне жақын тек қана оның біреуін х



0

 табады. Егер 

бастапқы мән  х=3 болса, онда теңдеудің басқа шешімі х

1

  табылады. Сонымен теңдеуді 

шешу  үшін  түбір  жатқан  кіші  аймақ  кӛрсетілуі  керек  екен,  бұл  қолданылып  отырған 

алгоритмнің  (қиюшылар  әдісі  –  метод  секущих)  ерекшелігі.  Тӛменде  бұл  алгоритм 

сипатталған (8.2 сурет): 

 

Бастапқы кӛрсетілген  х айнымалысының мәнін түбірдің  0 –  інші  итерациядағы жуық 



шешімі деп қарастылады: х

0

=х; 

 



Итерация қадамы (шаг) h=TOLх таңдалады, сосын бірінші қадамда жуықталған түбір 

есептеледі: x



1

=x

0

+h. Егер х=0 

болса  онда  h=TOL  деп 

алынады; 

 



Осы екі нүкте арқылы қиюшы 

жүргізіліп,  оның  х  осін  қиып 

ӛткен  нүктесі  х

2

табылады,  ол 

екінші  қадамда  жуықталған 

түбір деп есептеледі

 

Бірінші және екінші нүктелер 



арқылы 

жаңа 


қиюшы 

жүргізіліп үшінші жуық шешім табылады, т.с.с.; 

 

Егер  бір  итерациядан  кейін  табылған  жуық  түбір  үшін  теңдеу  орындалса,  яғни 



|f(x)| болса итерация тоқтатылады да табылған жуық шешімді теңдеудің шешімі 

деп есептейді. 

 

8.2 суретте кӛрсетілген нәтиеже дәлдікке пайдаланушы  TOL=0.5 мәнін бергендегі 



(мұндай  дәлдік  тек  кӛрнекі  болсын  деп  үлке  сан  ретінде  алынып  отыр)  теңдеу  шешімі. 

74 

 

Сондықтан  теңдеу  шешімінт  табу  үшін  бір  итерация  жеткілікті  болды.  8.1  листингте 



кӛрсетілген есептеу кезінде TOL=0.001 дәлдігі редактордың ӛзі берген дәлдік. Сондықтан 

табылған  шешім  теңдеудің  дәл  түбіріне  х=0  мейлінше  жақын.  Сонымен  TOL 

куонстантасының  мәні  неғұрлым  кіші  болған  сайын  дәлдік  күшейе  береді  екен.  Бірақ 

есептеуге кӛбірек уақыт кетеді. 

 

Егер теңдеудің түбірі жоқ болса, теңдеу шешуге тырысқанда қате туралы ескерту 



қабар  келтіріледі.  Сонымен  қатар  қима  әдісін  теңдеуді  беріп  тұрған  функцияның 

локальдық  максимумы  мен  минимумының  маңынан  іздейтін  болсақ  ол  да  қатеге  алып 

келеді. Бұндай кезде қима горизонтал бағытқа тым жақын болады, осьті қиып ӛткен нүкте 

тым  алыстап  кетеді.  Мұндай  теңдеулер  үшін  редактор  Minerr  атты  ішкі  (встроенная) 

функцияны  қолданады.  Осы  сияқты  проблемалар  бастапқы  жуықтау  нүктесі  теңдеу 

түбірінен тым алысқа орналасқан кезде немесе f(х) функциясының шексіздіке ұмтылатын 

ерекшеліктері бар кезде де болады. Редактор теңдеу шешуде градиенттік әдісті де қолдана 

алады, бірақ біз бұған тоқталмаймыз. 

 

Кейде  бастапқы  жуықтауды  [а,b]  сияқты  етіп  түбір  жатқан  аралықты  кӛрсету 



арқылы берген ыңғайлы болады.  Бұл кезде тӛрт аргументті root функциясы қолданылады, 

яғни түбірдің бастапқы мәнін анықтау керек емес (8.2 листингі). Теңдеу түбірі Риддер мен 

Брент әдісі арқылы іздестіріледі.  

 

root  функциясы  тӛрт  аргументпен  қолданылған  кезде  тӛмендегі  ерекшеліктерді 

ескерген дұрыс: 

 



[а,b]  аралығында  теңдеудің  бір  ған  түбірі  болуы  керек,  егер  олардың  саны  біреуден 

кӛп  болса,  редактор  олардың  әйтеуір  біреуін  табады,  ал  пайдаланушы  қай  түбір 

табылғанын білмейді; 

 



f(а) мен f(b) сандарының таңбалары әртүрлі болуы керек, олай болмаса редактор қате 

туралы есекерту кӛрсетеді; 

 

Егер  теідеудің  нақты  түбірлері  болмай  тек  қана  комплекс  түбірлері  бар  болса; 



оларды да табуға болады. 8.3  листингте тек екі жорамал түбірі бар x

2

+i=0 теңдеуін шешу 

мысалы қарастырылған. Теңдеу екі рет әртүрлі бастапқы мәндер беру арқылы шешілген. 

Бастапқы жуықтау 0.5 деп алынғанда (листингтің бірінші жолы) сандық теңдеу шешу әдісі 

бірінші  түбірді  табады  (теріс  жорымал  бірлік  –  «-i»),  ал  бастапқы  жуықтау  -0.5  деп 

алынғанда (листингтің үшінші жолы) екінші түбір «i» табылады. 

 

Бұл  теңдеуді  шешу  үшін  тӛрт  аргументті  root  функциясын  қолдана  алмаймыз, 



себебі  f(х)  функциясы  теріс  мән  қабылдай  алмайды,  сондықтан  шеткі  нүктелерінде 

функцияның таңбалары әртүрлі болатын аралық таңдау мүмкін емес. 

 

Теңдеудегі  f(х)  функциясы  бір  емес  бірнеше  айнымалының  функциясы  болғани 



кездегі теңдеуді де редактор шеше алады. Бірақ бұл кезде root функцисяыеа теңдеуді қай 

айнымалыға  байлысты  шешілу  керек  екендігі  кӛрсетілуі  керек.  Мұндай  мүмкіндік  8.4 

листингте  екі  айнымалының  функциясы  f(х,у)=х

2

-y

2

+3  үшін  кӛрсетілген.  Мұнда  әуелі 

f(x,0)=0 теңдеуі  х айнымалысы бойынша шешіледі, сосын f(1,у)=0 теңдеуі у айнымалысы 

бойынша шешіледі. 

 

Листингтің  бірінші  жолында  (x,y)  функциясы  анықталады,  ал  екінші,  үшінші 



жолдарда теңдеу сәйкес  у пен  х арқылы шешіледі. Тӛртінші  жолда  (x,0)=0, соңғы жолда 

f(1,y)=0  теңдеулері  шешіледі.  Теңдеуді  айнымалылардың  біріне  қатысты  шешкен  кезде 

қалған айнымалыларға мән беруді ұмытпаңыз, әйтпесе редактор "This variable or function 



is  not  defined  above"  деп  қате  туралы  ескерту  береді.  Басқа  айнымалылардың  мәнін  root 

функциясының  ішінде  де  беруге  болады.  Мысалы  8.4  листингтің  екінші,  үшінші 

жолдарын алып тастап оларды соңғы жолға  root(f(x,0),х)=, root(f(1,у),у)= түрінде енгізеді. 

 

Кӛпмүшеліктердің  түбірін  табу.  Егер  f(х)  кӛпмүшелік  болса,  онда  оның  барлық 

түбірлерін редактордың ішкі polyroots(v) функциясын қолданыптабуға болады  Мұнда v – 

кӛпмүшеліктің коэффициенттерінен құралған вектор.  



75 

 

 



N  дәрежелі  кӛпмүшеліктің  N  түбірлері  бар  (кейбіреулері  еселі  түбірлер  болуы 

мүмкін),  v  векторының  N+I  элементтері  бар.  Кӛрсетілген  poiyroots  функциясын 

қолданғанда  нәтиежесінде  N  сан  аламыз,  олар  кӛпмүшеліктің  түбірлері.  Бастапқы 

жуықтаудың  керегі  жоқ.  8.5  листингте  тӛртінші  дәрежелі  кӛпмүшеліктің  түбірін  табу 

кӛрсетілген. 

 

Қарастырылған  кӛпмүшелік  (листингтің 



бірінші жолында) тӛмендегідей: 

f(х)=(х-3)(х-1)

3



4

-6х

3

+12х

2

-10х+3    (1) 

Вектордың  бірінші  координатасы  ретінде  бос 

мүше, 

екінші 


координатасы 

ретінде 


х

1

 

шамасының коэффициенті т.с.с. алынуы керек.  



 

Егер 


берілген 

кӛпмүшелік 

басқа 

кӛпмүшеліктердің  кӛбейтіндісі  ретінде  берілуі 



мүмкін.  Бұл  кезде  кӛпмүшеліктерді  белгілеп 

алып  Symbolics  (Символика)  менюінің  Expand 



(Разложить)  пунктін  таңдайды.  Сонда  редактор  кӛпмүшелікті  қажет  түрге  келтіреді, 

пайдаланушы енді polyroots функциясының аргументтерін енгізе алады. 

 

Листингтің  екінші  жолында  poiyroots  функциясының  жұмысы  кӛрсетілген.  Егер 



назар  салып  қарасаңыз  үш  нақты  бірлік  түбірлердің  орнына  (үш  еселі  1  санына  тең 

түбірлер)  екі  комплекс  сан  беріп  тұр.  Бірақ  комплекс  санның  жорымал  бӛлігі  абсолют 

шамасы мейлінше аз сан (TOL константасымен анықталып тұрған дәлдік бойынша оларды 

нольге  тең  деуге  болады).  Осы  мысалдан  біз  кӛпмүшелік  түбірлері  комплекс  сан 

болатындығын, ал дәлдік комплекс санның нақты бӛлігіне де жорымал бӛлігіне де қатысы 

барын аңғарамыз.  

 

Редакторда  poiyroots  функциясы  үшін  екі  алгоритм  қарастырылған  –  Лаггер  әдісі 



(егер пайдаланушы ӛзгертпесе редактор осы әдісті қолданады), қос матрица әдісі (мет од 

парной матрицы). Әдісті ӛзгерту үшін: 

 

жүгірмектің  оң  кнопкасын  polyroots    сӛзіне  басу  арқылы  жолшыбай  менюді 



шақырыңыз; 

 



жолшыбай менюдің жоғарғы жағынан LaGuerre (Лаггера), Companion Matrix (Парная 

матрица) пунктерінің керегін таңдаңыз; 

 



polyroots  функциясы  әсер  етіп  тұрған  жерден  тысқары  бір  жерде  жүгірмектің  сол 

кнопкасын басыңыз, егер автоматты түрде есептеу қосылып тұрған болса таңдап алған 

әдіспен кӛпмүшеліктің түбірлері қайтадан есептеледі. 

 

Метод  таңдауды  редактордың  ӛзіне  тапсыру  үшін  сол  жолшыбай  менюде 



AutoSelect (Автоматический выбор) пунктінің тұсына жалау қойыңыз. 

 

 



 
1   2   3   4   5   6   7   8   9   10




©emirb.org 2020
әкімшілігінің қараңыз

    Басты бет