Gnu uchun bepul mavjud matematik paketlar. FFTW va GNU Octave matematik ilovalari protsessorlar va shaxsiy kompyuterlar uchun sinov sifatida. Ekstremumga yechimni o'rganish

diplom ishi

1.1 Zamonaviy matematik to'plamlar

Zamonaviy matematik to'plamlardan oddiy kalkulyator sifatida ham, har qanday muammolarni hal qilishda ifodalarni soddalashtirish vositasi sifatida ham, grafik yoki hatto tovush generatori sifatida ham foydalanish mumkin. Internet bilan interfeys ham standart bo'lib qoldi va HTML sahifalar endi hisoblash jarayonining bir qismi sifatida yaratiladi. Endi siz muammoni hal qilishingiz va shu bilan birga uni hal qilish jarayonini hamkasblaringizga bosh sahifangizda e'lon qilishingiz mumkin.

Biz matematik modellashtirish dasturlari va ularni qo'llashning mumkin bo'lgan sohalari haqida juda uzoq vaqt gapirishimiz mumkin, ammo biz o'zimizni faqat etakchi dasturlarning umumiy xususiyatlari va farqlarini ko'rsatgan holda qisqacha ko'rib chiqish bilan cheklaymiz. Hozirgi vaqtda deyarli barcha zamonaviy CAE dasturlari (Kompyuter yordamida muhandislik, matematik modellashtirish paketlari) o'rnatilgan ramziy hisoblash funktsiyalariga ega.

Xo'sh, bu dasturlar nima qiladi va ular matematiklarga qanday yordam beradi? Ta'riflangan dasturiy ta'minotdan foydalanib, siz ko'p vaqtni tejashingiz va hisob-kitoblarda ko'plab xatolardan qochishingiz mumkin. E'tibor bering, bunday tizimlar tomonidan hal qilinadigan muammolar doirasi juda keng:

Hisoblash va analitik hisob-kitoblarni talab qiladigan matematik tadqiqotlarni amalga oshirish;

Algoritmlarni ishlab chiqish va tahlil qilish;

Matematik modellashtirish va kompyuter tajribasi;

Ma'lumotlarni tahlil qilish va qayta ishlash;

Vizualizatsiya, ilmiy va muhandislik grafikasi;

Grafik va hisoblash ilovalarini ishlab chiqish.

Quyidagi matematik paketlar eng mashhur va matematik ramziy hisoblar uchun moslashtirilgan hisoblanadi:

1-rasmda keltirilgan Mathematica to'plami zamonaviy ilmiy tadqiqotlarda hisob-kitoblarda keng qo'llaniladi va ilmiy va ta'lim muhitida keng tarqalgan.

Jiddiy matematik hisob-kitoblarga e'tibor qaratishlariga qaramay, Mathematica sinf tizimlarini o'rganish oson va ulardan juda keng toifadagi foydalanuvchilar - universitet talabalari va o'qituvchilari, muhandislar, aspirantlar, tadqiqotchilar va hatto umumta'lim va maxsus fanlar bo'yicha matematika sinflari talabalari foydalanishi mumkin. maktablar. Shu bilan birga, dasturning keng ko'lamli funktsiyalari uning interfeysini ortiqcha yuklamaydi va hisob-kitoblarni sekinlashtirmaydi. Mathematica doimiy ravishda ramziy o'zgarishlar va raqamli hisoblar uchun yuqori tezlikni namoyish etadi. Ko'rib chiqilayotgan barcha tizimlar ichida Mathematica dasturi eng to'liq va universaldir, ammo har bir dastur o'zining afzalliklari va kamchiliklariga ega.

1-rasm. Matematika

Shunday qilib, Mathematica, bir tomondan, turli masalalarni (jumladan, matematik) echish uchun mo'ljallangan, eng kuchli muammoga yo'naltirilgan yuqori darajadagi funktsional dasturlash tillaridan biriga asoslangan odatiy dasturlash tizimi, boshqa tomondan, interaktiv tizimdir. ko'pgina matematik muammolarni an'anaviy dasturlashsiz interaktiv tarzda hal qilish uchun. Mathematica dasturlash tizimi sifatida deyarli har qanday boshqaruv tuzilmalarini ishlab chiqish va yaratish, kiritish/chiqarishni tashkil qilish, tizim funktsiyalari bilan ishlash va har qanday periferik qurilmalarga xizmat ko'rsatish uchun barcha imkoniyatlarga ega va kengaytirish paketlari yordamida ehtiyojlarga moslashish mumkin bo'ladi. har qanday foydalanuvchi.

Mathematica tizimining kamchiliklari faqat juda noodatiy dasturlash tilini o'z ichiga oladi, ammo bu batafsil yordam tizimi tomonidan osonlashtiriladi.

Maple dasturi ramziy matematik tizimlar oilasining o'ziga xos patriarxidir va hanuzgacha universal ramziy hisoblash tizimlari orasida etakchilardan biri hisoblanadi. U foydalanuvchiga har qanday darajadagi matematik tadqiqotlar uchun qulay intellektual muhitni taqdim etadi va ayniqsa ilmiy jamoatchilikda mashhurdir. E'tibor bering, Maple dasturining ramziy analizatori ushbu dasturiy ta'minotning eng kuchli qismidir, shuning uchun u qarzga olingan va MathCad va MATLAB kabi bir qator boshqa CAE paketlariga, shuningdek Word uchun Scientific WorkPlace va Math Office-ga kiritilgan. ilmiy nashrlarni tayyorlash uchun paketlar.

Maple kompyuter eksperimentlari uchun qulay muhitni ta'minlaydi, uning davomida muammoga turli yondashuvlar sinab ko'riladi, muayyan echimlar tahlil qilinadi va agar dasturlash zarur bo'lsa, maxsus tezlikni talab qiladigan qismlar tanlanadi. Paket boshqa tizimlar va universal yuqori darajadagi dasturlash tillari ishtirokida integratsiyalashgan muhitlarni yaratish imkonini beradi. Hisob-kitoblar amalga oshirilganda va siz natijalarni rasmiylashtirishingiz kerak bo'lganda, siz ushbu paketning vositalaridan ma'lumotlarni vizualizatsiya qilish va nashr qilish uchun rasmlarni tayyorlashingiz mumkin. Ishni yakunlash uchun Maple muhitida bosma materialni tayyorlash qoladi, shundan so'ng siz keyingi o'rganishga o'tishingiz mumkin. Ish interaktivdir - foydalanuvchi buyruqlarni kiritadi va ularning bajarilishi natijasini darhol ekranda ko'radi (2-rasm). Shu bilan birga, Maple paketi an'anaviy dasturlash muhitiga umuman o'xshamaydi, bu esa barcha o'zgaruvchilar va ular bilan harakatlarni qat'iy rasmiylashtirishni talab qiladi. Bu erda o'zgaruvchilarning mos turlarini tanlash avtomatik ravishda ta'minlanadi va operatsiyalarning to'g'riligi tekshiriladi, shuning uchun umumiy holatda o'zgaruvchilarni tavsiflash va yozuvni qat'iy rasmiylashtirishning hojati yo'q.

2-rasm. Chinor

Maple - bu yaxshi muvozanatlangan tizim va matematika uchun ramziy hisoblash qobiliyatlari bo'yicha shubhasiz etakchi. Shu bilan birga, asl ramziy vosita bu erda eslab qolish oson tuzilgan dasturlash tili bilan birlashtirilgan, shuning uchun Maple kichik vazifalarda ham, yirik loyihalarda ham qo'llanilishi mumkin.

Maple tizimining yagona kamchiliklari uning har doim ham oqlanmaydigan biroz "o'ylangan" tabiatini, shuningdek, ushbu dasturning juda yuqori narxini o'z ichiga oladi.

3-rasmda keltirilgan MATLAB tizimi ramziy matematika uchun mo'ljallangan mahsulotlarning o'rta darajasiga tegishli, ammo CAE sohasida keng qo'llash uchun mo'ljallangan.

MATLAB matematik hisoblarni avtomatlashtirish uchun eng qadimiy, puxta ishlab chiqilgan va vaqt sinovidan o'tgan tizimlardan biri bo'lib, matritsali amallarning ilg'or tasviri va qo'llanilishiga asoslangan. Bu tizim nomining o'zida aks ettirilgan - MATrix LABoratory, ya'ni matritsa laboratoriyasi. Biroq, tizimning dasturlash tilining sintaksisi shu qadar puxta o'ylanganki, bu yo'nalish matritsalarni hisoblash bilan bevosita qiziqmaydigan foydalanuvchilar tomonidan deyarli sezilmaydi.

MATLAB kutubxonalari raqamli hisob-kitoblarning yuqori tezligi bilan ajralib turadi. Biroq, matritsalar nafaqat chiziqli algebra va matematik modellashtirish masalalarini echish, statik va dinamik tizimlar va ob'ektlarni hisoblash kabi matematik hisoblarda keng qo'llaniladi. Ular dinamik ob'ektlar va tizimlarning holati tenglamalarini avtomatik ravishda tuzish va echish uchun asosdir. Matritsali hisoblash apparatining universalligi matritsali masalalarni tez hal qilish sohasidagi eng yaxshi yutuqlarni o'zlashtirgan MATLAB tizimiga qiziqishni sezilarli darajada oshiradi. Shuning uchun MATLAB uzoq vaqtdan beri maxsus matritsali tizim doirasidan chiqib, kompyuter matematikasining eng kuchli universal integral tizimlaridan biriga aylandi.

3-rasm. MATLAB

MATLAB tizimining kamchiliklari orasida atrof-muhitning past integratsiyasini (ikkita monitorda ishlash yaxshiroq bo'lgan ko'plab oynalar), unchalik aniq bo'lmagan yordam tizimini (xususiy hujjatlar hajmi deyarli 5 ming sahifaga etadi) qayd etishimiz mumkin. , bu ko'rib chiqishni qiyinlashtiradi) va maxsus MATLAB kod muharriri -dasturlari (4-rasm). Bugungi kunda MATLAB tizimi texnologiya, fan va ta'limda keng qo'llaniladi, ammo baribir u sof matematik hisob-kitoblarga qaraganda ma'lumotlarni tahlil qilish va hisob-kitoblarni tartibga solish uchun ko'proq mos keladi.

Ma'lumotlarni tahlil qilishda yuqori samarali hisob-kitoblarga yo'naltirilgan kuchli MATLAB to'plamidan farqli o'laroq, MathCad dasturi keng ramziy hisoblash imkoniyatlariga va mukammal interfeysga ega bo'lgan oddiy, ammo ilg'or matematik matn muharriridir. MathCad dasturlash tiliga ega emas va ramziy hisoblash mexanizmi Maple paketidan olingan. Lekin MathCad dasturining interfeysi juda oddiy, vizualizatsiya imkoniyatlari esa boy. Bu erda barcha hisob-kitoblar tez-tez ishlatiladigan matematik shakldagi ifodalarni vizual qayd etish darajasida amalga oshiriladi. Paketda yaxshi maslahatlar, batafsil hujjatlar, o'quv funktsiyasi, bir qator qo'shimcha modullar va ishlab chiqaruvchidan munosib texnik yordam mavjud. Ammo hozircha MathCad ning kompyuter algebrasi sohasidagi matematik imkoniyatlari Maple, Mathematica, MATLAB tizimlaridan ancha past. Biroq, MathCad dasturi bo'yicha ko'plab kitoblar va o'quv kurslari nashr etilgan. Bugungi kunda ushbu tizim texnik hisoblashning xalqaro standartiga aylandi va hatto ko'plab maktab o'quvchilari MathCad dasturini o'rganmoqdalar va undan foydalanmoqdalar.

4-rasm. MathCad

Kichik miqdordagi hisob-kitoblar uchun MathCad ideal - bu erda hamma narsani juda tez va samarali bajarish mumkin, keyin esa ishni odatiy shaklda formatlash mumkin (MathCad natijalarni formatlash, hatto ularni Internetda nashr qilish uchun keng imkoniyatlar beradi). Paketda qulay ma'lumotlarni import/eksport qilish imkoniyatlari mavjud. Masalan, Microsoft MS Excel elektron jadvallari bilan bevosita MathCad hujjati ichida ishlashingiz mumkin.

Umuman olganda, MathCad juda oddiy va qulay dastur bo‘lib, uni keng foydalanuvchilar, jumladan, matematikadan unchalik xabardor bo‘lmaganlar va ayniqsa uning asoslarini endigina o‘rganayotganlar uchun tavsiya qilish mumkin.

Arzonroq, soddaroq paketlarga UMS va Microsoft MS Excel kiradi.

Bir vaqtlar ramziy matematik tizimlar faqat tor doiradagi mutaxassislarga qaratilgan va katta kompyuterlarda ishlagan. Ammo shaxsiy kompyuterlar paydo bo'lishi bilan bu tizimlar ular uchun qayta ishlab chiqildi va ommaviy seriyali dasturiy ta'minot tizimlari darajasiga keltirildi. Hozirgi vaqtda bozorda turli kalibrli ramziy matematika tizimlari birgalikda mavjud - iste'molchilarning keng doirasi uchun mo'ljallangan MathCad tizimidan tortib minglab o'rnatilgan va kutubxona funktsiyalariga, grafik vizualizatsiya uchun keng imkoniyatlarga ega Mathematica, MATLAB va Maple kompyuter yirtqich hayvonlarigacha. hisob-kitoblar va hujjatlarni tayyorlash uchun ishlab chiqilgan vositalar.

E'tibor bering, bu tizimlarning deyarli barchasi nafaqat mashhur Windows operatsion tizimlari bilan jihozlangan shaxsiy kompyuterlarda, balki Linux, UNIX, Mac OS operatsion tizimlarida, shuningdek, PDA'larda ham ishlaydi.

Keling, o'rta maktabda matematika darslarini o'tkazishda maktablarda eng ko'p ishlatiladigan paketlarga o'tamiz. Bularga quyidagilar kiradi: Universal Math Solver (UMS), Microsoft MS Excel.

UMS dasturi – “Universal matematik hal qiluvchi” algebra va tahlilning ko‘plab bo‘limlariga oid masalalarni yechish imkonini beradi. “Umumjahon hal qiluvchi” boʻyicha bilimlar oʻrta maktab va oliy oʻquv yurtlarining birinchi yillarida algebra va tahlil boʻyicha deyarli butun kursni qamrab oladi.

Bir qator kuchli matematik to‘plamlardan farqli o‘laroq, UMS oddiy interfeys tufayli tez o‘rganish imkoniyatiga ega va taklif qilingan muammolarni faqat “maktab” usullaridan foydalangan holda ko‘rib chiqadi va o‘qituvchi buni hal qilishning barcha bosqichlarini rasmiylashtiradi (5-rasm).

Agar Universal Math Solverning amaliy ahamiyatini kengroq ko‘rib chiqsak, ilova farzandining uy vazifasini kuzatishga odatlangan ota-onalar va matematika o‘qituvchilariga muvaffaqiyatli xizmat qiladi. Ikkinchisi o'quv jarayonida dasturning interaktiv imkoniyatlaridan foydalanishi mumkin, muammo echimlarini tushuntirishni elektron o'qituvchining "yelkasiga" qo'yadi.

Universal Math Solver ikki nashrda mavjud - ish stoli va onlayn. Birinchi versiyaning bitta o'rnatilishi uchun yillik litsenziyaning narxi 3000 tenge, onlayn nashrning narxi uch baravar yuqori.

5-rasm. Umumjahon matematikani yechish

Afsuski, maktab amaliyotida Mathematica, Mathcad, MathLab, Maple kabi kuchli matematik paketlardan litsenziyalangan nusxalarining qimmatligi tufayli foydalanish mumkin emas. Biroq, MS Office ilovalari har bir maktabda mavjud. MS Excel ofis elektron jadval protsessorining matematik qobig'idan foydalanish yuqori murakkablikdagi matematik muammolarni hal qilish imkonini beradi.

Iqtisodiyotda axborot tizimlari

Ofis to'plamlari bozori iste'molchilar soni bo'yicha eng ommaviy bozorlardan biri bo'lganligi sababli, Microsoft-da muqobil ofis mahsulotlarini taklif qiluvchi raqobatchilar - kompaniyalar borligi va hali ham borligi aniq. Ko'pgina yirik kompaniyalar o'zlarining ofis to'plamlariga ega...

Vaqti-vaqti bilan dasturiy ta'minot ishlab chiqaruvchilari dasturiy mahsulotlar uchun yamoqlarni chiqaradilar. Odatda, yamoqlar aniqlangan muammoni tuzatadi...

Mijoz dasturiy ta'minot

Xizmat paketlari va tuzatishlar o'rtasida katta farqlar yo'q. Odatda, xizmat paketi allaqachon sinovdan o'tgan bir nechta tuzatishlarni o'z ichiga oladi. Xizmat paketlari tuzatishlarga qaraganda kamroq tarqatiladi, lekin tez-tez...

USB 2.0 mezzanine adapteri

USB shinasi uchun to'rt turdagi paketlar qo'llaniladi. Marker paketi ko'rsatadi ...

LynxOS operatsion tizimi

LynuxWorks Intel protsessorli har qanday AT va CompactPCI platalari, Motorola Sand-point 750, Intel XScale IQ80310, IBM 440GP, Motorola FADS-ZU, Thales VM kabi keng doiradagi platformalar uchun LynxOS 4.0 maqsadli arxitekturasini qoʻllab-quvvatlash paketlarini (BSP) taqdim etadi. -PC6a/c, Force PowerCore 680 G3 & G4, PPC MCP750, MCPN750 uchun Motorola CompactPCI...

Ob'ektga yo'naltirilgan dizaynning asosiy bosqichlari

Paket UMLda model elementlarini tartibga solishning asosiy usuli hisoblanadi. Har bir paket o'zining barcha elementlariga, ya'ni unga kiritilgan elementlarga egalik qiladi...

Kollejda axborot tizimlarini qo'llash

"Korxona axborot tizimi" konfiguratsiyasi tashkilotning yozishmalari va ichki hujjatlari bilan ishlashni tashkil etish, shuningdek, bir qator harakatlarni avtomatlashtirish uchun mo'ljallangan...

Iqtisodiyotda amaliy dasturlar paketlarini qo'llash

Universitet ta’limiga axborot texnologiyalarini joriy etish yo‘nalishlaridan biri o‘quv jarayonida amaliy dasturlardan foydalanish...

Ma'lumotlar bazasi hisobotlarini yaratishni optimallashtiradigan dasturiy mahsulotni ishlab chiqish

1) Operatsion tizim: Microsoft Windows 7 Enterprise. Ishlab chiqish muhiti: Borland C++ Builder 6. Ofis paketlari: MS Office 2010. Qo'shimcha dasturiy ta'minot: Mozilla Firefox 12.0, Oracle 10.6 uchun Toad...

Tibbiy sug‘urta tashkilotlari o‘rtasida axborot almashinuvini avtomatlashtirish uchun dasturiy ta’minot tizimini ishlab chiqish

Axborot paketi DBF III formatidagi (dBASE RUS cp866) o'zaro bog'langan jadvallar to'plami ko'rinishidagi ma'lumotlar bazasi fragmentini o'z ichiga olgan, parol bilan himoyalangan, ZIP-tipli arxiv fayli. Axborot paketi nomi formati quyidagicha: NNNNNSSK.YMD...

Dunyoda eng ko'p ishlatiladigan ofis to'plami Microsoft Office hisoblanadi. IDC ma'lumotlariga ko'ra, ushbu ilova shaxsiy kompyuterlarning 95% dan ortig'iga o'rnatilgan...

Axborot texnologiyalarini joriy etishning iqtisodiy samaradorligi (Sberbank OAJ misolida)

Siz yaratgan hujjatlarni Bankka jo'natish uchun ularni paketga solib qo'yishingiz kerak. Buning uchun siz "Paketlar" tugmasini bosishingiz kerak. Sizga bankka yuborgan paketlaringiz bilan jadval taqdim etiladi...

Ushbu maqola protsessorlar, kompyuterlar, noutbuklar va ish stantsiyalarini sinab ko'rish uchun ishlatilishi mumkin bo'lgan va keyinchalik iXBT Application Benchmark 2017 yangi sinov paketining asosini tashkil etadigan turli xil real ilovalarga bag'ishlangan seriyadagi ikkinchi maqoladir. Eslatib o'tamiz, birinchisida Ushbu seriyaning maqolasida biz molekulyar dinamika masalalarini hal qilish uchun ishlatiladigan ikkita maxsus LAMMPS va NAMD ilovalarini ko'rib chiqdik. Ushbu maqolada biz FFTW va GNU Octave maxsus matematik paketlariga e'tibor qaratamiz. LAMMPS va NAMD kabi ushbu ilovalar taniqli SPECwpc 2.0 test to'plamining bir qismidir. Bundan tashqari, biz hisoblash vazifalarini (ish yuki) va SPECwpc 2.0 paketidan tegishli parametrlarga ega dasturlarni ishga tushirish buyruqlarini oldik.

FFTW 3.3.5

GNU Octave muhiti skript fayllari () bilan ishlashni qo'llab-quvvatlaydi va skriptni ishga tushirish uchun quyidagi buyruq ishlatiladi:

oktava-cli-4.0.3.exe

(Oktava-cli-4.0.3.exe fayli paketni sukut bo'yicha o'rnatishda C:\Octave\Octave-4.0.3\bin\ jildida joylashgan.)

Sinov uchun biz tsikllar bilan operatsiyalarni, integrallarni hisoblashni, Furyeni tez o'zgartirishni va matritsalar bilan operatsiyalarni amalga oshiradigan skript faylidan foydalanamiz. Biz ushbu skriptni noldan yozmadik, lekin uni GNU Octave asosidagi testni o'z ichiga olgan SPECwpc 2.0 to'plamidan oldik. Bu skript obench.m deb ataladi. Sinov natijasi - skriptning bajarilish vaqti.

Sinov dastgohi va sinov metodologiyasi

FFTW va GNU Octave ilovalari yordamida test qilish uchun biz quyidagi konfiguratsiyaga ega skameykani yig'dik:

  • Protsessor: Intel Core i7-6950X (Broadwell-E);
  • Ana plata: Asus Rampage V Edition 10 (Intel X99);
  • Xotira: 4x4 GB DDR4-2400 (Kingston HyperX Predator HX424C12PBK4/16);
  • Video karta: Nvidia Quadro 600;
  • Saqlash: SSD Seagate ST480FN0021 (480 GB).

Test sinovlari davomida test topshiriqlarini bajarish uchun zarur bo‘lgan vaqt o‘lchandi.

Sinov natijalarining ishlatiladigan protsessor yadrolari soniga, protsessor yadrolarining chastotasiga va xotira chastotasiga bog'liqligi ko'rib chiqildi.

Natijalarning protsessor yadrolari soniga bog'liqligi

Sinov paytida ishlatiladigan Intel Core i7-6950X protsessorining yadrolari soni Asus Rampage V Edition 10 platasining UEFI BIOS sozlamalari orqali tartibga solindi, Intel Core i7-6950X protsessori 10 yadroli, ammo Hyper-ni qo'llab-quvvatlaydi. -Threading texnologiyasi, shuning uchun operatsion tizim va ilovalar 20 yadroli (20 ta mantiqiy yadroga ega) sifatida ko'riladi.

Biz Hyper-Threading texnologiyasini o‘chirmadik va faqat jismoniy protsessor yadrolari sonini 1 tadan 10 taga o‘zgartirdik. Kelgusida mantiqiy protsessor yadrolari haqida so‘z yuritamiz, ularning soni 2 dan 20 tagacha o‘zgardi.

Barcha protsessor yadrolarining ishlash chastotasi 4,0 gigagertslida o'rnatildi.

Ko'rib turganingizdek, natijalar juda g'alati bo'lib chiqdi. GNU Octave to'plami uchun natijalarni talqin qilish juda oddiy. Ushbu paketda test topshirig'ini bajarish tezligi amalda protsessor yadrolari soniga bog'liq emas, ya'ni Intel Core i7-6950X protsessor versiyasida test topshirig'ini bajarish uchun hatto ikkita mantiqiy yadro ham etarli. Mavjud protsessor yadrolari soni ortishi bilan vazifa parallellashtiriladi, lekin har bir yadroning yuk ulushi ularning soniga mutanosib ravishda kamayadi. Natijada, protsessor yadrolari soni ortishi bilan test topshirig'ini bajarish tezligi o'zgarmaydi.

Ammo FFTW ilovasi bilan hamma narsa juda g'alati va mantiqsiz. 6, 12 va 14 yadroli (mantiqiy) test topshirig'ini bajarish vaqti g'ayritabiiy darajada uzun bo'ladi. Boshqa hollarda, test topshirig'ini bajarish vaqti taxminan bir xil. Natija juda g'alati, lekin u ko'p marta qayta tekshirilgan.

Sinovni bajarish paytida CPU yukiga qarasangiz, vaziyat quyidagicha. Birinchidan, vazifa barcha protsessor yadrolari bo'ylab parallellashtiriladi. Ikkinchidan, ba'zi vaqtlarda protsessor yadrolariga yuk kam, boshqa paytlarda esa yuqori bo'ladi. Bundan tashqari, bu xatti-harakat har qanday miqdordagi yadrolar uchun kuzatiladi. Va nima uchun ma'lum miqdordagi protsessor yadrolari bilan sinovni bajarish vaqti g'ayritabiiy darajada katta bo'lib qolishi noma'lum.

Biz testning ushbu g'alati xatti-harakati bo'yicha qo'shimcha tadqiqotlar o'tkazdik. Buning uchun biz protsessorda Hyper-Threading texnologiyasini va FFTW ilovasida takroriy testlarni o‘chirib qo‘ydik, jismoniy protsessor yadrolari sonini 1 dan 10 gacha o‘zgartirdik. Sinov natijalari quyidagicha:

Hyper-Threading texnologiyasi o'chirilgan bo'lsa, natija yanada mantiqsiz edi. 3, 5, 6, 7 va 9 yadroli testlarni bajarish vaqti katta, 1, 2, 4, 8 va 10 yadroli esa qisqa edi. Ya'ni, vazifani parallellashtirish samaradorligi protsessor yadrolari soniga bog'liq, ammo yadrolarning ko'pligi natijani yaxshilaydi degan ma'noda emas. Ma'lum miqdordagi yadrolar bilan vazifa yaxshi parallellashtiriladi, ammo ma'lum bir raqam bilan u yomon parallellashtiriladi.

Biroq, biz hali ham xulosalarimizning to'g'riligiga shubha bilan qaradik, chunki bu holda biz haqiqiy ikki, to'rt, olti va shunga o'xshash yadroli protsessor haqida emas, balki anakart BIOS orqali yadrolarni sun'iy ravishda blokirovka qilish haqida gapirgan edik. Biz sinovni boshqa protsessor - olti yadroli (12 ta mantiqiy yadro, shu jumladan Hyper-Threading) Intel Core i7-5820K bilan takrorlashga qaror qildik. Ko'rib turganimizdek, 6 ta jismoniy yoki 12 ta mantiqiy protsessor yadrolari bilan testni bajarish vaqti g'ayritabiiy darajada yuqori bo'ladi. Va bu natija Intel Core i7-5820K protsessorida tasdiqlandi. Protsessor 3,6 gigagertsli chastotada ishladi. Hyper-Threading texnologiyasiga ega barcha yadrolar faollashtirilganda (12 yadro), test topshirig'ini bajarish vaqti g'ayritabiiy darajada uzun: 1886 s. Agar siz yadrolarni ketma-ket o'chirib qo'ysangiz, u holda 10, 8, 4 va 2 yadrolar bilan sinovni bajarish vaqti 200-400 s, 6 yadroli esa - 1235 s.

Ko'rib turganingizdek, Intel Core i7-5820K protsessori Intel Core i7-6950X protsessori bilan bir xil g'alati natija beradi.

FFTW test natijalarining protsessor yadrolari soniga g'alati bog'liqligiga qaramay, biz uni iXBT Application Benchmark 2017 da qo'llaniladigan ilovalar to'plamida qoldirishga qaror qildik. Ushbu ilova ko'plab yadrolar har doim ham yaxshi emasligini aniq ko'rsatib turibdi. Ba'zan bu boshqacha sodir bo'ladi.

Ehtimol, oxirgi versiyada biz bunday sinov 30 daqiqadan ko'proq davom etadigan holatlarni istisno qilish uchun Furye transformatsiyasining hajmini kamaytiramiz.

Natijalarning protsessor chastotasiga bog'liqligi

Endi FFTW va GNU Octave ilovalarida test natijalari protsessor chastotasiga qanday bog'liqligini ko'rib chiqamiz.

Intel Core i7-6950X protsessorining asosiy chastotasi Asus Rampage V Edition 10 platasining UEFI BIOS sozlamalarida ko'paytirish omilini o'zgartirish orqali o'zgartirildi. Barcha yadrolarning ishlash chastotasi o'rnatildi (ya'ni Turbo Boost rejimi o'chirilgan). Barcha protsessor yadrolari ishlatilgan (10 ta jismoniy/20 mantiqiy). Chastota 200 MGts qadamlarda 3,0 gigagertsdan 4,2 gigagertsgacha o'zgardi. Sinov natijalari quyidagicha:

Sinov natijalaridan ko'rinib turibdiki, FFTW paketida ham, GNU Octave paketida ham testni bajarish vaqti protsessor chastotasiga bog'liq. FFTW to'plamida protsessor chastotasi 3 dan 4,2 gigagertsgacha oshganda (40% ga o'sish), testni bajarish vaqti 21% ga kamayadi. GNU Octave to'plamida protsessor chastotasining xuddi shunday o'sishi test topshiriqlarini bajarish vaqtini 24% ga qisqartirishga olib keladi.

Shunday qilib, FFTW va GNU Octave test natijalarining protsessor chastotasiga bog'liqligi odatiy holdir. GNU Octave to'plamidagi test topshirig'i protsessor chastotasi bilan biroz yaxshilanadi va FFTW to'plamidagi vazifa biroz yomonroq.

Natijalarning xotira chastotasiga bog'liqligi

Endi test topshiriqlarini bajarish tezligining xotiraning ishlash chastotasiga bog'liqligini ko'rib chiqamiz. DDR4 xotirasi to'rt kanalli rejimda ishlaydi (har bir kanal uchun bitta modul) va xotira chastotasi UEFI BIOS sozlamalarida 1600 MGts dan 2800 MGts oralig'ida 200 MGts bosqichlarida o'zgartirildi. Xotira vaqtlari o'rnatildi va chastota o'zgarganda o'zgarmadi. Barcha protsessor yadrolari 4,0 gigagertsli chastotada ishladi.

Sinov natijalari quyidagicha:

Ko'rib turganimizdek, GNU Octave va FFTW paketlarida test topshiriqlarini bajarish tezligi hech qanday tarzda xotiraning ishlash chastotasiga bog'liq emas. Hech bo'lmaganda to'rt kanalli ish rejimida DDR4 xotira o'tkazish qobiliyati 1600 MGts chastotada ham etarli va xotira chastotasini yanada oshirish test topshiriqlarini bajarishni tezlashtirishga imkon bermaydi.

Bu ko'pchilik ilovalar uchun odatiy natijadir. Ishlash tezligi xotira chastotasiga bog'liq bo'lgan ilovalar qoidadan istisno hisoblanadi.

Xulosa

Shunday qilib, yangi seriyamizning ikkinchi maqolasida biz FFTW va GNU Octave maxsus matematik ilovalariga asoslangan ikkita testni ko'rib chiqdik. Misol sifatida 10 yadroli Intel Core i7-6950X protsessoridan foydalangan holda, ushbu paketlardagi test topshiriqlari barcha protsessor yadrolari bo'ylab parallellashtirilgan, ammo ularni 100% yuklay olmasligi ko'rsatildi. GNU Octave ilovasidagi sinov natijasi amalda protsessor yadrolari soniga bog'liq emas, FFTW ilovasidagi test natijasi esa, aksincha, protsessor yadrolari soniga kuchli bog'liq, ammo bu bog'liqlik juda g'alati. Yadrolarning ma'lum sonida (14, 12 va 6) test topshirig'ini bajarish vaqti g'ayritabiiy darajada katta bo'ladi va qolgan barcha hollarda test topshirig'ini bajarish vaqti yadrolar soniga ozgina bog'liq bo'ladi.

Bundan tashqari, FFTW va GNU Octave paketlarida test topshiriqlarini bajarish tezligi chiziqli ravishda protsessor yadrolarining chastotasiga bog'liqligi (chastota 3 dan 4,2 GGts gacha o'zgarganda) ko'rsatildi.

Va nihoyat, FFTW va GNU Octave ilovalarida test topshiriqlarini bajarish vaqti hech qanday tarzda DDR4 xotira chastotasiga (to'rt kanalli rejimda va 1600 dan 2400 MGts gacha) bog'liq emasligi ko'rsatildi.

FFTW va GNU Octave ilovalarini sinovdan o'tkazishda ulardan foydalanishga oid yana bir eslatma bor. GNU Octave to'plamining takrorlanuvchanligi yomon va natijani kam xato bilan olish uchun besh marta sinovdan o'tish tavsiya etiladi. FFTW ilovasi yanada izchil natijalar beradi, ammo bu ilova kamida uchta sinovni ham talab qiladi.

Ushbu seriyadagi keyingi maqolada biz 3D-sahnalarni tasvirlash uchun ishlatiladigan uchta dasturni ko'rib chiqamiz: POV-Ray 3.7, LuxRender 1.6 va Blender 2.77a.

  • Oʻquv qoʻllanma

# wget https://dl.fedoraproject.org/pub/epel/7/x86_64/ # yum localinstall epel-release-6-7.noarch.rpm

Va shundan keyingina yum install oktava ishlaydi.
Nihoyat, hamma narsa tayyor va dastur o'rnatildi.


# oktava GNU Octave, versiya 3.8.2 Mualliflik huquqi (C) 2014 Jon V. Eaton va boshqalar. Bu bepul dasturiy ta'minot; nusxa ko'chirish shartlari uchun manba kodiga qarang. MUTLAK KAFOLAT YO'Q; hatto sotuvga yaroqlilik yoki ma'lum bir MAQSADGA MUVOFIQligi uchun ham emas. Tafsilotlar uchun "kafolat" ni kiriting. Oktava "x86_64-redhat-linux-gnu" uchun sozlangan. Octave haqida qo'shimcha ma'lumotni http://www.octave.org saytidan olishingiz mumkin. Agar siz ushbu dasturni foydali deb bilsangiz, o'z hissangizni qo'shing. Qo'shimcha ma'lumot olish uchun http://www.octave.org/get-involved.html saytiga tashrif buyuring, xato hisobotlarini qanday yuborishni o'rganish uchun http://www.octave.org/bugs.html ni o'qing. Oldingi versiyalardagi o'zgarishlar haqida ma'lumot olish uchun "yangiliklar" ni kiriting. oktava: 1>

Matritsa operatsiyalari

Keling, vaqtni behuda sarf qilmaylik va oxirgi marta muhokama qilingan bc va awk yordamida takrorlanadigan operatsiyalarni bajaraylik. Keling, matritsalar bilan bir oz o'ynaymiz.


Avval oddiy matritsani ko'chirish:


oktava:1> A= A = 1 3 5 2 4 6 oktava:2> A" ans = 1 2 3 4 5 6

Keling, chiziqli tenglamalar tizimini echishga harakat qilaylik:


x + y + z = 9 2x + 4y - 3z = 1 3x + 6y - 5z = 0

Biz matritsada harakat qilamiz A, vektor b va Ax = b tenglamani matritsa shaklida yeching


oktava:1> A= A = 1 1 1 2 4 -3 3 6 -5 oktava:2> b= b = 9 1 0 oktava:3> x=A\b x = 7.00000 -1.00000 3.00000

Biz matritsaning determinantini va xos qiymatlarini topamiz.


oktava:4> det (A) ans = -1,00000 oktava:5> eig (A) ans = -2,88897 2,76372 0,12525

Hisoblashda murakkab raqamlar ham qo'llab-quvvatlanadi.


oktava:6> A=[-3 0 2; 1 -1 0; -2 -1 0] A = -3 0 2 1 -1 0 -2 -1 0 oktava:7> x=det (A) x = -6 oktava:8> y=eig(A) y = -1,00000 + 1,41421i -1,00000 - 1,41421i -2,00000 + 0,00000i

Funktsiyalar va o'zgaruvchilar

Oktavada o'zgaruvchilar va funksiyalarni yaratish, masalan, Java yoki C-ga qaraganda ancha oson. Misol sifatida matritsalardan foydalangan holda, biz o'zgaruvchilarni qanday e'lon qilishni allaqachon ko'rib chiqdik. Yangi funksiya yaratish quyidagi sintaksisga ega


funktsiya = funktsiya_nomi (arg1, arg2, ..., argN) funktsiya tanasi endfunksiyasi
Qoida tariqasida, yangi funksiya alohida faylda yoki Oktava skript faylida yaratiladi
birinchi qo'ng'iroqdan oldin. Agar siz turli xil skript fayllarida maxsus funktsiyadan foydalanmoqchi bo'lsangiz, unda, albatta, uni alohida faylda yaratish afzalroqdir. GNU Octave da funksiya fayllari .m kengaytmasiga ega va avtomatik ravishda yuklanadi. Fayl nomi funksiya nomiga mutlaqo mos kelishi kerak.

ax² + bx + c = 0 kvadrat tenglamani yechish funksiyasini yozamiz


oktava:9> funksiya = quadr(a, b, c) > D = sqrt(b^2-4*a*c); > x1 = (-b-D)/(2*a); > x2 = (-b+D)/(2*a); > endfunksiya oktavasi:10> =quadr(a, b, c) y1 = 2 y2 = 3

Grafik interfeys

Aslida, biz bu erda buyruq qatori matematikasi haqida gapiramiz, ammo funktsiya grafigini ekranda qanday ko'rsatish hali aniq emas. Biroq, bu erda hech qanday sir yo'q - bu maqsadlar uchun Gnuplot ishlatiladi. Siz odepkg qo'shimcha paketini o'rnatish orqali Lorentz Attractorni tasvirlashingiz mumkin.


funktsiya = froessler (vt, vx) vyd = [- (vx (2) + vx (3)); vx(1) + 0,2 * vx(2); 0,2 + vx(1) * vx(3) - 5,7 * vx(3)]; endfunction A = odeset ("MaxStep", 1e-1); = ode78 (@froessler, , , A); subplot(2, 2, 1); panjara("yoqilgan"); uchastka (t, y(:,1), "-b;f_x(t);", t, y(:,2), "-g;f_y(t);", \ t, y(:,3 ), "-r;f_z(t);"); subplot(2, 2, 2); panjara("yoqilgan"); uchastka (y(:,1), y(:,2), "-b;f_(xyz)(x, y);"); subplot(2, 2, 3); panjara("yoqilgan"); uchastka (y(:,2), y(:,3), "-b;f_(xyz)(y, z);"); subplot(2, 2, 4); panjara("yoqilgan"); plot3 (y(:,1), y(:,2), y(:,3), "-b;f_(xyz)(x, y, z);");


Octave bilan ishlash uchun eng qulay grafik qobiq QtOctave dasturidir. Ikkinchisi allaqachon barqarorlashtirilgan va Octave 4.0 chiqarilgandan beri paketga kiritilgan.

Keyingisi nima?

Savol tug'ilishi mumkin: nima uchun bizga ochiq matematik paketlar kerak? Hammaga ofis ilovalari kerak, lekin hamma ham uyda o‘tirgan holda Laplas konvertatsiyasi yordamida Puasson tenglamalarini yechishi shart emas. Universitetlar uchun MATLAB jismoniy va tijorat tashkilotlariga qaraganda ancha arzon. Tijorat tashkilotlari, agar kerak bo'lsa, mablag' topadi va oddiy odamlarga universitetlarda matematikani o'rganishga yoki ustunlar bo'ylab sanashga ruxsat berishadi.


Albatta, bu noto'g'ri tushuncha. Ochiq kodli dasturiy ta'minot yordamida amalga oshirilgan ilmiy hisob-kitoblar qo'shimcha "himoya darajasi" ga ega, chunki agar kerak bo'lsa har kim bir xil hisob-kitoblarni takrorlashi va natijalarning haqiqiyligini tekshirishi mumkin. Xuddi shu hisob-kitoblar qimmat dasturiy ta'minotda amalga oshiriladi natijalarni tekshirish imkoniyatini qisman kesib tashladi. Muammo aslida ancha kengroq (inglizcha matn) va bu faqat ochiq yoki xususiy matematik dasturlar haqida emas. Hech kimga sir emaski, ilmiy jurnallar, qoida tariqasida, mualliflardan eksperimental natijalarning takrorlanishi va model sinovini kafolatlash uchun etarli ma'lumotlar va usullarni taqdim etishni talab qilmaydi. Iqtisodchilar va moliyachilar ko'pincha bu bilan gunoh qiladilar, shunchaki o'zlarining ma'lumotlarini tasniflashadi. “Tasniflangan” ma’lumotlarga ega maqolalar qatoridan tanlab olingan hisoblar va xulosalarni tekshirish Teglar qo‘shish

Bepul matematika

Aleksandr Bikmeev kompyuter matematikasi qanchalik erkin ekanligini va bepul dasturiy ta'minot qanchalik matematik ekanligini tushunadi.

Har qanday fan, fizikadan filologiyagacha, matematika yutuqlaridan foydalanadi. Shu munosabat bilan, matematik bo'lmagan mutaxassislarga matematik shaklda muammolarni qo'yish va formulalar yoki qiymatlar to'plami ko'rinishida echimlar olish imkonini beradigan vositalar kerak, ya'ni ularga echish ishini o'z zimmasiga oladigan kompyuter matematikasi tizimlari kerak. turli usullar yordamida matematik masalalar.

Afsuski, bizning mamlakatimizda bunday dasturlar ilmiy faoliyatning juda tor sohasida keng tarqalgan va bularning barchasi maktab o'quvchilari va talabalarning professional matematik to'plamlar bilan tanishtirilmaganligi, faqat bitta litsenziyaning narxi bilan bog'liq. ko'pincha minglab va o'n minglab rubllarni tashkil qiladi.

Biz sizni Internetdan bepul yuklab olish mumkin bo'lgan, har qanday tadqiqot turi uchun (ba'zan zahiralar bilan) foydalanish mumkin bo'lgan bepul matematik paketlar dunyosiga qarashni taklif qilamiz, shuningdek, manba matnlari mavjudligi tufayli ularning ichki ma'lumotlarini o'rganing. tuzilishi va agar xohlasangiz, o'z kuchlaringiz bilan ularning funksionalligini kengaytiring.

Simvolik hisoblar

Kompyuter matematikasi (CM) tizimlari uzoq vaqt davomida ishlab chiqilgan va Maksima() birinchilardan biri edi. Dastlab bu tijorat mahsuloti edi, ammo raqobatga dosh bera olmay, tizim bepul bo'ldi.

Shell wxMaxima va ekrandan matematik operatsiyalar panellarini ko'rsatish yoki yashirish imkonini beruvchi menyu elementi.

Asosiy afzallik Maksima boshqa bepul tizimlardan oldin ramziy hisoblashni qo'llab-quvvatlashdir. Ya'ni, analitik ifoda yoki tenglamani kiritish orqali siz natijani analitik shaklda ham olishingiz mumkin.

Maksima algebraik tenglamalarni, tenglamalar sistemalarini yechish, integrasiya, differentsiallash, qatorni kengaytirish va hokazo amallarni bajarish imkonini beradi. Bundan tashqari, u differensial tenglamalar, chegaraviy masalalar, Koshi masalalarini yecha oladi, matritsalar bilan algebraik hisoblarni amalga oshiradi, dekart va qutb koordinata tizimlarida turli funktsiyalar bilan aniqlangan grafik va sirtlarni qura oladi. Barcha imkoniyatlarni sanab o'tish qiyin.

SCM uchun Maksima Bir nechta qobiqlar ishlab chiqilgan, ularning eng qulayi (ajam foydalanuvchi uchun). wxMaxima(1-rasmga qarang). 0.8.0 versiyasidan boshlab u tezda yaxshi tomonga o'zgarib bormoqda. Eng so'nggi versiya (0.8.3) kabi taniqli tijorat paketlarining xususiyatlarini o'z ichiga oladi Chinor Va MathCAD. Ushbu qobiqda ishlash juda oddiy va foydalanishdan bir necha daqiqadan so'ng maqbul natijalarga erishishga imkon beradi. Menyuda va asboblar panelida nomlari mavjud bo'lgan ko'plab operatsiyalar o'rnatilgan til va buyruqlarni bilmasdan ham muammolarni hal qilish imkonini beruvchi qulay sehrgarlar bilan jihozlangan. Maksima. Yana bir muhim fakt - bu SCM uchun barcha qobiqlar ruslashtirilgan. Bundan tashqari, bepul paketga qarash orqali Maksima, talabalar tijorat paketlariga osonroq ko'nikishlari mumkin, bu interfeysning nisbiy o'xshashligi va ishlatiladigan sintaksis bilan bog'liq (ayniqsa, Maksima Va Chinor).

Tizim yaxshi hujjatlashtirilgan, ammo ma'lumotnomalar faqat ingliz tilida taqdim etilgan. Bizning jurnalimizda SCMda ishlash bo'yicha o'quv materiallari chop etilgan Maksima(LXF81–86). Konsol ilovasi sifatida, Maksima ommaviy rejimda ishlashi mumkin, ya'ni siz unga ishlov berish uchun buyruqlar ro'yxati bilan matnli faylni yuborishingiz va natijalar bilan yana matnli faylni olishingiz mumkin va agar siz chiqishni belgilash tizimi yordamida formatlash mumkin deb hisoblasangiz. TeX, keyin bu o'z ilovalaringizni yaratish uchun asos sifatida foydalanish imkonini beradi. Bunday rivojlanishning bir misoli kengaytmadir TeXmacs.

Mavjud o'quv tajribasiga asoslanib aytishimiz mumkinki, kichik kurs talabalari ishlashni o'zlashtiradilar Maksima etarlicha tez va boshqa fanlar bo'yicha topshiriqlarni bajarishda foydalanishni boshlang. Ammo har bir kurs bilan ular ko'proq va ko'proq muammolarga duch kelishadi.

Gap shundaki, ko'plab ijobiy tomonlar bilan bir qatorda, Maksima salbiylari ham bor. Birinchidan, yakuniy natija, ayniqsa murakkab muammolarni hal qilishda, ko'p jihatdan matematikani bilish darajasiga va berilgan SCMdan foydalanish tajribasiga bog'liq, chunki ba'zida siz dastlabki o'zgarishlarni o'zingiz bajarishingiz kerak bo'ladi. Ikkinchidan, Maksima algebraik ifodalar bilan juda yaxshi ishlaydi, lekin transsendental, logarifmik va shunga o'xshash ifodalar bilan sezilarli qiyinchiliklarga duch keladi. Biroq, agar analitik yechimni olishning iloji bo'lmasa, unda siz har doim raqamli hisoblardan foydalanishingiz mumkin. Uchinchidan, imkoniyatlar Maksima murakkab grafiklarni yoki vizualizatsiyani qurish uchun, masalan, vektor maydonini imkoniyatlar bilan taqqoslab bo'lmaydi Chinor. Va nihoyat, to'rtinchidan, to'g'ri ishlash uchun ko'plab buyruqlar va doimiylarni o'rganish kerak Maksima, va bu vaqt va sabr-toqatni talab qiladi.

SCM Maksima ko'pgina Linux distributivlariga kiritilgan yoki hech bo'lmaganda omborlarda mavjud bo'lishi kerak. U AltLinux School, Edubuntu va EduMandriva kabi ta'lim mahsulotlariga kiritilgan.

Oyna SMath studiyasi, bunda funksiya aniqlanadi, uning hosilasi hisoblanadi va grafik chiziladi.

Shuni ta'kidlash kerakki, muhandislar hali ham bunday kuchli kalkulyator ilovasi bilan ishlashga odatlangan MathCAD. Bu har qanday platforma uchun mavjud bo'lgan muhandislik hisoblash tizimi (Tijorat paketlarini ko'ring), lekin jiddiy xarajat. Biroq ish beruvchilar bitiruvchilardan ushbu tizimda ishlay olishlarini talab qiladi. Ta'lim muassasalari nima qilishi kerak?

Mamlakatimizda tejash loyihasi tug'ildi: SMath studiyasi(http://ru.smath.info/forum/). Bu bepul, ammo, afsuski, hali bepul mahsulot emas, uning ishlab chiqaruvchisi Andrey Ivashov yirtqich hayvonga muqobil yaratishga harakat qilmoqda. MathCAD, va u muvaffaqiyatga erishadi (2-rasmga qarang). Ilova atrof-muhit uchun mo'ljallangan .NET, keyin esa moslashtirilgan Mono.

SMath studiyasi analitik hisob-kitoblarni, matritsa operatsiyalarini, chizma va lotin hisoblarini bajarishga imkon beradi va hatto dasturlash funktsiyalarini qo'llab-quvvatlaydi. Afsuski, analitik integratsiya hali qo'llab-quvvatlanmaydi, lekin mahsulot muvaffaqiyatli rivojlanmoqda va 2009 yil kuzida muallif uchinchi tomon plaginlaridan foydalanishga imkon beradigan infratuzilmani ishlab chiqishni yakunlamoqda. Ehtimol, keyin dasturni ishlab chiqish yangi bosqichga ko'tariladi va biz to'liq huquqli muqobilga ega bo'lamiz MathCAD.

Shuni ham ta'kidlash kerakki, 2009 yilning bahorida muallif bilan kelishilgan holda, mahsulot EduMandriva ta'lim tarqatilishiga kiritilgan. Cheklangan funksionalligiga qaramay, ushbu ilova maktab o'quvchilari va kichik talabalar darajasida kundalik hisob-kitoblarni, shuningdek oddiy muhandislik hisoblarini amalga oshirishga imkon beradi. Va agar siz buni hisobga olsangiz SMath studiyasi Windows Mobile tomonidan boshqariladigan cho'ntak kompyuterlari va smartfonlarda o'zini juda yaxshi his qiladi, shuning uchun u bilan tanishish maktab o'quvchilari va talabalar uchun zarurdir.

Rasmiy veb-sayt har doim DOC va ODT formatidagi hujjatlarni o'z ichiga oladi va rasmiy forumda siz ishlab chiquvchi yoki hamjamiyatga savollar berishingiz va dasturni ishlab chiqishda ishlatiladigan algoritmlarni muhokama qilishingiz mumkin.

Oyna wxMaxima ramziy hisoblar natijalari va funksiya grafigi bilan

Ushbu bo'limni yakunlash uchun men ramziy matematik to'plamlar natijada raqam emas, balki ifoda hosil qilishiga e'tibor qaratmoqchiman. Shaklda ko'rsatilgan misolni ko'rib chiqing. 3, bunda maxsus funksiya aniqlanadi va uning uchun ikkinchi hosila topiladi; keyin funksiya integrallanadi. Shu bilan birga, jadval tuzildi. Shunday qilib, maktab o'quvchilari va talabalar vizual ravishda funktsiyani to'liq tahlil qilishlari mumkin. Va bu hammasi emas: Maksima qavs ochish, o‘xshash atamalarni keltirish, almashtirishlarni bajarish va ifodaga qo‘yilgan muayyan shart va taxminlarni ko‘rsatish orqali ifodalarni soddalashtirishni biladi. Bunga tenglamalar va tenglamalar tizimini, shuningdek, differentsial tenglamalarni ramziy ravishda yechish qobiliyatini qo'shsangiz, zamonaviy talaba ushbu vositalarsiz ishlay olmasligini tushunasiz va fan o'qituvchilari interfaol topshiriqlar yoki ko'rgazmali materiallarni kiritish orqali dars va amaliy mashg'ulotlarni jonlantirishi mumkin. .

Raqamli hisoblar

Ma’lumki, har bir masalani analitik tarzda yechish mumkin emas, ya’ni yechimni ma’lum formula shaklida olish mumkin. Keyin ma'lum bir aniqlik bilan yechim olish uchun turli xil raqamli usullar yordamga keladi. Raqamli hisoblar uchun ilovalarning eng mashhur vakili kompyuter algebra tizimi (CAS) hisoblanadi. Matlab.

Matlab butun dunyoda keng tarqalgan (taqqoslash LXF109 ga qarang), lekin hatto ta'lim litsenziyalarining narxi nafaqat maktablar, balki Rossiyaning ko'plab universitetlari uchun ham imkoni yo'q. Chet elda ular pulni hisoblashni afzal ko'rishadi - va inson resurslarini bepul analoglarni ishlab chiqishga sarflashadi Matlab. Keling, ulardan ba'zilarini ko'rib chiqaylik.

Avvalo, mening fikrimcha, loyihaga e'tibor qaratish lozim GNU Ostave(http://www.gnu.org/software/octave/). Ishlab chiquvchilar ushbu tizimni "raqamli hisoblar uchun yuqori darajadagi dasturlash tili" sifatida joylashtiradilar. Ko'p yillik bepul *nix loyihalari singari, u buyruq qatori interfeysini ta'minlaydi. Terminalga kiring oktava- va (agar, albatta GNU oktava kompyuteringizda o'rnatilgan), sizning oldingizda ushbu tizim uchun so'rov paydo bo'ladi. Buyruqlarni yozishni boshlang va terminal hisoblar natijalarini ko'rsatadi.

Buyruqlar qatori interfeysi o'zining afzalliklariga ega, chunki u amalda kompyuterning hisoblash resurslarini egallamaydi, protsessorning barcha kuchini buyruq matni va hisoblash natijalarini chiroyli ko'rsatish uchun emas, balki hisob-kitoblar uchun qoldiradi. Va shunga qaramay, zamonaviy foydalanuvchi kamdan-kam hollarda bunga dosh berishga tayyor.

. Shell qtOktava amalga oshirilgan hisob-kitoblar bilan.

Uzoq vaqt GNU oktava nihoyat paydo bo'lgunga qadar grafik interfeysga ega emas edi qtOktava(4-rasmga qarang). Ushbu qobiq interfeysga juda o'xshaydi Matlab va sehrgarlar yordamida ba'zi muntazam operatsiyalarni (masalan, chizma tuzish) bajarilishini avtomatlashtirishga imkon beradi.

Tizim tili imkon qadar tilga o'xshash qilib yaratilgan Matlab; demak, o'zlashtirgan odam GNU oktava, qayta tayyorlanmasdan amalda ishlay oladi Matlab, va bu ish beruvchilarga kerak bo'lgan narsadir. Bundan tashqari, bepul dasturiy ta'minot harakati ishqibozlari tizim uchun etarli miqdordagi kengaytmalar paketlarini yaratdilar. Shu sababli, SKA ning funksionalligi doimiy ravishda o'sib bormoqda. Tizim uchun ham, kengaytmalar paketlari uchun ham keng qamrovli hujjatlarning mavjudligi (ingliz tilida bo'lsa ham) ushbu mahsulotni nafaqat foydali, balki o'qish uchun ham qulay qiladi.

Kamchiliklari foydalanuvchilar uchun juda qulay bo'lmagan qobiq interfeysini o'z ichiga oladi qtOktava, ayniqsa versiya 2008 yilning kuzidan beri yangilanmaganligi sababli (loyihadan voz kechilganga o'xshaydi). Kengaytma paketlari funksiyalarga boy emas va grafik imkoniyatlar bilan porlamaydi; bundan tashqari, ular teng emas, chunki vaziyat shundayki, bitta loyiha birinchi kurs talabasi tomonidan, ikkinchisi, masalan, universitet o'qituvchilari jamoasi tomonidan ishlab chiqilgan. Ammo bu mutlaqo bepul loyiha bo'lib, uning yordamida siz olingan echimlarning litsenziyalash tozaligi haqida tashvishlanishingiz shart emas.

Men ko'rib chiqmoqchi bo'lgan keyingi paket chaqiriladi Scilab(http://www.scilab.org), nomining o'zi bilan o'xshashlikni bildiradi Matlab. Dastlab u ham tijorat mahsuloti bo'lgan va u deyilgan Blez, undan keyin Baziliya. Uning yaratuvchilari birinchi versiyalardan ilhomlangan Matlab, va ular bir muncha vaqt raqobatlashdilar. Biroq, 90-yillarning boshlarida Simulog uni sotishni to'xtatdi va keyin Frantsiya Milliy tadqiqot institutining (INRIA) olti nafar ishlab chiquvchisi loyihaga asos soldi. Scilab.

Scilab o'zining yaxshi ishlab chiqilgan interfeysi, juda ko'p sonli ixtisoslashtirilgan kengaytmalar paketlarining mavjudligi va Konsortsium tomonidan qo'llab-quvvatlanishi bilan tengdoshlaridan ajralib turadi. Scilab, bu butun dunyodan yirik ta'lim va ilmiy muassasalarni o'z ichiga oladi.

Interfeys Scilab 5

Scilab- shunga o'xshash yagona bepul tizim Matlab, deb nomlangan o'z bloklarini modellashtirish vositasiga ega Scicos. Mahsulot taqsimoti disk raskadrovka imkoniyatlariga ega o'rnatilgan skript va funksiya muharririni o'z ichiga oladi. Scilab yuqori texnologiyali ilovalarni yaratish uchun ilg'or grafik imkoniyatlariga ega. Demolarni ko'rib chiqish orqali tizimning funksionalligi bilan tanishishingiz mumkin - ulardan ba'zilari juda ta'sirli (menyu bandlarini tanlang ? > Imkoniyatlarni namoyish qilish).

Scilab U nafaqat matritsalar ustida barcha turdagi operatsiyalarni bajarish, balki turli koordinata tizimlarida grafiklar va uch o'lchovli sirtlarni qurish, genetik algoritmlar bilan ishlash, grafiklar bo'yicha masalalarni echish, statistik funktsiyalar, simulyatsiya vositalari va boshqalarni o'z ichiga oladi. Har yili SKA dan foydalanishga bag'ishlangan bir nechta konferentsiyalar o'tkaziladi Scilab fan, ta'lim va ishlab chiqarishda.

Dunyo bo'ylab bir nechta kitoblar nashr etilgan, unda ish tasvirlangan Scilab, shuningdek, bir qator maxsus muammolarni hal qilish. Afsuski, ularning hech biri rus tiliga tarjima qilinmagan. Rossiyada faqat ikkita kitob nashr etilgan, biri milliy loyiha doirasida, ikkinchisi esa Scilab bepul bo'lmagan paketlar bilan birga tasvirlangan. Jurnalimizda ishlashga oid darsliklar ham qayta-qayta nashr etilgan Scilab(LXF106–109 va ) va shunga qaramay, hujjatlar hali ham etishmayapti va ma'lumotnoma materiallari har doim ham u yoki bu funksiya qanday ishlashini tushunishga imkon bermaydi.

Freemat- uchta hamfikrdan iborat jamoa nimaga qodir ekanligining ta'sirchan natijasi.

Beshinchi versiyaning chiqarilishi Scilab tizimi rivojlanishining yangi bosqichini boshlab berdi. Ilova interfeysi o'zgardi (ishlab chiquvchilar uni tark etishdi GTK-interfeys), bloklarni modellashtirish vositasi o'zgara boshladi Scicos, 2009 yil oktyabr oyida nomini o'zgartirishi kerak Xcos.

Mavzu bo'yicha yana bir variant Matlab hisoblanadi Freemat(); ushbu paket bilan yana bir muhim umumiy xususiyat mavjud Matlab, ya'ni ob'ektga yo'naltirilgan dasturlashni qo'llab-quvvatlash. Dastur interfeysi juda yoqimli. Buyruqlarni avtoto'ldirish asosiy oynada amalga oshiriladi. Rasmiy veb-saytda tizim bilan ishlash bo'yicha to'liq qo'llanma mavjud (ingliz tilida). Dasturni tarqatish paketi kichik, bugungi standartlarga ko'ra, hajmi - 18 MB.

Tizim chiziqli va chiziqli bo'lmagan tenglamalar va tenglamalar tizimini raqamli hal qilish va raqamli signallarni qayta ishlash imkonini beradi (6-rasmga qarang); ko'p o'lchovli matritsalar bilan ishlashga qodir. Asosiy ijobiy fikrlar Freemat, ga qaraganda Scilab Va Oktava, tizimning ichki tilining tilga ko'proq mosligi Matlab va foydalaning OpenGL grafiklar va sirtlarni yaratish, ularni yanada yaxshi ko'rinishga aylantirish.

Salbiy tomonlari Freemat unumdorligi past (ba'zi vazifalar boshqa paketlarga qaraganda ko'p marta sekin hal qilinadi) va kengaytma paketlarining etishmasligi. Ushbu tizim faqat uch kishilik jamoaning sa'y-harakatlari bilan ishlab chiqilgan. Loyiha katta jamoaga ega emas.

Masofaviy matematika

Yuqorida aytib o'tilgan tizimlar mahalliy loyihalardir, ya'ni ular bilan ishlash bitta mashinada amalga oshiriladi. Ammo bu noqulay bo'lishi mumkin - masalan, masofaviy ta'lim bilan; Bundan tashqari, barcha talabalar ushbu ilovalarni o'z uy kompyuterlariga o'rnatishga rozi bo'lmaydilar (va ba'zan mumkin). Bunday holda, matematik paketlar bilan masofadan ishlash uchun asboblar kerak bo'ladi.

SMath Studio Live: brauzerdan chiqmasdan hisoblang (juda tez bo'lmasa ham).

Biz ko'rib chiqqanlar orasida bunday imkoniyat taqdim etiladi SMath studiyasi. Bobda Jonli Rasmiy veb-sayt (http://smath.info/live) virtual ish varag'ini o'z ichiga oladi, unda har kim o'z hisoblarini amalga oshirishi mumkin. Tizim juda qulay, garchi u ayniqsa tez emas.

Va shunga qaramay, tizim bu borada ko'proq professional SAGE(http://www.sagemath.org/). Ushbu tizim kod bilan o'zaro ishlash uchun grafik interfeysni ta'minlovchi veb-serverdan iborat Python, uning yadrosi yozilgan. Sevimli veb-brauzeridan foydalangan har qanday foydalanuvchi serverga ulanishi, ro'yxatdan o'tishi va shaxsiy maydoniga ega bo'lishi mumkin. U ochiq yoki yopiq bo'lishi mumkin, ya'ni faqat server ma'muri va egasining o'zi foydalanishi mumkin. Shaxsiy makonda ishchi varaqlar yaratilishi mumkin va barcha hisob-kitoblar ular bo'yicha amalga oshiriladi.

Ish varag'ida siz har qanday mavjud tildan foydalanishingiz mumkin va ularning ko'pi bor. Tizim standarti SAGE quyidagi mahsulotlarni birlashtiradi: GAP, Maxima, Python, R, LaTeX. Bundan tashqari, ular ulanishi mumkin Oktava, Aksioma, Magma, Mathematica, Matlab, Maple, Mupad va boshqalar. Natijada, biz bepul va tijorat kompyuter matematikasi tizimlaridan foydalangan holda har qanday matematik paketlarni o'rgatish va hisob-kitoblarni amalga oshirish imkonini beruvchi yagona masofaviy ish serveriga ega bo'lamiz.

. Noma'lum sabablarga ko'ra, Sage ishlashni rad etadi Firefox, lekin aks holda bu uzoqdan ishlash uchun yaxshi yechim.

Shaxsiy joylarga kirish huquqlari tizimi va bir vaqtning o'zida bir nechta foydalanuvchilarning ish varag'i bilan hamkorlik qilish imkoniyati sizga masofaviy ta'limni muammolarni hal qilish misollarini o'z ichiga olgan o'quv materialini tushuntirish varag'i va har bir talaba uchun shaxsiy topshiriqlar varaqlari bilan tashkil qilish imkonini beradi.

Hozirda bir nechta ommaviy mavjud SAGE-serverlar - siz ularga ulanishingiz, jamoat mulki bo'limida joylashtirilgan varaqlarga qarashingiz, o'zingizning shaxsiy makoningizni yaratishingiz va qiyinchilik tug'ilganda hamjamiyatdan yordam so'rashingiz mumkin. Buning uchun ish varag'ini hammaga ochiq qilib qo'yish kifoya. Sizni ishontirib aytamanki, yordam berishga tayyor odamlar ko'p, yagona muammo shundaki, ish tili ingliz tilidir.

Rasmiy veb-saytda test umumiy serveriga havolalar (http://www.sagenb.org), shuningdek, ushbu tizim yordamida yaratilgan o'quv materiallari va kitoblar mavjud. Ro'yxatdan o'ting va sinab ko'ring SAGE- Balki siz izlayotgan narsa shudir? Shuni ham ta'kidlash kerakki, biz serverga kira olmadik Firefox, lekin boshqa brauzerlarda hech qanday muammo yo'q edi.

Shunday qilib, biz eng mashhur bepul kompyuter matematika tizimlarini ko'rib chiqdik. Ularni mashg'ulotlarda yoki ish uchun ishlatish mumkinmi, buni o'zingiz hal qilasiz. Biz allaqachon o'z tanlovimizni qildik va bundan afsuslanmaymiz.

Tijorat tizimlari

Tijorat tizimlari orasida uchta eng mashhurlari: Matlab(raqamli hisoblar), Chinor(asosiy urg'u ramziy hisob-kitoblarga qaratilgan) va Matematika(birinchi ikkitasining intilishlarini muvaffaqiyatli birlashtiradi). Kuchli muhandislik to'plami ajralib turadi MathCAD, chunki u ko'proq yirik muhandislik kalkulyatori bo'lib, u matematik fizikaning yoki shifrlash nazariyasi, signallarni qayta ishlash va hokazolarning murakkab muammolarini hal qilish uchun mo'ljallanmagan.

Bu paketlarning barchasi eng keng tarqalgan platformalar uchun versiyalarga ega: Windows, Linux va Mac OS X. Softline narxlari roʻyxatiga koʻra, akademik muassasalar uchun ushbu paketlarning bitta litsenziyasi narxi:

  • Matlab- 30 765 rubl;
  • Matematika- 9002 rubl;
  • Chinor- 36 286 rubl;
  • MathCAD- 5290 rub.

Siz o'zingiz xulosa qilishingiz mumkin.



Sizga maqola yoqdimi? Do'stlaringizga ulashing: