f (x)
dx - Xakimov jamshid oktyamovich kompyuterli loyihalash

f (x)
dx
g ( x) -» 4 x 3 + 6 x 2 - 14 x + 3
Файл
Opsw* 8ВД Деблвить
Фермат
Инструменты
Символика
O u r.
г1 ~ n | - *
£о6р*п
Оолинсми*л»ные коэффициенты
Р^сширигь до рад*.,
ф юбрэзоыть в элементарную дрсйь
Ж
™
Г~Щ
~Г~Ч~
I ( ) X*
/
п
7 8
9
/
•I 4
5
6
*
+
1 2
3
+
193
2.
Differensiallash
operatorini
kiriting
va
oddiy
tarzda
o'rinto'ldirgichlarga funksiya va argument nomlarini kiriting (10.1-rasmga
qarang).
3. Natijani sonli-raqamli chiqarish operatori = ni kiriting.
10.5-listingda funksiya
f(x)=sin(x) ln(x)
ni differensiallash misoli
keltirilgan.
10.5-listing.
Funksiyani nuqtada sonli-raqamli differensiallash
£ (x) :* s i n (X) I n (X)
x := 0 . 1
— I (X) - - 1 . 2 9 3
dx
10.5-listingning ikkinchi
qatorida qilinganidek,
sonli-raqamli
differensiallash amalga oshiriladigan nuqtani
oldindan aniqlashni
unutmang.
)
I n ( X )
undefined]
10.4-rasm. Differensiallash operatorini qoilashda xatolik (argument
berilmagan)
Aks holda 10.4-rasmda ko‘rsatilgan xatolik (ifodaga kiruvchi
o'zgaruvchi yoki funksiya oldindan aniqlanmaganligi) haqida ma’lumot
beriladi. Simvolli differensiallash esa differensiallash nuqtasining
majburan ochiq berilishini talab qilmaydi. Bu holda hosila qiymati (son
yoki sonli-raqamli ifoda) o‘rniga analitik bog'lanish (10.1-listingga
qarang) chiqariladi.
10.2.2. Differensiallash algoritmi haqida
Sonli-raqamli differensiallash uchun MathCAD yetarli darajada
murakkab algoritmni qo‘llaydi, u verguldan keyin 7
h
-8 belgigacha
aniqlikda hosilani hisoblaydi. Differensiallash xatoligi, boshqa sonli-
raqamli metodlardan farqli ravishda, TOL yoki CTOL konstantalariga
bog'liq emas, balki bevosita algoritm bilan aniqlanadi. Bu algoritm
(Ridder metodi) MathCADga kiritib o'matilgan ma’lumot tizimida bayon
194
—f
( X) * ■
d x ]
Th is v a r ia b le is
etilgan, unga Help (Yordam) menyusi orqali kirishi mumkin.
f(x)
tunksiyasining hosilasini
sonli-raqamli
aniqlashni,
uning
muhim
aspektlarida to'xtab, sodda misolda ko'rinishida bayon qilamiz. Eng oddiy
ayirmali formula Ridder metodidan sezilarli farq qiladi, lekin u bizga ba’zi
masalalarga yorqinlik kiritishda yordam beradi, chunki u sonli-raqamli
differensiallashning bazaviy prinsipiga - bir-biriga nisbatan yaqin
joylashgan bir nechta nuqtalardagi
f(x)
funksiyaning qiymatlari orqali
hosilani hisoblashga asoslangan.
Funksiya hosilasining ta’rifiga asoslanib, quyidagini qayd etish
mumkin
d
f (x + Д) - f — f ( x ) « ------------ - ------------+ о (Д)
dx
д
(10.1)
Hosilani sonli-raqamli aniqlashning asosiy muammosi aynan A
qiymatini tanlash bilan bog‘liq. Birinchi qarashda, yetarli aniqlikni
ta’minlash uchun, juda kichik Д ni tanlash tushunarli b o iish i uchun 10.6-
listingda keltirilgan MathCAD dasturidan foydalanamiz, u ayirmali
formula (10.1) xatoligini (Д qadamga bo giiq holda) hisoblaydi. Hosil
bo‘lgan bog'lanish grafigi 10.5-rasmda tasvirlangan, bunda ikkala o'q
uchun logarifmik masshtab tanlangan, hosilaning o‘zi esa (misol uchun),
10.6-listingga muvofiq, bitta nuqta
x=
1 da hisoblangan.
10.6-listing.
Ayirmali formula aniqligining qadamga bog'liqligini
hisoblash
* ( x ) > s i n ( X ) • I n ( X )
X
1
i
0
..
2 0
a
.
«1 >
d
t ( x + At ) - f ( x )
■* (x)
d x
i i
Grafikning o ‘ng tomonida xatolikning ortishi tushunarli bo'lsa,
chunki (10.1) formulaga binoan Д qancha katta bo'lsa, xatolik shuncha
ko'p bo'ladi, juda kichik A larda xatolikning ortishi, birinchi qarashda,
kishini hayratga soladi. Lekin gap shundaki, ayirmali formulani
qo'llaganda, biz
f(x)
funksiyaning qiymatlarini istalgan nuqtada aniq
hisoblay olamiz deb faraz qilgan edik. Lekin istalgan kompyuter hisoblari
bartaraf qilib bo'lmaydigan xatoliklarga ega, xususan, ularda sonlar diskret
taqdim etiladi. Shuning uchun biz amalda
f(x)
ning qiymatini qandaydir
195
xatolik bilan hisoblashimiz mumkin, chunki kompyuterdagi hisoblashlarda
sonlar yiriklashtiriladi (округляются).
Natijada qadam juda kichik boiganda ayirmali formula yaqin
sonlarni bir-biridan ayirishni bildiradi. Bu holda
f(x)
funksiyasini
hisoblashdagi xatoliklar hal qiluvchi b oiib qoladi va ayirmali hosilani
hisoblash summar xatoligining sezilarli darajada ortishiga olib keladi.
Bundan quyidagi xulosa kelib chiqadi:
qadam qiymatini «juda kichik»
tanlab bo ‘Imaydi, aks holda f(x) ni hisoblash xatoliklari differensiallash
natijasi noto'g'ri bo'lishiga olib keladi.
10.5-rasmdan shu narsa
ko‘rinadiki, ushbu holda A ning oraliq qiymatlarini tanlash lozim, bu
minimal (yoki deyarli minimal) xatolikni ta’minlaydi.
Shu narsani qayd qilish lozimki, differensiyallanayotgan funksiya
xarakteriga qarab, A ning qabul qilinishi mumkin boigan qiymatlari
diapazoni har xil boiadi. Shuning uchun har bir muayyan holda sonli-
raqamli differensiallash uchun tanlangan qadam to‘g‘riligini testlovchi
qo‘shimcha qadamlami bajarish talab qilinadi. Bunday protsedura
MathCADda
qoilanilgan
differensiallashning
adaptiv
algoritmiga
kiritilgan, bu hosilani sonli-raqamli hisoblash uchun uning nihoyatda
ishonchli boiishini ta’minlaydi.
П »
C * Saw
fomut look Symbolics window adp
- iff X
D !.ii
/» и » 0»
1oo%
v
V*iaW*t
v ! Time* Hew Roman
v | l 6 " V |
J
Ц
**
B +
S3*»*! «I'Sb
-:<*»
______
10.5-rasm. Formula (10.1) aniqligining delta qadamga bogiiqligi grafigi
(10.6-listingning davomi)
Demak, differensiallashda MathCADda murakkab muammolar
vujudga kelmaydi. Singulyar nuqta atrofida differensiyallanayotgan
196
funksiyalar bundan istisno; masalan,
f(x)=l/x
funksiyasi uchun bu x=0
yaqinidagi nuqtalar bo‘ladi. x=0 da uning hosilasini topmoqchi bo‘lsak
(10.6-rasm), nolga boiishdagi xatoliklarning biri haqida "Can't divide by
zero" (Nolga boiishning imkoniyati yo‘q) yoki "Found a singularity while
evaluating this expression. You may be dividing by zero" (Bu ifodani
hisoblashda singulyarlik topildi. Balki, Siz nolga boiayotibsiz).
Agar hosilani nolga juda yaqin, masalan, x=10~100 da, sonli-raqamli
aniqlashga harakat qilib ko‘rilsa, hosila mavjud bo‘lishiga qaramasdan
xatolik haqida m aium ot "Can't converge to a solution" (Yechimni topish
mumkin emas) paydo boiishi mumkin. MathCADning yangi versiyalari
(10-dan boshlab) bu qiyinchilikni bartaraf qiladilar, chunki ularda hatto
sonli-raqamli differensiallashda ham dastlab analitik yechimni beruvchi
simvolli protsessor ishga tushadi, unga differensiallash argumentini
qo‘yish to‘g‘ri natija beradi.
x
0
d .
.
|