Kaj počne program matlab? Splošne informacije o MATLAB

27.02.2024

TAMBOVSKA DRŽAVNA TEHNIČNA UNIVERZA


ODDELEK

"Informacijski procesi in upravljanje"

Metodološki razvoj

za laboratorijsko lekcijo št. 1

pri disciplini "Teorija odločanja"

Ime discipline

ime teme

Zadeva:Študij enodimenzionalnih optimizacijskih metod

Cilj dela:

Študij enodimenzionalnih optimizacijskih metod in metod njihove algoritemske implementacije v okolju večnamenskega integriranega avtomatskega sistema za matematične in znanstveno-tehnične izračune MATLAB 7.1;

Primerjalna ocena višine računskih stroškov metod: neposredno skeniranje, dihotomija, »zlati rez« in Fibonaccijeva metoda.

Literatura:

1. Aoki M. Uvod v optimizacijske metode. M.: Nauka, 1977. 444 str.

2. Batishchev D.I. Optimalne metode načrtovanja. M.: "Radio in komunikacije", 1984. 248 str.

3. Bodrov V.I., Lazareva T.Ya., Martemyanov Yu.F. Matematične metode odločanja: Učbenik. dodatek. Tambov: Založba Tamb. država tiste. Univ., 2004. 124 str.

4. Polak E. Metode numerične optimizacije. M.: Mir, 1997. 376 str.

5. Himmelblau D. Uporabno nelinearno programiranje. M.: Mir, 1975. 534 str.

6. Yudin D.B. Računalniške metode teorije odločanja. M.: Nauka, 1989. 316 str.

7. Ketkov Yu. L., Ketkov A. Yu., Shultz M. M. MATLAB 7: programiranje, numerične metode. - Sankt Peterburg: BHV-Petersburg, 2005. - 752 str.

Z izvedbo pouka

Laboratorijske vaje v disciplini "Teorija odločanja" se izvajajo z namenom poglobitve in utrjevanja teoretičnega znanja, ki so ga študenti pridobili pri različnih vrstah pouka in v procesu samostojnega študija učnega gradiva, pridobivanja veščin praktičnega izvajanja matematičnih metod. odločanja. Na podlagi rezultatov laboratorijskih vaj naj študentje

Teoretično gradivo, na podlagi katerega je bilo izvedeno modeliranje, kot tudi bistvo fizičnih procesov, formaliziranih v programih;

Osnovne metode modeliranja ustreznih procesov;

Izberite in ocenite vpliv glavnih parametrov na rezultat modeliranja;

Analizirajte in povzemite dobljene rezultate.

Zaključek laboratorijskih vaj vključuje tri faze: predhodna priprava na laboratorijsko uro, samo lekcijo in poročanje o laboratorijski lekciji.

Namen lekcije je prikazati povezavo med teoretično snovjo in prakso ter študente naučiti uporabe teorije pri reševanju praktičnih problemov.

Laboratorijske vaje so strukturirane tako, da ne predvidevajo znanja študentov o MATLAB-u. Vsak laboratorij se začne s povzetkom MATLAB, ki študentu ponudi osnovne informacije, potrebne za dokončanje dejavnosti.

Priprave na pouk

Na predvečer pouka morajo učenci:

Preberite priročnik za ta laboratorij;

Ponovite gradivo predavanj in preučite predlagano literaturo na to temo;

Preučite postopek za opravljanje dela;

Pripravite se na odgovore na varnostna vprašanja.

Postopek lekcije

V uvodnem delu lekcije se sprejme učna skupina, poda se povezava s predhodno preučenim gradivom, napovejo se tema, namen, vrstni red in značilnosti te lekcije ter preveri pripravljenost učne skupine na lekcijo.

Nato študenti začnejo izvajati raziskavo v skladu z metodologijo. Za kakršna koli nejasna vprašanja v zvezi z laboratorijsko uro naj se študentje obrnejo na učitelja, inženirsko osebje ali inštruktorja računalniškega laboratorija. Rezultati raziskave in zaključki so predstavljeni v obliki laboratorijskega poročila. Poročilo je delovni dokument študenta in se na zagovoru izroči vodji. Nato sledi zagovor poročil o laboratorijski uri, na koncu pa se povzamejo rezultati lekcije.

Poročanje o lekciji

Študenti morajo dobiti kredit za laboratorijske vaje. Načelo poročanja je individualno in se lahko izvaja ustno ali pisno po opravljenem glavnem delu pouka. Pri ocenjevanju se upoštevajo: razpoložljivost, pismenost in pravilnost poročila, kakovost laboratorijskega dela in rezultati odgovorov na testna vprašanja. Študenti, ki niso prejeli kreditne točke in so odsotni od te laboratorijske vaje, o tem poročajo ob svojem času.

Kratek opis MATLAB-a

Sistem MATLAB (Matrix Laboratory) je sestavljen iz velikega števila posebnih programov, ki omogočajo reševanje najrazličnejših matematičnih in tehničnih problemov z različnih področij znanosti. Njegov glavni element je jedro sistema MATLAB. Poleg tega sistem vsebuje približno 80 različnih nizov ukazov (tako imenovanih »Toolboxes«), ki ustrezajo različnim področjem matematike, matematične fizike, oblikovanja, komunikacij, ekonomije itd. To delo uporablja osnovna programska orodja MATLAB: M-datoteke - funkcije, vgrajene funkcije, operatorji, ukazi itd.

Slika 1. Sistemsko namizje

Slika 1 prikazuje namizje sistema. Menijska vrstica (Datoteka, Uredi itd.) je v mnogih pogledih podobna tisti v urejevalniku Microsoft Word. Tudi vrstica ikon, ki se nahaja spodaj, izvaja enake operacije kot v urejevalniku Word (z izjemo zadnjih 3). Sistemsko namizje je sestavljeno iz več oken, katerih sestavo lahko spreminjamo z menijskimi ukazi Namizje. Slika 1 v zgornjem oknu na levi prikazuje vsebino delovnega prostora Delovni prostor, ki vsebuje opise vseh konstant in funkcij, ki jih uporabnik vnese med delovanjem. V spodnjem oknu Zgodovina ukazov Podano je zaporedje izvedenih ukazov. Velikosti oken prilagajamo tako, da z miško povlečemo rob. Glavno okno namizja - Ukazno okno(ukazno okno). V ukaznem oknu se za znakom ">>" vpiše ukazna vrstica, ki se izvede po pritisku na tipko " Vnesite".

MATLAB vam omogoča ustvarjanje programskih datotek, podobnih drugim programskim jezikom na visoki ravni. Poleg tega ima lastnosti zmogljivega programabilnega kalkulatorja. V tem delu se programska izvedba iskalnih algoritmov izvaja z uporabo M-funkcijskih datotek, programe pa je mogoče zagnati in vnesti začetne podatke iz ukaznega okna.

Format številk se nastavi v meniju mapa(slika 1) v razdelku Nastavitve uporabo funkcije Numerična oblika. Najpogosteje uporabljeni od 12 možnih formatov so Kratek in dolga– kratki in dolgi številski formati.

Nekateri izmed temeljnih konceptov MATLAB-a so spremenljivke in izjave .

Spremenljivka označena z eno samo črko ali nizom črk in številk, ki se začnejo s črko. Skupno število črk in številk v kompletu ne sme presegati devetnajst. Izjava ima naslednjo obliko:

>>spremenljivka=izraz

Ko vnesete stavek, se spremenljivki dodeli izraz, ki sledi znaku enačaja, ali, če vključuje kakršne koli matematične operacije, rezultat, ki je dobljen po izvedbi teh operacij. Stavek lahko vnesete v M-datoteko ali v ukazno okno MATLAB. Znak ">>" je ukazni poziv, ki se prikaže na zaslonu v ukaznem oknu in nakazuje, da je mogoče vnesti stavke.

Glavni aritmetični operatorji so podani v tabeli 1.1. Pri izvajanju izračunov v ukaznem oknu po pritisku na " Vnesite"rezultat je dodeljen parametru" ans", če ustreznemu izrazu ni dodeljeno ime ali njegovo ime - v nasprotnem primeru (imena spremenljivk, konstant in funkcij se morajo začeti s črko (latinične črke), lahko vsebujejo številke in podčrtaj). Za blokiranje izpisa izračuna rezultat določenega izraza za njim morate postaviti znak (podpičje).

Tabela 1.1

Recimo, da želite ovrednotiti izraz in rezultat dodelite spremenljivki X. V tem primeru bo stavek (program) imel naslednjo obliko (pri decimalnih ulomkih je celo število ločeno od ulomka s piko):

>> x=log(1+5*((log10(100))^2-0,2*pi)/sqrt(1+2,71828^3))

Po uvedbi izjave, tj. s pritiskom na tipko Enter se spodaj takoj prikaže rezultat. Če je treba rezultat blokirati, tj. ni treba prikazati na zaslonu, potem morate na koncu izjave postaviti znak "; « (podpičje). Prejšnji izraz je mogoče predstaviti v drugi obliki:

>> a=(log10(100))^2;

>> b=sqrt(1+2,71828^3);

>> x=log(1+5*(a-0,2*pi)/b)

MATLAB ima več vgrajenih spremenljivk: pi, eps, inf, i in j. Spremenljivka pi pomeni številko, eps=2 -52 =2,2204*10 -16 – napaka za operacije s števili s plavajočo vejico, inf- neskončnost ( ), jaz in j– imaginarna enota ( jaz = j= ).

Če levi argument ni določen, je rezultat izraza dodeljen skupni spremenljivki ans.

Relacijski operatorji (tabela 1.2) se uporabljajo v pogojnih stavkih, operatorjih zanke itd. pri izvajanju iskalnih algoritmov z uporabo M-funkcij (podprogrami-funkcije so zapisane v datotekah s končnico .m).

Tabela 1.2

Torej so programi v sistemu MATLAB M-datoteke besedilnega formata, ki vsebujejo zapis programov v obliki programskih kod.

Vhodni jezik MATLAB ima le 9 operatorjev, ki uporabljajo 14 funkcijskih besed. Ustrezne skladenjske strukture so podane v tabeli. 1.3.

Tabela 1.3

Format operaterja Razlaga
var = izraz Operator dodelitve. Izračuna vrednosti izraza expr in shrani rezultate izračunov v spremenljivko var
ifpogoj_1 izjave_1 konec Pogojni operator. Če je pogoj_1 resničen, se izvede skupina operators_1, če je pogoj_2 resničen, potem skupina operators_2, ... Če so vsi navedeni pogoji napačni, se izvedejo operatorji, ki se nahajajo med else in end
switchexpr casevail operatorji_1 caseval2 operatorji_2. . . . . . . . . [othervise izjave] konec Preklopi po vrednosti izraza izraz. Če se ujema z vrednostjo vail , se izvede skupina operators_1, če se ujema z vrednostjo val2, se izvede skupina operators_2, ... Če vrednost expr ne sovpada z nobeno od navedenih vrednosti, potem operatorji, ki se nahajajo med othervise in end se izvedeta
forvar=el:e3 končni stavki Cikel tipa aritmetične progresije, v katerem se spremenljivka var z vsako ponovitvijo telesa zanke spremeni iz začetne vrednosti el s korakom e2 v končno vrednost e3
stavki whilecondition končajo Zanka s predpogojem, ki se ponavlja, dokler podani pogoj ni resničen
poskusi izjave_1 ulovi izjave 2 konec Poskus izvajanja operatorjev skupine_1. Pod pogojem, da se zaradi njihove izvedbe pojavi izjema, se nadzor prenese na skupino operaterji_2 (obravnava okvarnih situacij). Če ne pride do napake, se skupina operators_2 ne izvede
odmor Zgodnji izhod iz nadzornih struktur, kot so za , medtem ko, preklopi, poskusi - ulovi
funkcija f1 funkcija f2 (x1,x2, . . .) funkcija y=f3(xl,x2,...) funkcija =f4(xl,x2, . . .) Glava funkcije (xl, x2, ... - vhodni parametri; y, yl, y2, ... - izhodni parametri)
vrnitev Zgodnji izstop iz funkcijskega telesa

Pri pisanju funkcijskih programov se zahteva, da mora ime M-datoteke, v kateri je program shranjen, nujno sovpadati z imenom funkcije.

Vse spremenljivke, ki se pojavljajo v telesu funkcije, z izjemo globalnih spremenljivk (ki jih deklarira globalni operater), vhodnih parametrov in izhodnih parametrov, veljajo za lokalne. Tvorijo lokalni delovni prostor in so na voljo samo v telesu funkcije, ki jih je ustvarila, nobena druga funkcija pa jih ne more uporabljati.

Jezik MATLAB ne vsebuje operatorja Pojdi do. V zvezi s tem v besedilih m-datotek ni operaterskih oznak. Za identifikacijo linij, na katerih prihaja do izrednih razmer, se uporabljajo interne številke, ki jih sistem samodejno dodeli.

MATLAB je tehnični računski jezik na visoki ravni, interaktivno okolje za razvoj algoritmov in sodobno orodje za analizo podatkov.
MATLAB v primerjavi s tradicionalnimi programskimi jeziki (C/C++, Java, Pascal, FORTRAN) omogoča zmanjšanje časa, potrebnega za reševanje tipičnih problemov, za red velikosti in bistveno poenostavi razvoj novih algoritmov.
MATLAB je temelj celotne družine izdelkov MathWorks in je primarno orodje za reševanje širokega spektra znanstvenih in uporabnih problemov na področjih, kot so: projektiranje objektov in krmilnih sistemov, komunikacijski sistemi, obdelava signalov in slik, merjenje in testiranje signalov, finančno modeliranje in računalniška biologija itd.
Jedro MATLAB čim bolj olajša delo z matrikami realnih, kompleksnih in analitičnih podatkovnih tipov ter s podatkovnimi strukturami in iskalnimi tabelami. MATLAB vsebuje vgrajene funkcije za linearno algebro (LAPACK, BLAS), hitro Fourierjevo transformacijo (FFTW), funkcije za delo s polinomi, funkcije za osnovno statistiko in numerično reševanje diferencialnih enačb; razširjene matematične knjižnice za Intel MKL. Vse vgrajene funkcije jedra MATLAB so oblikovali in optimizirali strokovnjaki in delujejo hitreje ali tako hitro kot njihov ekvivalent C/C++.

Opis jezika

Jezik MATLAB je programski jezik na visoki ravni, ki vključuje matrične podatkovne strukture, široko paleto funkcij, integrirano razvojno okolje, objektno usmerjene zmogljivosti in vmesnike do programov, napisanih v drugih programskih jezikih.

Programi, napisani v MATLAB-u, so dveh vrst - funkcij in skript. Funkcije imajo vhodne in izhodne argumente ter svoj delovni prostor za shranjevanje vmesnih rezultatov izračuna in spremenljivk. Skripti uporabljajo skupen delovni prostor. Tako skripti kot funkcije se ne interpretirajo v strojno kodo in se shranijo kot besedilne datoteke. Možno je tudi shraniti tako imenovane vnaprej razčlenjene programe - funkcije in skripte, obdelane v obliko, primerno za strojno izvajanje. Na splošno se takšni programi izvajajo hitreje od navadnih.

Glavna značilnost jezika MATLAB so njegove široke zmožnosti za delo z matrikami, kar so ustvarjalci jezika izrazili v sloganu Think vectorized.

Matematika in izračuni

MATLAB uporabniku ponuja veliko (nekaj sto) funkcij za analizo podatkov, ki pokrivajo skoraj vsa področja matematike, zlasti:
Matrike in linearna algebra - matrična algebra, linearne enačbe, lastne vrednosti in vektorji, singularnosti, matrična faktorizacija in drugo.
Polinomi in interpolacija - koreni polinomov, operacije nad polinomi in njihovo diferenciranje, interpolacija in ekstrapolacija krivulj in drugo.
Matematična statistika in analiza podatkov - statistične funkcije, statistična regresija, digitalno filtriranje, hitra Fourierjeva transformacija in drugo.
Obdelava podatkov - niz posebnih funkcij, vključno z risanjem, optimizacijo, ničelnim iskanjem, numerično integracijo (v kvadraturah) in drugimi.
Diferencialne enačbe - reševanje diferencialnih in diferencialno-algebrskih enačb, diferencialnih enačb z zakasnitvijo, enačb z omejitvami, parcialnih diferencialnih enačb in drugih.
Redke matrike so poseben podatkovni razred paketa MATLAB, ki se uporablja v specializiranih aplikacijah.
Celoštevilska aritmetika - izvajanje celoštevilskih aritmetičnih operacij v MATLAB-u.


Razvoj algoritma

MATLAB ponuja priročna orodja za razvoj algoritmov, vključno z visokonivojskimi, z uporabo konceptov objektno usmerjenega programiranja. Ima vsa potrebna orodja za integrirano razvojno okolje, vključno z razhroščevalnikom in profilerjem. Funkcije za delo s celotnimi vrstami podatkov olajšajo ustvarjanje algoritmov za mikrokontrolerje in druge aplikacije, kjer je to potrebno.


Vizualizacija podatkov

Paket MATLAB ima veliko število funkcij za izdelavo grafov, vključno s tridimenzionalnimi, vizualno analizo podatkov in ustvarjanje animiranih videoposnetkov.

Vgrajeno razvojno okolje vam omogoča ustvarjanje grafičnih uporabniških vmesnikov z različnimi kontrolami, kot so gumbi, vnosna polja in drugo. Z uporabo komponente prevajalnika MATLAB je mogoče te grafične vmesnike pretvoriti v samostojne aplikacije.


Zunanji vmesniki

MATLAB vključuje različne vmesnike za dostop do zunanjih rutin, napisanih v drugih programskih jezikih, podatkov, odjemalcev in strežnikov, ki komunicirajo prek tehnologij Component Object Model ali Dynamic Data Exchange, in perifernih naprav, ki komunicirajo neposredno z MATLAB. Mnoge od teh zmožnosti so znane kot MATLAB API.


COM

MATLAB omogoča dostop do funkcij, ki vam omogočajo ustvarjanje, upravljanje in brisanje objektov COM (tako odjemalcev kot strežnikov). Podprta je tudi tehnologija ActiveX. Vsi objekti COM pripadajo posebnemu razredu COM paketa MATLAB. Vsi programi, ki imajo funkcije krmilnika avtomatizacije, lahko dostopajo do MATLAB-a kot strežnika avtomatizacije.


DDE

MATLAB vsebuje funkcije, ki omogočajo dostop do drugih aplikacij Windows in tem aplikacijam dostop do podatkov MATLAB prek tehnologije dinamične izmenjave podatkov (DDE). Vsaka aplikacija, ki je lahko strežnik DDE, ima svoje edinstveno identifikacijsko ime. Za MATLAB je to ime Matlab.


Spletne storitve

V MATLAB-u je možno klicati metode spletnih storitev. Posebna funkcija ustvari razred na podlagi metod API-ja spletne storitve.

Matlab komunicira z odjemalcem spletne storitve tako, da od njega sprejema sporočila, jih obdela in pošlje odgovor. Podprte so naslednje tehnologije: preprost protokol za dostop do objektov (SOAP) in opisni jezik spletnih storitev (WSDL).


vrata COM

Vmesnik serijskih vrat MATLAB omogoča neposreden dostop do perifernih naprav, kot so modemi, tiskalniki in znanstvena oprema, ki se povežejo z računalnikom prek serijskih vrat (vrata COM). Vmesnik deluje tako, da ustvari poseben predmet razreda za serijska vrata. Razpoložljive metode tega razreda vam omogočajo branje in pisanje podatkov na serijska vrata, uporabo dogodkov in obdelovalcev dogodkov ter pisanje informacij na disk računalnika v realnem času. To je potrebno pri izvajanju poskusov, simulaciji sistemov v realnem času in za druge aplikacije.


datoteke MEX

Paket MATLAB vključuje vmesnik za interakcijo z zunanjimi aplikacijami, napisanimi v C in Fortran. Ta interakcija se izvaja prek datotek MEX. Iz MATLAB-a je mogoče poklicati rutine, napisane v C ali Fortran, kot da bi bile vgrajene funkcije paketa. Datoteke MEX so dinamične povezovalne knjižnice, ki jih lahko naloži in izvede tolmač, vgrajen v MATLAB.


DLL

Generični vmesnik DLL MATLAB vam omogoča klicanje funkcij, ki jih najdete v običajnih dinamično povezovalnih knjižnicah, neposredno iz MATLAB-a. Te funkcije morajo imeti vmesnik C.

Poleg tega ima MATLAB možnost dostopa do svojih vgrajenih funkcij prek vmesnika C, ki omogoča uporabo funkcij paketa v zunanjih aplikacijah, napisanih v C. Ta tehnologija v MATLAB-u se imenuje C Engine.


Kompleti orodij

Za MATLAB je mogoče izdelati posebne orodjarne, ki razširijo njegovo funkcionalnost. Orodjarna so zbirke funkcij, napisanih v MATLAB-u za reševanje določenega razreda problemov. Mathworks nudi komplete orodij, ki se uporabljajo na številnih področjih, vključno z naslednjim:
Digitalna obdelava signalov, slik in podatkov: DSP Toolbox, Image Processing Toolbox, Wavelet Toolbox, Communication Toolbox, Filter Design Toolbox - nabori funkcij, ki omogočajo reševanje širokega nabora problemov pri obdelavi signalov, obdelavi slik, oblikovanju digitalnih filtrov in komunikacijskih sistemov.
Nadzorni sistemi: Control Systems Toolbox, µ-Analysis and Synthesis Toolbox, Robust Control Toolbox, System Identification Toolbox, LMI Control Toolbox, Model Predictive Control Toolbox, Model-Based Calibration Toolbox - nizi funkcij, ki olajšajo analizo in sintezo dinamičnih sistemov, načrtovanje, modeliranje in identifikacija krmilnih sistemov, vključno s sodobnimi krmilnimi algoritmi, kot so robustno vodenje, H∞-vodenje, LMN sinteza, µ-sinteza in drugi.
Finančna analiza: GARCH Toolbox, Fixed-Income Toolbox, Financial Time Series Toolbox, Financial Derivatives Toolbox, Financial Derivatives Toolbox, Datafeed Toolbox – nabori funkcij, ki vam omogočajo hitro in učinkovito zbiranje, obdelavo in prenos različnih finančnih informacij.
Analiza in sinteza geografskih kart, vključno s tridimenzionalnimi: Mapping Toolbox.
Zbiranje in analiza eksperimentalnih podatkov: Data Acquisition Toolbox, Image Acquisition Toolbox, Instrument Control Toolbox, Link for Code Composer Studio – nizi funkcij, ki vam omogočajo shranjevanje in obdelavo podatkov, pridobljenih med poskusi, tudi v realnem času. Podprta je široka paleta znanstvene in inženirske merilne opreme.
Vizualizacija in predstavitev podatkov: Virtual Reality Toolbox - omogoča ustvarjanje interaktivnih svetov in vizualizacijo znanstvenih informacij z uporabo tehnologij virtualne resničnosti in jezika VRML.
Razvojna orodja: MATLAB Builder for COM, MATLAB Builder for Excel, MATLAB Compiler, Filter Design HDL Coder – nabori funkcij, ki omogočajo ustvarjanje neodvisnih aplikacij iz okolja MATLAB.
Interakcija z zunanjimi programskimi izdelki: MATLAB Report Generator, Excel Link, Database Toolbox, MATLAB Web Server, Link for ModelSim - nizi funkcij, ki vam omogočajo shranjevanje podatkov v različnih vrstah, tako da lahko drugi programi delajo z njimi.
Baze podatkov: Database Toolbox - orodja za delo z bazami podatkov.
Znanstveni in matematični paketi: Bioinformatics Toolbox, Curve Fitting Toolbox, Fixed-Point Toolbox, Fuzzy Logic Toolbox, Genetic Algorithm and Direct Search Toolbox, OPC Toolbox, Optimization Toolbox, Partial Differential Equation Toolbox, Spline Toolbox, Statistic Toolbox, RF Toolbox - kompleti specializirane matematične funkcije, ki omogočajo reševanje širokega nabora znanstvenih in inženirskih problemov, vključno z razvojem genetskih algoritmov, reševanjem problemov delnih odvodov, problemov s celimi števili, optimizacijo sistema in drugih.
Nevronske mreže: Neural Network Toolbox - orodja za sintezo in analizo nevronskih mrež.
Simbolni izračuni: Symbolic Math Toolbox - orodja za simbolne izračune z možnostjo interakcije s simbolnim programom Maple.

Poleg zgoraj naštetega obstaja na tisoče drugih kompletov orodij MATLAB, ki so jih napisala druga podjetja in navdušenci.

Tisti, ki se ukvarjajo z višjo matematiko, dobro vedo, s kakšnimi matematičnimi »pošastmi« imajo včasih opravka. Na primer, za izračun nekega velikanskega trojnega integrala lahko porabite res veliko časa, mentalne energije in neobnovljenih živčnih celic. Seveda je zelo zanimivo izzvati integral in ga vzeti. Kaj pa, če namesto tega integral grozi, da vas bo vzel? Ali, še huje, je kubični trinom ušel izpod nadzora in ponorel? Tega ne bi želel svojemu sovražniku.


Prej sta bili le dve možnosti: obupati nad vsem in iti na sprehod ali pa se podati v večurno bitko z integralom. No, nekaterim je vzelo več ur, drugim več minut – kdo se je učil kako. Ampak to ni bistvo. Dvajseto stoletje in nezadržno premikajoči se napredek nam ponujata tretjo pot, in sicer omogočata, da »na hitro« vzamemo najkompleksnejši integral. Enako velja za reševanje vseh vrst enačb, risanje grafov funkcij v obliki kubičnih hiperboloidov itd.

Za takšne nenavadne, a periodično pojavljajoče se situacije med študenti obstaja močno matematično orožje. Za tiste, ki še ne veste, spoznajte programski paket MATLAB.

Matlab bo rešil enačbo, jo približal in zgradil graf funkcije. Ali razumete, kaj to pomeni, prijatelji?

To pomeni, da je eden najmočnejših paketov za obdelavo podatkov, ki so danes na voljo. Ime pomeni MatrixLaboratorij. Laboratorij Matrix,če v ruščini . Zmogljivosti programa pokrivajo skoraj vsa področja matematike. Z uporabo Matlaba lahko torej:

  • Izvajati vse vrste operacij na matrikah, reševati linearne enačbe, delati z vektorji;
  • Izračunajte korenine polinomov katere koli stopnje, izvajajte operacije na polinomih, diferencirajte, ekstrapolirajte in interpolirajte krivulje, gradite grafe poljubnih funkcij;
  • Izvajanje statistične analize podatkov z uporabo digitalnega filtriranja, statistične regresije;
  • Reši diferencialne enačbe. V delnih odvodih, linearnih, nelinearnih, z robnimi pogoji - ni pomembno, Matlab bo rešil vse;
  • Izvedite celoštevilske aritmetične operacije.

Poleg vsega tega vam zmožnosti MATLAB-a omogočajo vizualizacijo podatkov, vključno s konstruiranjem tridimenzionalnih grafov in ustvarjanjem animiranih videoposnetkov.

Naš opis Matlaba seveda še zdaleč ni popoln. Poleg zmožnosti in funkcij, ki jih zagotavlja proizvajalec, obstaja ogromno orodij Matlab, ki so jih preprosto napisali navdušenci ali druga podjetja.

MATLAB kot programski jezik


Je tudi programski jezik, ki se uporablja neposredno pri delu s programom. Ne bomo se spuščali v podrobnosti, povejmo le, da so programi, napisani v MATLAB-u, dve vrsti: funkcije in skripti.


Glavna delovna datoteka programa je M-datoteka. To je neskončna besedilna datoteka in v njej so neposredno programirani izračuni. Mimogrede, naj vas ta beseda ne prestraši - za delo v MATLAB-u vam ni treba biti profesionalni programer.

M-datoteke delimo na

  • M-scenariji. Skript M je najpreprostejša vrsta datoteke M in nima vhodnih ali izhodnih argumentov. Ta datoteka se uporablja za avtomatizacijo ponavljajočih se izračunov.
  • M-funkcije. M-funkcije so M-datoteke, ki sprejemajo vhodne in izhodne argumente.

Da bi jasno prikazali, kako poteka delo v MATLAB-u, spodaj podajamo primer ustvarjanja funkcije v Matlabu. Ta funkcija bo izračunala povprečno vrednost vektorja.
f funkcija y = povprečje (x)
% AVERAGE Povprečna vrednost vektorskih elementov.
% AVERAGE(X), kjer je X vektor. Izračuna povprečje elementov vektorja.
% Če vhodni argument ni vektor, se ustvari napaka.
= velikost(x);
če (~((m == 1) | (n == 1)) | (m == 1 & n == 1))
napaka ("Vhodna matrika mora biti vektor')
konec
y = vsota (x)/dolžina (x); % Dejanski izračun

Definicijska vrstica funkcije pove MATLAB-u, da je datoteka funkcija M, in podaja tudi seznam vhodnih argumentov. Tako je definicijska črta za povprečno funkcijo videti takole:
funkcija y = povprečje (x)
Kje:

  1. funkcija - ključna beseda, ki definira M-funkcijo;
  2. y - izhodni argument;
  3. povprečje - ime funkcije;
  4. x je vhodni argument.

Torej, če želite napisati funkcijo v Matlabu, se morate spomniti, da vsaka funkcija v sistemu MATLAB vsebuje vrstico za definicijo funkcije, podobno spodnji.

Seveda je tako zmogljiv paket potreben ne le za olajšanje življenja študentov. Trenutno je MATLAB po eni strani zelo priljubljen med strokovnjaki na številnih znanstvenih in inženirskih področjih. Po drugi strani pa je zaradi zmožnosti dela z velikimi matrikami MATLAB nepogrešljivo orodje za finančne analitike, ki jim omogoča reševanje veliko več problemov kot na primer znani Excel. Več o tem si lahko preberete v preglednem članku.

Slabosti dela z MATLAB


Kakšne so težave pri delu z MATLAB? Morda obstaja le ena težava. Ampak temeljni. Da bi v celoti razkrili zmožnosti MATLAB-a in enostavno rešili težave, ki se pojavijo pred vami, se boste morali potruditi in najprej razumeti sam Matlab (kako ustvariti datoteko, kako ustvariti funkcijo itd.). In to ni tako preprosto, saj moč in široke možnosti zahtevajo žrtvovanje.

Tudi če bi želeli, ne moremo reči, da MATLAB jepreprost program. Kljub temu upamo, da bo vse našteto zadosten argument, da se lotimo njegovega razvoja.

In končno. Če ne veste, zakaj je vse v vašem življenju šlo tako in ne drugače, vprašajte Matlab o tem. Samo v ukazno vrstico vnesite "zakaj". Odgovoril bo. Poskusi!

Zdaj poznate zmožnosti Matlaba. Na področju izobraževanja se MATLAB pogosto uporablja pri poučevanju numeričnih metod in linearne algebre. Mnogi študenti ne morejo brez njega pri obdelavi rezultatov eksperimenta, opravljenega med laboratorijskim delom. Za hitro in učinkovito osvajanje osnov dela z MATLAB-om se vedno lahko obrnete na nas, ki smo vam kadarkoli pripravljeni odgovoriti na vsako vaše vprašanje.

Kot večina drugih programskih jezikov tudi Matlab omogoča uporabo matematičnih izrazov, vendar za razliko od mnogih med njimi ti izrazi v Matlabu vključujejo matrike. Glavne sestavine izraza:

Spremenljivke;

Operaterji;

Funkcije.

Spremenljivke. V Matlabu ni treba definirati vrste ali dimenzije spremenljivke. Ko Matlab naleti na novo ime spremenljivke, samodejno ustvari spremenljivko in dodeli ustrezno količino pomnilnika. Če spremenljivka že obstaja, Matlab spremeni njeno sestavo in po potrebi dodeli dodaten pomnilnik. na primer

št_ študenti = 25

ustvari matriko 1x1 z imenom št_ študenti in shrani vrednost 25 v svoj edini element.

Imena spremenljivk so sestavljena iz črk, številk ali podčrtajev. Matlab uporablja samo prvih 31 znakov imena spremenljivke. Matlab razlikuje med malimi in velikimi črkami. Zato A in a- ni ista spremenljivka. Če želite videti matriko, povezano s spremenljivko, preprosto vnesite ime spremenljivke.

Številke. Matlab uporablja običajen decimalni številski sistem z neobvezno decimalno vejico in znaki plus/minus za števila. Znanstveni številski sistem uporablja črko e določiti množitelja desetice. Uporabljajo se namišljena števila jaz oz j kot končnico. Spodaj je navedenih nekaj primerov pravilnih številk:

Vse številke so shranjene v formatu dolga, so to števila s plavajočo vejico z omejeno natančnostjo - približno 16 pomembnih števk in omejenim obsegom - od približno 10 -308 do 10.308.

Operaterji. Izrazi uporabljajo običajne aritmetične operacije in pravila prednosti (tabela 1).

Tabela 1

Aritmetične operacije paketa Matlab

Funkcije. Matlab ponuja veliko število elementarnih matematičnih funkcij, kot npr abs, sqrt, exp, greh. Izračun kvadratnega korena ali logaritma negativnega števila ni napaka: v tem primeru je rezultat ustrezno kompleksno število. Matlab ponuja tudi bolj zapletene funkcije, vključno s funkcijami Gamma in Bessel. Večina teh funkcij ima zapletene argumente. Za seznam vseh osnovnih matematičnih funkcij vnesite:

pomočelfun

Če si želite ogledati seznam vseh funkcij Matlab za analizo podatkov:

pomočdatafun

Če morate vedeti o StatistikaŠkatla z orodjem, vnesite:

pomočstatistika

Seznam osnovnih funkcij je predstavljen v tabeli. 2.

tabela 2

Osnovne funkcije paketa Matlab

Logaritem števila na osnovo:.

Če želite prikazati bolj zapletene matematične in matrične funkcije, vnesite:

pomočspecfun

pomočelmat

oz.

Nekatere funkcije, kot je sqrt in greh, - vgrajena So del Matlaba, zato so zelo učinkoviti, vendar je do njihovih računskih podrobnosti težko dostopati. Medtem ko druge funkcije, kot je npr gama in sinh, implementirano v m-datoteke. Zato lahko vidite njihovo kodo in jo po potrebi celo spremenite.

Več posebnih funkcij zagotavlja vrednosti pogosto uporabljenih konstant:

Neskončnost se pojavi pri deljenju z nič ali pri izvajanju matematičnega izraza, ki povzroči prelivanje, tj. realmax. Ni številka ( NaN) generira pri vrednotenju izrazov, kot je 0/0 oz Inf/ Inf, ki nimajo posebnega matematičnega pomena.

Imena funkcij niso rezervirana, zato je mogoče njihove vrednosti spremeniti v nove, na primer:

eps = 1. e-6

jasnoeps

Relacijski operatorji služijo za primerjavo dveh količin, vektorjev ali matrik, imajo vsi relacijski operatorji dve primerjani količini in so zapisani, kot je prikazano v tabeli. 3.

Zdaj zmogljivosti sistema bistveno presegajo zmogljivosti originalne različice Laboratorija Matrix. Današnji MATLAB, zamisel The MathWorks, Inc., je zelo učinkovit jezik za inženiring in znanstveno računalništvo. Podpira matematične izračune, znanstveno vizualizacijo grafike in programiranje z uporabo operacijskega okolja, ki ga je enostavno naučiti. Najbolj znana področja uporabe sistema MATLAB:

Matematika in računalništvo;

Razvoj algoritmov;

Računalniški eksperiment, simulacijsko modeliranje, izdelava prototipov;

Analiza podatkov, raziskave in vizualizacija rezultatov;

Znanstvena in inženirska grafika;

Razvoj aplikacij, vključno z grafičnim uporabniškim vmesnikom.

MATLAB je interaktivni sistem, katerega glavni objekt je polje, za katerega dimenzije ni treba izrecno podati. To omogoča reševanje številnih računskih problemov, povezanih s formulacijami vektorske matrike.

Različica MATLAB 6.1 je predzadnji dosežek razvijalcev (zadnji je bil MATLAB 6.5).

Sistem MATLAB je hkrati operacijsko okolje in programski jezik. Ena od največjih prednosti sistema je, da je mogoče programe za večkratno uporabo napisati v MATLAB. Uporabnik lahko sam piše specializirane funkcije in programe, ki so sestavljeni v obliki M-datotek. Zato vam paketi aplikativne programske opreme - MATLAB Application Toolboxes, ki so del družine izdelkov MATLAB, omogočajo, da ste na ravni najsodobnejših svetovnih dosežkov.

Operacijsko okolje sistema MATLAB 6.1. Operativno okolje sistema MATLAB 6.1 je nabor vmesnikov, ki podpirajo komunikacijo tega sistema z zunanjim svetom preko dialoga z uporabnikom preko ukazne vrstice, urejevalnika datotek M, interakcije z zunanjimi sistemi Microsoft Word, Excel itd.

Po zagonu programa MATLAB se na zaslonu računalnika prikaže njegovo glavno okno, ki vsebuje meni, ravnilo orodja z gumbi in odjemalski strani okna z vabilnim znakom. To okno se običajno imenuje ukazno okno Sistemi MATLAB (slika 1).

meni mapa(slika 2) združuje običajne funkcije: Uredi odgovoren za spreminjanje vsebine Okno ukazi (razveljavi, ponovi, izreži, kopiraj, prilepi, izberi vse, izbriši itd.) in za brisanje nekaterih oken MATLAB; meni Pogled– za oblikovanje namizja; Spletni meni – zažene spletne strani iz interneta; meni Okno– deluje z urejevalnikom/debuggerjem M-datotek (zapre vse M-datoteke, eno od njih naredi trenutno); meni pomoč– Deluje z referenčno dokumentacijo in predstavitvami.


Možnost si zasluži posebno pozornost Nastavitve... (izbor lastnosti), ki ob izbiri odpre okno, ki na levi strani vsebuje drevo objektov (slika 3), na desni pa njihove možne lastnosti.

Nadzorna plošča Ukazno okno sistema MATLAB omogoča enostaven dostop do operacij nad M-datotekami: ustvarjanje nove M-datoteke; odpiranje obstoječe M-datoteke; brisanje fragmenta; kopiranje fragmenta; vstavljanje fragmenta; obnovitev samo opravljene operacije itd.

IN strani stranke Ukazno okno MATLAB, po pozivu lahko vnesete različne številke, imena spremenljivk in znake operacij, ki skupaj sestavljajo nekatere izraze. Če pritisnete Enter, MATLAB ovrednoti izraz ali, če ne ovrednoti, ga ponovi. Čeprav znak ";" na koncu vrstice zatre izpis rezultata (odmev).

Tako lahko uporabnik v odjemalskem delu ukaznega okna MATLAB takoj zapiše ukaze, ki tvorijo posamezne izračune ali celoten program.

Tako smo analizirali strukturne dele ukaznega okna MATLAB. Toda poleg njih obstaja še več elementov MATLAB, ki pomagajo pri delu:

Ekipe- okno, ki vsebuje predhodno vnesene ukaze v ukaznem oknu (»zgodovina ukazov«).

Delovni prostor je področje pomnilnika MATLAB, v katerem se nahajajo sistemske spremenljivke. Vsebino tega področja si lahko ogledate v ukazni vrstici z uporabo ukazov WHO(prikaže samo imena spremenljivk) in čigav(prikaže informacije o velikostih nizov in vrsti spremenljivke) ali v ločenem oknu pod istim imenom. V njem lahko izvedete naslednje operacije: naložite podatkovno datoteko, shranite delovni prostor kot (ukazi omogočajo odpiranje in shranjevanje vsebine delovnega prostora v binarno datoteko MAT), izbrišete izbrane spremenljivke; odprite izbrane spremenljivke (kjer jim lahko spremenite vrednost). Poleg tega lahko v meniju Urejanje počistite ukazno okno in zgodovino ukazov ter delovni prostor (ali zaženete ukaz v ukaznem oknu: jasno).

Za shranjevanje in zagon delovnega prostora lahko uporabite ukaza za nalaganje in shranjevanje.

Primer.

Shranjevanje v: matlab.mat

>> shrani moj.mat

>> naloži moj.mat

>> shrani moj2

>> naloži moj2

Trenutni katalog– okno, ki je nekakšen “vodnik” po katalogih MATLAB.

Zaženi urejevalnik– okno, ki prikazuje drevo strukturnih elementov MATLAB-a in druge z njim nameščene programske opreme, ki jo lahko zaženete z dvojnim levim klikom miške. Na primer, to okno je lahko videti kot slika 9.

Urejevalnik/razhroščevalnik datotek M– eden najpomembnejših strukturnih delov MATLAB-a, ki ga lahko odpremo z izbiro ustrezne možnosti v glavnem meniju, orodni vrstici ali prikličemo iz ukazne vrstice z ukazom uredi ali uredi<имя М-файла>in vam omogoča ustvarjanje in urejanje M-datotek.

Urejevalnik/razhroščevalnik podpira naslednje operacije: ustvarjanje nove M-datoteke; odpiranje obstoječe M-datoteke; shranjevanje M-datoteke na disk; brisanje fragmenta; kopiranje fragmenta; vstavljanje fragmenta; pomoč; nastavitev/brisanje kontrolne točke; nadaljevanje izvedbe itd.

VODNIK je grafični uporabniški vmesnik, v katerem se ustvarjajo celotne aplikacije.

Interaktivna delovna seja. M-datoteke. Interaktivni način je uporabniški način za vnos ukazov in izrazov s tipkovnice, katerih izvedba proizvede potrebne numerične rezultate, ki jih je mogoče preprosto in hitro prikazati z vgrajenimi grafičnimi orodji paketa MATLAB. Toda uporaba tega načina za ustvarjanje in shranjevanje določenega programa ni mogoča. Zato so ustvarjalci MATLAB-a poleg ukaznega okna, v katerem je implementiran interaktivni način, prepoznali posebne datoteke, ki vsebujejo jezikovne kode MATLAB, in jih poimenovali M-datoteke (*.m). Za ustvarjanje M-datoteke uporabite urejevalnik besedil (M-file editor/debugger).

Delo v urejevalniku datotek M. Delo v ukazni vrstici MatLab postane težavno, če morate vnesti veliko ukazov in jih pogosto spreminjati. Najbolj priročen način za izvajanje ukazov je uporaba M-datoteke, v katere lahko vpisujete ukaze, jih izvajate naenkrat ali po delih, jih shranite v datoteko in jih uporabite v prihodnje. Za delo M- urejevalnik je namenjen datotekam M-datoteke. Z urejevalnikom lahko ustvarite lastne funkcije in jih pokličete, tudi iz ukazne vrstice.

Razširite meni Datoteka glavnega okna MatLaba in v postavki Novo izberite podpostavko M-datoteka. V oknu urejevalnika se odpre nova datoteka M-datoteke (slika 10). Zapišimo v datoteko program za izračun aritmetične sredine

spremenljivki a in b, nato pa jo shranite z imenom fun1.m. Primerjaj metode za rešitev problema, predstavljene v tabeli.