Cum se configurează smartphone-uri și PC-uri. Portal informativ

Programare în matlab. Funcții matematice speciale

Curs 3. Programare în mediul MATLAB.

1. Fișiere M. .................................................. .................................................. ...............................................

1.1. Lucrează în editor Fișiere M. .................................................. .................................................. ...

1.2. Tipuri de fișiere M. Fișier program. .................................................. .............................................

1.3. Funcții de fișiere. .................................................. .................................................. ...............................

Funcții de fișiere cu un singur argument de intrare.......................................................................................

Funcții de fișiere cu mai multe argumente de intrare........................................................................

Funcții de fișiere cu mai multe argumente de ieșire.....................................................................

1.4. Subfuncții. .................................................. .................................................. .................................

2. Construcții de control ale limbajului de programare....................................................................

2.1. Operatori de buclă..............................................................................................................................

Pentru buclă. .................................................. .................................................. .............................................

buclă în timp ce. .................................................. .................................................. .....................................

2.2. Operatori de ramificație....................................................................................................................

Operator condiționat dacă. .................................................. .................................................. .....................

Declarație Switch. .................................................. .................................................. ................................

2.3. Declarațiile break, continue și return. .................................................. ....................................

2.4. Despre tehnicile de programare rațională în MATLAB........................................................

Multe sisteme matematice au fost create pornind de la presupunerea că utilizatorul își va rezolva problemele cu puțină sau deloc programare. Cu toate acestea, a fost clar de la început că o cale asemanatoare are dezavantaje și în general vicios. Multe sarcini necesită instrumente de programare avansate care simplifică scrierea algoritmilor lor și, uneori, deschid noi metode de creare a acestora din urmă.

Pe de o parte, MATLAB conține un număr mare de operatori și funcții încorporate (apropiindu-se de o mie) care rezolvă cu succes multe probleme practice, pentru care anterior era necesară pregătirea unor programe destul de complexe. De exemplu, acestea sunt funcții pentru inversarea sau transpunerea matricelor, calcularea valorilor unei derivate sau integrale etc., etc. Numărul de astfel de funcții, ținând cont de pachetele de expansiune ale sistemului, ajunge deja la multe mii și este în continuă creștere. Dar, pe de altă parte, sistemul MATLAB încă de la început a fost creat ca un limbaj de programare puternic orientat spre matematică pentru calcule tehnice. nivel inalt. Și mulți au considerat pe bună dreptate acest lucru ca pe un avantaj important al sistemului, indicând posibilitatea aplicării sale pentru rezolvarea problemelor matematice noi, cele mai complexe.

MATLAB are un limbaj de intrare care seamănă cu BASIC (cu o notă de Fortran și Pascal). Scrierea de programe în sistem este tradițională și, prin urmare, familiară majorității utilizatorilor de computere. În plus, sistemul face posibilă editarea programelor folosind orice editor de text familiar utilizatorului. De asemenea, are propriul editor cu un depanator. Limbajul sistemului MATLAB în ceea ce privește programarea calculelor matematice este mult mai bogat decât oricare limbă universală programare la nivel înalt. Implementează aproape toate instrumentele de programare cunoscute, inclusiv programarea orientată pe obiecte și vizuală. Acest lucru oferă programatorilor experimentați oportunități vaste de exprimare.

1. Fișiere M.

V În prelegerile anterioare, ne-am uitat la exemple destul de simple, pentru care trebuie să tastați câteva comenzi la linia de comandă. Pentru mai mult sarcini dificile numărul de comenzi crește, iar lucrul pe linia de comandă devine neproductiv. Folosind istoricul comenzilor,

salvarea variabilelor mediului de lucru sau păstrarea unui jurnal cu jurnal este neglijabilă

crește productivitatea muncii. O soluție eficientă este să vă proiectați proprii algoritmi sub formă de programe (fișiere M) care pot fi rulate din mediul de lucru sau din editor. Editorul de fișiere M încorporat în MATLAB vă permite nu numai să introduceți textul programului și să îl rulați integral sau parțial, ci și să depanați algoritmul. O clasificare detaliată a fișierelor M este dată mai jos.

1.1. Lucrați în editorul de fișiere M.

Un editor special cu mai multe ferestre este folosit pentru a pregăti, edita și depana fișierele m. Este proiectat ca o aplicație tipică Windows. Editorul poate fi invocat prin comanda edit din linia de comandă sau prin comanda meniului principal Fișier | Nou | Fișier M. După aceea, în fereastra editorului, puteți crea propriul fișier, utilizați instrumentele pentru depanare și lansare. Înainte de a rula fișierul, acesta trebuie scris pe disc folosind comanda Fișier | Salvați ca în meniul editorului.

Figura 1 prezintă fereastra editor/depanator. Textul pregătit al fișierului (acesta este cel mai simplu și primul nostru program în limbajul de programare MATLAB) poate fi scris pe disc. Pentru a face acest lucru, utilizați comanda Salvare ca, care utilizează fereastra standard Windows pentru a scrie un fișier prenume... Trebuie remarcat faptul că numele fișierului M trebuie să fie unic, iar cerința pentru numele fișierului este aceeași ca și pentru numele variabile de mediu MATLAB. După ce fișierul a fost scris pe disc, puteți rula comanda Run din bara de instrumente sau din meniul Debug sau pur și simplu faceți clic pe ., pentru a executa fișierul m.

La prima vedere, ar putea părea că editorul/depanatorul este doar o verigă suplimentară în lanțul utilizator-MATLAB. Într-adevăr, textul fișierului ar putea fi introdus în fereastra sistemului și să obțină același rezultat. În realitate, însă, editorul/depanatorul joacă un rol important. Vă permite să creați un fișier m (program) fără acea „coală” numeroasă care însoțește munca în modul de comandă... Textul unui astfel de fișier este supus unei verificări aprofundate de sintaxă, în timpul căreia multe erori ale utilizatorului sunt identificate și eliminate. Astfel, editorul asigură controlul sintactic al fișierului.

Editorul are alte instrumente importante de depanare - vă permite să setați etichete speciale în textul fișierului, numite puncte de întrerupere. Când sunt atinse, calculele sunt întrerupte, iar utilizatorul poate evalua rezultatele intermediare ale calculelor (de exemplu, valorile variabilelor), poate verifica corectitudinea buclelor etc. În cele din urmă, editorul vă permite să scrieți un fișier în format text și imortalizați-vă munca în sistemul de fișiere MATLAB.

Pentru confortul lucrului cu editorul / depanatorul, liniile de program din acesta sunt numerotate în ordine secvențială. Editorul are mai multe ferestre. Fereastra fiecărui program este concepută ca o filă. Editorul de depanare facilitează vizualizarea valorilor variabilelor. Pentru a face acest lucru, trebuie doar să mutați cursorul mouse-ului la numele variabilei și să-l țineți apăsat - va apărea un tooltip cu numele variabilei și valoarea acesteia.

O caracteristică foarte convenabilă a editorului de fișiere M este executarea unor comenzi. Pentru a face acest lucru, utilizați comanda Evaluate Selection din meniul contextual sau din meniul principal Text sau doar tasta funcțională care vă permit să executați textul programului selectat.

Orez. 1. Fereastra editorului de fișiere M.

1.2. Tipuri de fișiere M. Fișier program.

Există două tipuri de fișiere M în MATLAB: fișiere M script, care conțin o secvență de comenzi și fișiere M Function, care descriu funcții definite de utilizator.

Programele de fișiere sunt cel mai simplu tip de fișiere M. Nu au argumente de intrare sau de ieșire și operează pe variabile care există în mediul de producție sau pot crea variabile noi. Ați scris fișierul programului mydemo când ați citit secțiunea anterioară. Toate variabilele declarate în fișierul program devin disponibile în mediul de producție după execuția acestuia. Rulați fișierul program mydemo prezentat în lista din Fig. 1. Accesați fereastra Spațiu de lucru și asigurați-vă că toate variabilele introduse în fișierul M apar în spațiul de lucru. Toate variabilele create în timpul execuției fișierului M rămân în mediul de lucru după finalizarea acestuia și pot fi utilizate în alte programe de fișiere și în comenzile executate din linia de comandă.

Programul de fișiere poate fi lansat în două moduri.

1. Din editorul de fișiere M așa cum este descris mai sus.

2. Din linia de comandă sau alta program-fișier, în acest caz numele fișierului M (fără extensie) este folosit ca comandă. Utilizarea celei de-a doua metode este mult mai convenabilă, mai ales dacă fișierul program creat va fi folosit în mod repetat ulterior. De fapt, fișierul M generat devine o comandă pe care MATLAB o înțelege.

Închideți toate ferestrele grafice și tastați mydemo în linia de comandă, apare o fereastră grafică corespunzătoare comenzilor din fișierul program mydemo.m. După introducerea comenzii mydemo MATLAB efectuează următoarele acțiuni.

1. Verifică dacă comanda introdusă este un nume oricare dintre variabilele definite

v mediu de lucru. Dacă este introdusă o variabilă, atunci valoarea acesteia este afișată.

2. Dacă este introdusă o non-variabilă, atunci MATLAB caută comanda introdusă printre funcțiile încorporate. Dacă comanda se dovedește a fi o funcție încorporată, atunci este executată.

3. Dacă este introdusă o funcție nevariabilă și neîncorporată, atunci MATLAB începe căutarea M-fișier cu numele comenzii și extensia m. Căutarea începe cu directorul curent(Directorul curent); dacă un fișier M nu este găsit în el, MATLAB caută directoarele specificate în calea de căutare (Cale). (Pentru a seta directorul curent, puteți utiliza fereastra de selecție cu același nume din bara de instrumente sau comanda cd. Căile de căutare sunt setate folosind

folosind comanda Set Path din meniul File sau folosind comanda addpath).

Dacă niciuna dintre acțiunile de mai sus nu a condus la succes, atunci este afișat un mesaj în fereastra de comandă, de exemplu, dacă faceți o greșeală.

Secvența de căutare MATLAB sugerează că este foarte important să denumiți corect propriul fișier de program atunci când îl salvați într-un fișier M. În primul rând, numele său nu trebuie să fie același cu numele funcțiilor existente în MATLAB. Puteți afla dacă un nume este luat sau nu folosind funcția exist.

În al doilea rând, numele fișierului nu trebuie să înceapă cu o cifră, semne „+” sau „-” sau într-un cuvânt cu acele caractere care pot fi interpretate de MATLAB ca o eroare la introducerea unei expresii. De exemplu, dacă numiți fișierul M cu fișierul de program 5prog.m, atunci când îl porniți din meniul editorului sau prin primi un mesaj de eroare. Acest lucru nu este surprinzător, deoarece MATLAB se așteaptă să aveți 5 + prog (sau 5, prog) pentru a evalua expresia aritmetică cu prog (sau adăugați 5 ca prim element la vectorul rând prog). Prin urmare, numele corect ar fi prog5.m (sau cel puțin p5rog.m), dar începând doar cu o literă.

Vă rugăm să rețineți că, dacă executați comenzi evidențiate (toate comenzile pot fi evidențiate) ale unui fișier M cu un nume incorect folosind , atunci nu va fi nicio eroare. De fapt, are loc execuția secvențială a comenzilor, care nu diferă de invocarea lor din linia de comandă, și nu de funcționarea unui program de fișiere.

Încă o greșeală este foarte frecventă la specificarea numelui unui fișier-program, care la prima vedere are consecințe inexplicabile: programul este lansat o singură dată. Repornire nu execută programul. Să ne uităm la această situație folosind exemplul programului de fișiere din Listarea 5.1, pe care l-ați salvat în fișierul mydemo.m. Redenumiți fișierul în x.m, apoi eliminați toate variabilele spațiului de lucru din fereastra Browser de variabile ale spațiului de lucru sau din linia de comandă:

>> șterge totul

Executați fișierul program, de exemplu, din editor apăsând ... Apare o fereastră grafică cu două diagrame și nu este de bun augur pentru un truc. Acum închideți fereastra grafică și porniți din nou programul. Fereastra grafică nu mai este creată, dar valorile matricei x sunt afișate în fereastra de comandă în conformitate cu primul paragraf al algoritmului de căutare MATLAB de mai sus. Aceste circumstanțe trebuie luate în considerare la alegerea numelui programului-fișier. O întrebare la fel de importantă este legată de al treilea punct al algoritmului de căutare MATLAB - directorul curent și căile de căutare. De obicei, propriile fișiere M sunt stocate în directoarele utilizatorului. Pentru ca MATLAB să le găsească, trebuie să setați căile care indică locația fișierelor M.

1.3. Funcții de fișiere.

Programele de fișiere de mai sus sunt o secvență de comenzi MATLAB; nu au argumente de intrare și de ieșire. Pentru a rezolva probleme de calcul și a scrie propriile aplicații în MATLAB, deseori trebuie să programați funcții de fișier care efectuează acțiunile necesare cu argumente de intrare și returnează rezultatul în argumente de ieșire. Numărul de argumente de intrare și de ieșire depinde de problema care se rezolvă - poate exista doar un argument de intrare și unul de ieșire, mai multe dintre ambele sau doar argumente de intrare.

Este posibil să nu existe argumente de intrare și de ieșire. Această secțiune conține câteva exemple simple pentru a vă ajuta să înțelegeți cum să lucrați cu funcțiile fișierelor. Funcțiile fișierelor, precum programele de fișiere, sunt create în editorul de fișiere M.

Funcțiile fișierului cu un singur argument de intrare.

Să presupunem că deseori trebuie să utilizați o valoare a funcției în calcule:

- xx 2

Este logic să scrieți o funcție de fișier o dată și apoi să o apelați oriunde este necesar pentru a calcula această funcție pentru un argument dat. Pentru a face acest lucru, trebuie să deschideți în editor M-files fișier nouși tastați textul:

funcția f = fun (x)

Cuvântul funcție de pe prima linie specifică faptul că acest fișier conține un fișier de funcție. Prima linie este antetul funcției, care contine numele functiei si listele de argumente de intrare si iesire. Argumentele de intrare sunt scrise între paranteze după numele funcției. În exemplul nostru, există un singur argument de intrare, x. Argumentul de ieșire f apare în stânga semnului egal în antetul funcției. Atunci când alegeți numele funcției de fișier, trebuie avut grijă pentru a evita conflictele cu numele ocupate în MATLAB. Am discutat mai sus o întrebare similară: cum să salvați un fișier de program într-un fișier cu un nume unic. Puteți utiliza aceeași abordare, bazată pe apelul la funcția exist, pentru a specifica numele funcției fișier.

După antet este plasat corpul funcției-fișier - unul sau mai mulți operatori (pot fi destul de mulți), care implementează algoritmul de obținere a valorii variabilelor de ieșire din cele de intrare. În exemplul nostru, algoritmul este simplu - pentru un x dat, se calculează o expresie aritmetică și rezultatul este scris în f.

Acum trebuie să salvați fișierul în directorul de lucru sau într-o altă locație cunoscută de MATLAB. Când selectați elementele Salvare sau Salvare ca... din meniul Fișier, numele implicit al fișierului este același cu numele funcției myfun. Trebuie să salvați fișierul funcției cu acest nume sugerat. Acum, funcția creată poate fi utilizată în același mod ca și sin, cos și altele încorporate, de exemplu, din linia de comandă:

>> y = myfun (1.3) y =

Când am creat funcția de fișier myfun, am suprimat ieșirea lui f în fereastra de comandă prin încheierea instrucțiunii de atribuire cu punct și virgulă. Dacă acest lucru nu este făcut, atunci va fi afișat atunci când apelați y = myfun (1.3). De regulă, este mai bine să evitați afișarea rezultatelor de calcul intermediare în fereastra de comandă din interiorul unei funcții de fișier.

Funcția fișier prezentată în exemplul anterior are un dezavantaj major. Încercarea de a calcula valorile funcției dintr-o matrice are ca rezultat o eroare, mai degrabă decât o matrice de valori, așa cum se întâmplă cu funcțiile încorporate.

>> x =;

>> y = my fun (x)

??? Eroare la utilizarea ==> ^ Matricea trebuie să fie pătrată.

Eroare în ==> C: \ MATLAB6p5 \ work \ myfun.m

Pe linia 2 ==> f = exp (-x) * sqrt ((x ^ 2 + 1) / (x ^ 4 + 0,1));

Evident, pentru a evita această eroare, trebuie să utilizați operații pe elemente. În special, pentru funcționarea corectă a funcției noastre, textul funcției trebuie rescris în următoarea formă:

funcția f = fun (x)

f = exp (-x) * sqrt ((x. ^ 2 + 1) ./ (x. ^ 4 + 0,1));

Acum argumentul funcției myfun poate fi fie un număr, fie un vector sau o matrice de valori, de exemplu:

>> x =;

>> y = my fun (x)

Variabila y, în care este scris rezultatul apelării funcției myfun, devine automat un vector de dimensiunea necesară.

Să ne uităm la un exemplu de utilizare a funcțiilor. Trasăm funcția myfun pe un segment folosind un program de fișiere sau din linia de comandă:

>> x = 0: 0,5: 4;

>> y = myfun (x);

>> grafic (x, y)

Rezolvarea problemelor de calcul prin intermediul MATLAB va necesita să fiți capabil să programați funcțiile fișierelor corespunzătoare sarcinii în cauză (de exemplu, partea dreaptă a sistemului ecuatii diferentiale sau integrantul).

Vom privi acum doar un exemplu simplu despre modul în care utilizarea funcțiilor de fișiere facilitează vizualizarea funcțiilor matematice. Tocmai am trasat un complot folosind plot. Rețineți că pentru a calcula vectorul y nu a fost necesar să apelați myfun - puteți scrie imediat o expresie pentru acesta și apoi să specificați o pereche de x și y inplot. Funcția fișier myfun pe care o avem la dispoziție ne permite să apelăm funcția specială fplot, care necesită specificarea numelui funcției noastre de fișier (în apostrofe) sau a unui pointer către aceasta (cu operatorul @ în fața numelui funcției) și a limitelor segmentul pentru trasarea graficului (într-un vector de două elemente)

>> fplot ("myfun",)

>> fplot (@myfun,)

Este necesar să adăugați algoritmul funcției fplot care selectează automat pasul argumentului, scăzându-l în zonele de schimbare rapidă a funcției studiate, ceea ce oferă utilizatorului o bună afișare a datelor.

Funcții de fișier cu mai multe argumente de intrare.

Scrierea funcțiilor de fișier cu mai multe argumente de intrare este practic aceeași ca și în cazul unui singur argument. Toate argumentele de intrare sunt plasate într-o listă separată prin virgulă. Următorul exemplu conține o funcție de fișier care calculează lungimea vectorului de rază a unui punct într-o formă tridimensională

spații x 2 + y 2 + z 2.

funcția r = raza3 (x, y, z) r = sqrt (x. ^ 2 + y. ^ 2 + z. ^ 2);

>> R = raza3 (1, 1, 1)

Pe lângă funcțiile cu argumente multiple, MATLAB vă permite să creați funcții care returnează mai multe valori, adică au mai multe argumente de ieșire.

Funcții de fișier cu mai multe argumente de ieșire.

Funcțiile de fișier cu argumente de ieșire multiple sunt utile pentru evaluarea funcțiilor care returnează mai multe valori (în matematică, ele sunt numite funcții vectoriale). Argumentele de ieșire sunt adăugate la lista de argumente de ieșire, separate prin virgule, iar lista în sine este cuprinsă între paranteze drepte. Următorul exemplu oferă o funcție de fișier hms pentru conversia unui timp specificat în secunde în ore, minute și secunde:

function = hms (sec) ora = etaj (sec / 3600);

Când apelați funcții de fișier cu mai multe argumente de ieșire, rezultatul ar trebui să fie scris într-un vector de lungimea corespunzătoare:

>> = hms (10000) H =

Dacă nu specificați în mod explicit parametrii de ieșire atunci când utilizați această funcție, atunci rezultatul apelării funcției va fi doar primul argument de ieșire:

>> hms (10000) ans =

Dacă lista de argumente de ieșire este goală, adică antetul arată astfel: function myfun (a, b) sau function = myfun (a, b),

atunci funcția fișier nu va returna nicio valoare. Aceste funcții sunt uneori utile și.

O altă caracteristică utilă a funcțiilor MATLAB este capacitatea de a obține informații despre ele folosind comanda help, de exemplu, help fplot. Funcțiile de fișier personalizate pot fi, de asemenea, furnizate cu această proprietate folosind linii de comentarii. Toate liniile de comentariu de după antet și înainte de corpul funcției sau o linie goală sunt afișate în fereastra de comandă cu comanda de ajutor. De exemplu, pentru funcția noastră, puteți crea un indiciu:

funcția = hms (sec) % hms - convertiți secundele în ore, minute și secunde

% Funcția hms este pentru traducerea secundelor

% în ore minute și secunde.

% = hms (sec)

ora = etaj (sec / 3600);

minut = etaj ((sec - ora * 3600) / 60); secunda = sec - ora * 3600 - minut * 60;

1.4. Subfuncții.

Să luăm în considerare un alt tip de funcții - subfuncții. Utilizarea subfuncțiilor se bazează pe separarea unei părți a algoritmului într-o funcție independentă, al cărei text este conținut în același fișier ca și funcția principală. Să ne uităm la un exemplu.

funcția simplă;

% Funcția de bază a = 2 * pi;

fl = f (1,1, 2,1) f2 = f (3,1, 4,2) -a f3 = f (-2,8, 0,7) + a

funcția z = f (x, y)% Subfuncție

z = x ^ 3 - 2 * y ^ 3 - x * y + 9;

Prima funcție simplă este functie principalaîn simple.m, instrucțiunile sale sunt executate dacă utilizatorul invocă simplu, de exemplu din linia de comandă. Fiecare apel la subfuncția f din funcția principală duce la o tranziție la instrucțiunile plasate în subfuncție și apoi la o revenire la funcția principală.

Un fișier de funcție poate conține una sau mai multe sub-funcții cu propriii parametri de intrare și de ieșire, dar poate exista o singură funcție principală. Titlul unei noi subfuncții este, de asemenea, un semn al sfârșitului celei anterioare. Funcția principală comunică cu sub-funcțiile numai folosind parametrii de intrare și de ieșire. Variabilele definite în subfuncții și în funcția principală sunt locale, sunt disponibile în cadrul funcției lor.

Unul dintre opțiuni posibile Utilizarea variabilelor, care sunt comune tuturor funcțiilor din fișierul M, constă în declararea acestor variabile la începutul funcției principale și al subfuncției ca fiind globale, folosind global cu o listă de nume de variabile separate printr-un spațiu.

2. Construcții de control ale limbajului de programare.

Funcțiile și programele de fișiere pe care le-ați creat în cele două capitole anterioare sunt cele mai simple exemple de programe. Toate comenzile MATLAB conținute în ele sunt executate consecvent. Pentru a rezolva probleme mult mai grave, sunt necesare programe în care acțiunile se repetă ciclic, iar în funcție de anumite condiții se execută diverse părți ale programului. Acest capitol descrie constructele de control ale limbajului de programare MATLAB, care pot fi utilizate atunci când scrieți atât programe-fișier, cât și funcții-fișier.

2.1. Operatori de buclă.

Acțiuni similare și repetitive sunt efectuate folosind instrucțiunile buclei for și while. Bucla for este concepută pentru a efectua un anumit număr de acțiuni repetitive, un timp - pentru acțiuni, al căror număr nu este cunoscut în prealabil, dar condiția pentru continuarea buclei este cunoscută.

Pentru buclă.

Utilizarea for se face după cum urmează:

for count = start: step: final

comenzi MATLAB

Aici count este variabila buclă, start este valoarea sa inițială, final este valoarea finală, astep este pasul prin care numărul crește cu fiecare intrare următoare în buclă. Bucla se termină imediat ce numărul devine mai mare decât finalul. Variabila buclă poate lua nu numai valori întregi, ci și valori reale ale oricărui semn. Să dăm un exemplu de utilizare a buclei for. Să fie necesar să se afișeze graficele unei familii de curbe pentru x, care

dat de funcția y (x, a) = e - ax sinx, în funcție de parametrul a, pentru valorile parametrului a de la -0,1 la

0,1 cu un pas de 0,02. Puteți, desigur, să calculați secvențial y (x, a) și să reprezentați grafice pentru diferite valori ale lui a, dar este mult mai convenabil să utilizați bucla for. Textul fișierului de program:

figure% creează o fereastră grafică

x = 0: pi / 30: 2 * pi; % calculează un vector de valori ale argumentelor

% iterarea peste valorile parametrilor într-o buclă pentru a = -0,1: 0,02: 0,1

% calcularea vectorului valorilor funcției pentru valoarea curentă ...

parametru

y = exp (-a * x). * sin (x); % adăugați graficul funcției țineți

complot (x, y) sfârşitul

Ca rezultat al executării acestui fișier-program, va apărea o fereastră grafică, prezentată în Fig. 2, care conține familia necesară de curbe.

Orez. 2. O familie de curbe.

Buclele For pot fi imbricate unele în altele, în timp ce variabilele buclelor imbricate trebuie să fie diferite. Buclele imbricate sunt utile pentru umplerea matricelor. Un exemplu de creare a unei matrice Hilbert:

a = zerouri (n); pentru i = 1: n

pentru j = 1: n

a (i, j) = 1 / (i + j-1);

În încheierea acestei secțiuni, observăm încă o caracteristică a buclei for, care, împreună cu capacitatea de a seta un contor de buclă reală cu un pas constant, face ca bucla for să fie destul de universală. O matrice de valori poate fi folosită ca valori pentru o variabilă buclă:

pentru număr = A

comenzi MATLAB

Dacă A este un vector rând, atunci count ia secvenţial valoarea elementelor sale de fiecare dată când este introdusă bucla. În cazul unui tablou bidimensional A, la pasul i al buclei, count conține o coloană A (:, i). Desigur, dacă A este un vector coloană, atunci bucla se va executa o singură dată cu un număr de A.

Bucla for este utilă pentru un număr finit de lucruri. Există algoritmi cu un număr necunoscut de repetări care pot fi implementați într-o buclă while mai flexibilă.

buclă în timp ce.

Bucla while servește la organizarea repetărilor de același tip de acțiuni în cazul în care numărul de repetări este necunoscut în prealabil și este determinat de îndeplinirea unei anumite condiții. Luați în considerare un exemplu de extindere în serie a sin (x):

x 2k + 1

S (x) = ∑ (- 1)

(2k + 1)!

k = 0

Desigur, nu va fi posibil să adăugați la infinit, dar puteți acumula suma cu o anumită precizie, de exemplu, 10-10. Evident, numărul de membri ai seriei în acest caz este necunoscut, astfel încât utilizarea operatorului for este imposibilă. Calea de ieșire este să folosiți o buclă while, care rulează atâta timp cât condiția de buclă este executată:

condiția de repetare în buclă

comenzi MATLAB

V În acest exemplu, condiția pentru repetarea ciclului este ca modulul termenului curent

x 2 k + 1 (2k + 1)! mai mult de 10-10. Textul funcției fișier mysin care calculează suma unei serii pe baza

relație de recurență:

k - 1

2k (2k + 1)

funcția s = mysin (x)

% Calcularea sinusului prin expansiune în serie

% Utilizare: y = mysin (x),-pi< х < pi

% calculul primului termen al sumei pentru k = O k = 0;

% calculul variabilei auxiliare

în timp ce abs (u)> 1,0e-10 k = k + 1;

u = -u * x2 / (2 * k) / (2 * k + 1); s = s + u;

Această fereastră este cea principală în MatLAB. Afișează simboluri de comandă care sunt tastate de utilizator pe ecranul de afișare, afișează rezultatele execuției acestor comenzi, textul programului executabil și informații despre erorile de execuție a programului recunoscute de sistem.

Un semn că MatLAB este gata să perceapă și să execute următoarea comandă este apariția în ultima linie casetă de text caseta cu semnul prompt „>>” urmată de o bară verticală intermitentă.

În partea de sus a ferestrei (sub titlu) există o bară de meniu, care conține meniurile Fișier, Editare, Vizualizare, Windows, Ajutor. Pentru a deschide orice meniu, plasați cursorul mouse-ului pe acesta și apăsați butonul din stânga al acestuia. Funcțiile comenzilor din meniu vor fi descrise mai detaliat mai târziu, în secțiunea „Interfața și comenzile MatLab scop general... Scrierea M-books”.

Aici notăm doar că a iesi din mediu MatLAB, este suficient să deschideți meniul Fișier și să selectați comanda Exit MATLAB din acesta, sau pur și simplu să închideți fereastra de comandă apăsând butonul stâng al mouse-ului când cursorul mouse-ului este poziționat pe imaginea butonului din dreapta sus al acestei ferestre (cu desemnarea unei cruci oblice).

1.2. Operații cu numere

1.2.1. Introducerea numerelor reale

Introducerea numerelor de la tastatură se realizează conform regulilor generale adoptate pentru limbajele de programare de nivel înalt:

pentru a separa partea fracțională a mantisei unui număr, se folosește un punct zecimal (în loc de virgulă în notație normală);

exponentul zecimal al numărului este scris ca număr întreg după scrierea anterioară a caracterului „e”;

între notația mantisei numărului și caracterul „e”(care separă mantisa de exponent) nu ar trebui să existe caractere, inclusiv simbolul skip.

Dacă, de exemplu, introduceți linia în fereastra de comandă MatLAB

apoi după apăsarea tastei<Еnter>va apărea o intrare în această fereastră:


Trebuie remarcat faptul că rezultatul este scos într-o formă (format), care este determinată de un format predeterminat pentru reprezentarea numerelor. Acest format poate fi setat folosind comanda Preferințe meniul Fişier(fig. 1.3). După apelarea acestuia, va apărea pe ecran o fereastră cu același nume (Fig. 1.4). Una dintre secțiunile acestei ferestre este numită Numeric Format... Este conceput pentru a seta și modifica formatul pentru reprezentarea numerelor care sunt afișate în fereastra de comandă în timpul calculului. Sunt furnizate următoarele formate:

Scurtă (implicit) - notație scurtă (utilizată implicit);

Long - record lung;

Hex - notație ca număr hexazecimal;

Banca - inregistrare pana la sutimi;

Plus - este înregistrat doar semnul numărului;

Short Е - înregistrare scurtă în format virgulă mobilă;

Long Е - înregistrare lungă în format virgulă mobilă;

G scurt - a doua formă o nota scurtaîn format virgulă mobilă;

G lung - a doua formă de înregistrare lungă în format virgulă mobilă;

Rațional este o notație rațională de fracție.

Alegerea cu mouse-ul vedere dorită reprezentarea numerelor, este posibil să furnizați rezultate suplimentare de numere în fereastra de comandă în acest formular.

După cum se vede din fig. 1.2, numărul afișat pe ecran nu se potrivește cu cel introdus. Acest lucru se datorează faptului că formatul implicit al numărului ( Mic de statura) nu vă permite să retrageți mai mult de 6 cifre semnificative... De fapt, numărul introdus este stocat în MatLAB cu toate cifrele introduse. De exemplu, dacă selectați butonul radio Long cu mouse-ul E(adică, setați formatul specificat pentru reprezentarea numerelor), apoi, repetând aceleași acțiuni, obținem:

unde deja toate numerele sunt afișate corect (Fig. 1.5).

Tine minte:

- numărul introdus și rezultatele tuturor calculelor din sistemul Ma tLAB stocate în memoria PC-ului cu o eroare relativă de aproximativ 2.10-16(adică cu valori exacte în 15 zecimale):

- intervalul de reprezentare a modulului numerelor reale se află în intervalul dintre 10-308 și 10 + 308.

1.2.2. Cele mai simple operații aritmetice

Următoarele semne ale operațiilor aritmetice sunt utilizate în expresiile aritmetice ale limbajului MatLAB:

+ - adaos;

- - scădere;

* - înmulțire;

/ - împărțire de la stânga la dreapta;

\ - împărțire de la dreapta la stânga;

^ - exponentiație.

Utilizarea MatLAB în modul calculator se poate face prin simpla scriere Linie de comanda secvențe de operații aritmetice cu numere, adică expresia aritmetică obișnuită, de exemplu: 4,5 ^ 2 * 7,23 - 3,14 * 10,4.

Dacă, după ce ați introdus această secvență de la tastatură, apăsați tasta , fereastra de comandă va afișa rezultatul execuției în forma prezentată în Fig. 1.6, adică rezultatul acțiunii ultimei instrucțiuni executate este afișat pe ecran sub numele variabilei de sistem ans.

În general, ieșirea informațiilor intermediare către fereastra de comandă este supusă următoarelor reguli:

- dacă înregistrarea operatorului nu se termină cu caracterul";", rezultatul acțiunii acestui operator este afișat imediat în fereastra de comandă;

- dacă operatorul se termină cu";", rezultatul acțiunii sale nu este afișat în fereastra de comandă;

- dacă operatorul nu conţine un semn de atribuire(= ), adică este pur și simplu o înregistrare a unei anumite secvențe de acțiuni asupra numerelor și variabilelor, valoarea rezultatului este atribuită unei variabile speciale de sistem după nume ans;

- valoarea variabilă rezultată ans poate fi utilizat în următoarele instrucțiuni de calcul folosind acest nume ans; trebuie amintit că valoarea variabilei de sistem ans se modifică după acţiunea următorului operator nesemnat;

- în cazul general, forma de prezentare a rezultatului în fereastra de comandă este:

<Имя переменной> = <результат>.

Exemplu. Să presupunem că trebuie să calculați expresia (25 + 17) * 7. Se poate face astfel. Mai întâi, introducem secvența 25 + 17 și apăsăm ... Primim rezultatul pe ecran în formular ans = 42.Acum scriem succesiunea răspuns * 7și apăsați ... Primim ans = 294 (fig. 1.7). Pentru a preveni ieșirea rezultatului intermediar al acțiunii 25 + 17, este suficient să adăugați simbolul „;” după scrierea acestei secvențe. Apoi vom avea rezultatele în forma prezentată în Fig. 1.8.

Folosind MatLAB ca calculator, puteți folosi numele variabilelor pentru a scrie rezultate intermediare în memoria computerului. Pentru aceasta, se utilizează operația de atribuire, care este introdusă prin semnul egal „=" în conformitate cu schema:<Имя переменной> = <выражение>[;]

Un nume de variabilă poate avea până la 30 de caractere și nu trebuie să se potrivească cu numele funcțiilor, procedurilor de sistem și variabilelor de sistem. În acest caz, sistemul distinge între litere mari și mici în variabile. Deci, numele „amenu”, „Amenu”, „aMenu” în MatLAB denotă diferite variabile.

Expresia din dreapta semnului de atribuire poate fi doar un număr, o expresie aritmetică, un șir de caractere (caz în care aceste caractere trebuie să fie incluse în apostrofe) sau o expresie de caractere. Dacă expresia nu se termină cu „;”, după apăsarea tastei<Еnter>în fereastra de comandă, rezultatul execuției va apărea sub forma:

<Nume variabilă> = <rezultat>.

Orez. 1.7. Orez. 1.8.

De exemplu, dacă introduceți linia " NS= 25 + 17 ", va apărea o înregistrare pe ecran (Fig. 1.9).

Sistemul MatLAB are mai multe nume de variabile care sunt folosite de sistemul însuși și fac parte din cele rezervate:

i, j - unitate imaginară (rădăcină pătrată a lui –1); pi - numărul p (stocat ca 3,141592653589793); inf - desemnarea infinitului mașinii; Na - desemnarea unui rezultat nedefinit (de exemplu, cum ar fi 0/0 sau inf / inf); eps - eroare a operațiilor cu numere în virgulă mobilă; ans - rezultatul ultimei operațiuni de atribuire nesemnată; realmax și realmin sunt valorile maxime și minime posibile ale numărului care pot fi utilizate.

Aceste variabile pot fi folosite în expresii matematice.

1.2.3. Introducerea numerelor complexe

Limbajul de sistem MatLAB, spre deosebire de multe limbaje de programare de nivel înalt, conține o aritmetică încorporată foarte ușor de utilizat pentru numere complexe. Majoritatea funcțiilor matematice elementare acceptă numere complexe ca argumente, iar rezultatele sunt generate ca numere complexe. Această caracteristică a limbajului îl face foarte convenabil și util pentru ingineri și oameni de știință.

Pentru a desemna o unitate imaginară în limbajul MatLAB, sunt rezervate două nume i și j. Introducerea valorii unui număr complex de la tastatură se realizează prin scrierea în fereastra de comandă a unei linii de forma:

<nume de variabilă complexă> = <Valoarea DC> + i[j] * <Valoarea MCH>,

unde ДЧ este partea reală a numărului complex, МЧ este partea imaginară. De exemplu:

Din exemplul dat, puteți vedea în ce formă sistemul afișează numere complexe pe ecran (și tipăriți).

1.2.4. Funcții matematice elementare

Forma generală de utilizare a unei funcții în MatLAB este următoarea:

<numele rezultatului> = <numele funcției>(<lista de argumente sau valorile acestora>).

Limbajul MatLAB oferă următoarele funcții aritmetice elementare.

Funcții trigonometrice și hiperbolice

păcat (z) este sinusul numărului z;

sinh(z) - sinus hiperbolic;

ca în (z) - arcsinus (în radiani, în intervalul de la până la );

Asinh(z) - sinus hiperbolic invers;

cus(z) - cosinus;

сosh (z) - cosinus hiperbolic;

acos (z) - cosinus invers (în intervalul de la 0 la p);

ASOSH(z) - cosinus hiperbolic invers;

bronzat (z) este tangenta;

tanh (z) - tangentă hiperbolică;

un bronz (z) - arctangent (în intervalul de la până la );

atan2 (X, Y) - arctangent cu patru cadrane (unghi în intervalul de la - p la + pîntre raza dreaptă orizontală şi raza care trece prin punctul cu coordonate NSși Y);

atanh (z) - tangentă hiperbolică inversă;

sec (z) - secant;

sech (z) - secant hiperbolic;

asec (z) - arcsecant;

asech (z) - secanta hiperbolică inversă;

csc (z) - cosecant;

csch (z) - cosecant hiperbolic;

acsc (z) - arcsecant;

acsch (z) - cosecant hiperbolic invers;

cot (z) - cotangent;

coth (z) - cotangent hiperbolic;

acot (z) - arc cotangent;

acoth (z) - cotangent hiperbolic invers

Funcții exponențiale

exp (z) - exponent al numărului z;

Buturuga(z) - logaritm natural;

Buturuga10 (z) - logaritm zecimal;

sqrt(z) este rădăcina pătrată a numărului z;

abs (z) este modulul numărului z.

Funcții întregi

fix (z) - rotunjirea la cel mai apropiat număr întreg spre zero;

etaj (z) - rotunjește la cel mai apropiat număr întreg spre infinit negativ;

ceil (z) - rotunjește la cel mai apropiat număr întreg spre infinitul pozitiv;

round (z) - rotunjirea normală a lui z la cel mai apropiat număr întreg;

mod (X, Y) - împărțirea întregului lui X cu Y;

rem(X, Y) - calcularea restului împărțirii X la Y;

semn(z) - calculul funcției signum a numărului z

(0 la z = 0, –1 la z< 0, 1 при z > 0)

1.2.5. Funcții matematice speciale

Pe lângă cele elementare, MatLAB oferă o serie de funcții matematice speciale. Mai jos este o listă și un rezumat al acestor funcții. Utilizatorul poate găsi regulile de accesare și utilizare a acestora în descrierile acestor funcții, care sunt afișate pe ecran tastând comanda de ajutor și specificând numele funcției în aceeași linie.

Funcții de transformare a coordonatelor

cart2 sph- transformarea coordonatelor carteziene în sferice;

cart2 pol- transformarea coordonatelor carteziene în polare;

pol2 cart- conversia coordonatelor polare în carteziene;

sph2 cart- transformarea coordonatelor sferice în cele carteziene.

Funcțiile Bessel

besselj- Funcția Bessel de primul fel;

besly- Funcția Bessel de al doilea fel;

besseli- funcţie Bessel modificată de primul fel;

besselk Este o funcție Bessel modificată de al doilea fel.

Caracteristici beta

beta- caracteristica beta;

betainc- caracteristică beta incompletă;

betaln Este logaritmul funcției beta.

Funcții gamma

gamma- functie gamma;

gammainc- functie gamma incompleta;

gammaln Este logaritmul funcției gamma.

Funcții eliptice și integrale

ellipj- functii eliptice Jacobi;

ellipke- integrală eliptică completă;

expint Este funcția integrală exponențială.

Funcții de eroare

erf- functie de eroare;

erfc- functie de eroare suplimentara;

erfcx- functie de eroare suplimentara scalata;

erflnv- functie de eroare inversa.

Alte funcții

gcd- cel mai mare factor comun;

lern- cel mai mic multiplu comun;

legendare- funcţia Legendre generalizată;

log2- baza logaritmului 2;

pow2- ridicarea 2 la puterea specificată;

şobolan- reprezentarea unui număr sub forma unei fracții raționale;

şobolani- reprezentarea numerelor sub forma unei fracţii raţionale.

1.2.6. Actiuni elementare cu numere complexe

Cele mai simple operații cu numere complexe - adunarea, scăderea, înmulțirea, împărțirea și exponențiarea - se efectuează folosind semnele aritmetice obișnuite +, -, *, /, \ și respectiv ^.

Exemple de utilizare sunt prezentate în Fig. 1.11.

Notă. Fragmentul de mai sus folosește funcția disp (din cuvântul „afișare”), care afișează și rezultatele calculelor sau ceva text în fereastra de comandă. În acest caz, rezultatul numeric, după cum puteți vedea, este deja afișat fără a specifica numele variabilei sau ans.

1.2.7. Funcții de argument complexe

Aproape toate elementare funcții matematice dat în clauza 1.2.4, calculat pentru valori complexe ale argumentuluiși ca rezultat, se obțin valori complexe de rezultat.

Din această cauză, de exemplu, funcția sqrt calculează, spre deosebire de alte limbaje de programare, rădăcina pătrată a unui argument negativ și funcția abs dacă argumentul este complex, calculează modulul numărului complex. Exemple sunt prezentate în Fig. 1.12.

MatLAB are mai multe funcții suplimentare concepute doar pentru un argument complex:

real (z) - selectează partea reală a argumentului complex z;

і mag (z) - extrage partea imaginară a argumentului complex;

unghi (z) - calculează valoarea argumentului numărului complex z (în radiani în intervalul de la –p la + p);

conj (z) - Oferă conjugatul complex al lui z.

Exemple sunt prezentate în Fig. 1.13.

Orez. 1.12. Orez. 1.3.

În plus, MatLAB are o funcție specială cplxpair (V) care sortează un vector dat V cu elemente complexe în așa fel încât perechile complex-conjugate ale acestor elemente să fie situate în vectorul rezultat în ordinea crescătoare a părților lor reale, în timp ce elementul cu partea imaginară negativă este întotdeauna pe primul loc. Elementele reale sunt completate de perechi complexe conjugate. De exemplu, în mai departe în exemplele de comenzi care sunt tastate de la tastatură, va fi scris cu caractere aldine, iar rezultatul executării lor este în font obișnuit):

>> v = [-1, -1 + 2i, -5,4,5i, -1-2i, -5i]

Coloanele de la 1 la 4

1,0000 -1,0000 + 2,0000i -5,0000 4,0000

Coloanele de la 5 la 7

0 + 5,0000i -1,0000-2,0000i 0 - 5,0000i

>> disp (cplxpair (v))

Coloanele de la 1 la 4

1,0000 - 2,0000i -1,0000 + 2,0000i 0 - 5,0000i 0 + 5,0000i

Coloanele de la 5 la 7

5.0000 -1.0000 4.0000

Adaptabilitatea majorității funcțiilor MatLAB de a opera cu numere complexe face mult mai ușoară construirea de calcule cu numere reale, al căror rezultat este complex, de exemplu, pentru a găsi rădăcinile complexe ale ecuațiilor pătratice.

1. Gultyaev A. K. MatLAB 5.2. Simulare în mediu Windows: Ghid practic... - SPb .: print KORONA, 1999 .-- 288 p.

2. Gultyaev AK Modelare vizuală în mediul MATLAB: Curs de formare. - SPb .: PETER, 2000 .-- 430 p.

3. Dyakonov VP Manual privind utilizarea sistemului PC MatLAB. - M .: Fizmatlit, 1993 .-- 113p.

4. Dyakonov V. Simulink 4. Carte specială de referință. - SPb: Peter, 2002 .-- 518 p.

5. Dyakonov V., Kruglov V. Pachete de expansiune matematică MatLAB. Carte specială de referință. - SPb .: Peter, 2001 .-- 475s.

6. Krasnoproshina A.A., Repnikova N.B., Ilchenko A.A. Analiza modernă sisteme de control folosind MATLAB, Simulink, Control System: Tutorial. - К .: „Korniychuk”, 1999. - 144 p.

7. Lazarev Yu. F. Cobs de software în mediul MatLAB: Uch. indemnizatie. - K.: „Korniychuk”, 1999. - 160 de ani.

8. Lazarev Y. MatLAB 5.x. - K .: „Irina” (BHV), 2000. - 384 p.

9. Medvedev V.S., Potemkin V.G. Control System Toolbox. MatLAB 5 pentru studenți. - G .: „DIALOG-MEPHI”, 1999. - 287 p.

10. Potemkin VG MatLAB 5 pentru studenți: Ref. indemnizatie. - M .: „DIALOG-MEPHI”, 1998. - 314 p.

1. Lecția 23. Introducerea pachetelor extensii MATLAB

Lecția numărul 23.

Cunoașterea pachetelor de expansiune MATLAV

    Listați pachetele de extindere

    Simulinc pentru Windows

    Punga de plastic matematică simbolică

    Pachete de matematică

    Pachete de analiză și sinteză pentru sisteme de control

    Pachete de identificare a sistemului

    Instrumente Simulinc suplimentare

    Pachete de procesare a semnalului și a imaginilor

    Alte pachete programe de aplicație

În această lecție, ne vom familiariza pe scurt cu mijloacele de bază de extindere profesională a sistemului și adaptarea acestuia pentru rezolvarea anumitor clase de probleme matematice și științifice și tehnice - cu pachete de extensie pentru sistemul MATLAB. Nu există nicio îndoială că cel puțin o parte din aceste pachete ar trebui să fie dedicată unui curs de formare separat sau unei cărți de referință, poate mai mult de unul. Cărți separate au fost publicate în străinătate pentru majoritatea acestor extensii, iar volumul de documentație pentru acestea se ridică la sute de megaocteți. Din păcate, lungimea acestei cărți vă permite doar să vă plimbați puțin prin pachetele de expansiune pentru a oferi cititorului o idee despre unde se îndreaptă sistemul.

2. Listarea pachetelor de expansiune

Listați pachetele de extindere

Sistemul complet MATLAB 6.0 conține o serie de componente, al căror nume, numărul versiunii și data creării pot fi afișate cu comanda ver:

MATLAB Versiunea 6.0.0.88 (R12) pe PCWIN Număr licență MATLAB: 0

Caseta de instrumente MATLAB

Versiunea 6.0

06-0ct-2000

Versiunea 4.0

Versiunea 4.0

04-0ct-2000

codificator Stateflow

Versiunea 4.0

04-0ct-2000

Atelier în timp real

Versiunea 4.0

Bloc de referință COMA

Versiunea 1.0.2

Bloc de comunicații

Versiunea 2.0

Cutie de instrumente de comunicații

Versiunea 2.0

Caseta de instrumente a sistemului de control

Versiunea 5.0

DSP Blockset

Versiunea 4.0

Caseta de instrumente pentru achiziția datelor

Versiunea 2.0

05-0ct-2000

Caseta de instrumente a bazei de date

Versiunea 2.1

Caseta de instrumente Datafeed

Versiunea 1.2

Set de blocuri cadrane și indicatori

Versiunea 1.1

Filter Design Toolbox

Versiunea 2.0

Caseta de instrumente pentru instrumente financiare derivate

Versiunea 1.0

Seria de instrumente pentru seria temporală financiară

Versiunea 1.0

Cutie de instrumente financiare

Versiunea 2.1.2

Set de blocuri cu punct fix

Versiunea 3.0

Logica fuzzy Trusa de scule

Versiunea 2.1

Cutia de scule GARCH

Versiunea 1.0

Imagine Caseta de instrumente de procesare

Versiunea 2.2.2

Caseta de instrumente pentru controlul instrumentelor

Versiunea 1.0

Caseta de instrumente de control LMI

Versiunea 1.0.6

Compilatorul MATLAB

Versiunea 2.1

Generator de rapoarte MATLAB

Versiunea 1.1

Caseta de instrumente de cartografiere

Versiunea 1.2


Versiunea 1.0.5

Kitul pentru dezvoltatori Motorola DSP

Versiunea 1.1

Ol-Sep-2000

Caseta de instrumente Mi-Analiză și Sinteză

Versiunea 3.0.5

Caseta de instrumente pentru rețeaua neuronală

Versiunea 4.0

Bloc de design de control neliniar

Versiunea 1.1.4

Caseta de instrumente de optimizare

Versiunea 2.1

Caseta de instrumente pentru ecuații diferențiale parțiale

Versiunea 1.0.3

Bloc de sistem de alimentare

Versiunea 2.1

Atelier în timp real Ada Coder

Versiunea 4.0

Atelier de codare încorporat în timp real

Versiunea 1.0

Interfață de gestionare a cerințelor

Versiunea 1.0.1

Cutie de instrumente robustă de control

Versiunea 2.0.7

SB2SL (conversează SystemBuild în Simu

Versiunea 2.1

Caseta de instrumente pentru procesarea semnalului

Versiunea 5.0

Accelerator Simulink

Versiunea 1.0

Diferențierea modelelor pentru Simulink și...

Versiunea 1.0

Instrumentul de acoperire a modelului Simulink

Versiunea 1.0

Generator de rapoarte Simulink

Versiunea 1.1

Caseta de instrumente Spline

Versiunea 3.0

Caseta de instrumente pentru statistici

Versiunea 3.0

Cutie de instrumente pentru matematică simbolică

Versiunea 2.1.2


Versiunea 5.0

Cutia de instrumente Wavelet

Versiunea 2.0

Versiunea 1.1

Opțiunea încorporată țintă xPC

Versiunea 1.1

Vă rugăm să rețineți că aproape toate pachetele de expansiune din MATLAB 6.0 au fost actualizate și datează din 2000. Descrierea lor a fost extinsă semnificativ, care în format PDF ocupă deja mult mai mult de zece mii de pagini. Date mai jos scurta descriere pachetele de expansiune principale

3. Simulink pentru Windows

Simulink pentru Windows

Pachetul de extensie Simulink este folosit pentru a simula modele formate din blocuri grafice cu proprietăți (parametri) specificate. Componentele modelului, la rândul lor, sunt blocuri grafice și modele care sunt conținute într-un număr de biblioteci și pot fi trase în fereastra principală cu ajutorul mouse-ului și conectate între ele prin legăturile necesare. Modelele pot include diverse tipuri de surse de semnal, dispozitive virtuale de înregistrare, instrumente de animație grafică. Făcând dublu clic pe blocul model, se afișează o fereastră cu o listă a parametrilor acestuia, pe care utilizatorul o poate modifica. Lansarea simulării oferă o modelare matematică a modelului construit cu o prezentare vizuală clară a rezultatelor. Pachetul se bazează pe construcția de diagrame bloc prin transferul de blocuri din biblioteca de componente în fereastra de editare a unui model creat de utilizator. Apoi modelul este rulat. În fig. 23.1 prezintă procesul de modelare a unui sistem simplu - un cilindru hidraulic. Controlul se realizează folosind osciloscoape virtuale - în Fig. Figura 23.1 prezintă ecranele a două astfel de osciloscoape și fereastra unui subsistem simplu al modelului. Este posibil să se simuleze sisteme complexe constând din mai multe subsisteme.

Simulink creează și rezolvă ecuațiile de stare ale modelului și vă permite să conectați o varietate de instrumente de măsurare virtuale la punctele dorite. Claritatea prezentării rezultatelor simulării este izbitoare. Un număr de exemple de utilizare a pachetului Simulink au fost deja date în Lecția 4. Versiunea anterioară a pachetului este descrisă suficient de detaliat în cărți. Principala inovație este procesarea semnalului matriceal. Adăugat pachete individualeÎmbunătățiri de performanță Simulink, cum ar fi Simulink Accelerator pentru compilarea codului modelului, Simulink profiler pentru analiza codului etc.

Orez. 23.1. Exemplu de simulare a unui sistem de cilindru hidraulic utilizând extensia Simulink

1.gif

Imagine:

1b.gif

Imagine:

4. În timp real Windows țintă și atelier

Windows în timp real țintă și atelier

Un subsistem puternic de simulare în timp real care se conectează la Simulink (cu hardware suplimentar sub formă de plăci de extensie pentru computer), reprezentat de pachetele de expansiune Real Time Windows Target și Workshop, este un instrument puternic pentru gestionarea obiectelor și sistemelor reale. În plus, aceste extensii vă permit să creați coduri de model executabile. Orez. 4.21 din lecția 4 arată un exemplu de astfel de modelare pentru un sistem descris prin ecuații diferențiale neliniare ale lui van der Pol. Avantajul acestei simulări este claritatea sa matematică și fizică. În componentele modelelor Simulink, puteți specifica nu numai parametrii fixați, ci și relațiile matematice care descriu comportamentul modelelor.

5. Generator de rapoarte pentru MATLAB și Simulink

Generator de rapoarte pentru MATLAB și Simulink

Generatoarele de rapoarte, un instrument introdus din nou în MATLAB 5.3.1, oferă informații despre funcționarea sistemului MATLAB și a pachetului suplimentar Simulink. Acest instrument este foarte util atunci când se depanează algoritmi de calcul complecși sau când se simulează sisteme complexe. Generatoarele de rapoarte sunt lansate prin comanda Raport. Rapoartele pot fi prezentate sub formă de programe și editate.

Generatorii de rapoarte pot rula comenzi și fragmente de program incluse în rapoarte și vă permit să monitorizați comportamentul calculelor complexe.

6. Caseta de instrumente pentru rețele neuronale

Caseta de instrumente pentru rețele neuronale

Un pachet de programe aplicate care conțin instrumente pentru construirea rețelelor neuronale bazate pe comportamentul unui analog matematic al unui neuron. Pachetul oferă suport eficient pentru proiectarea, instruirea și modelarea multor paradigme de rețea cunoscute, de la modele de bază perceptron până la cele mai avansate rețele asociative și auto-organizate. Pachetul poate fi folosit pentru cercetarea și aplicarea rețelelor neuronale la sarcini precum procesarea semnalului, controlul neliniar și modelarea financiară. Oferă capacitatea de a genera cod C portabil folosind Real Time Workshop.

Pachetul include mai mult de 15 tipuri cunoscute rețele și reguli de învățare care permit utilizatorului să aleagă cea mai potrivită paradigmă pentru o anumită aplicație sau problemă de cercetare. Pentru fiecare tip de arhitectură și reguli de antrenament, există funcții pentru inițializare, antrenament, adaptare, creare și modelare, demonstrare și un exemplu de aplicație de rețea.

Pentru rețelele controlate, puteți alege o arhitectură directă sau recurentă folosind o varietate de reguli de predare și tehnici de proiectare, cum ar fi perceptron, backpropagation, backpropagation Levenberg, rețele radiale și rețele recurente. Puteți schimba cu ușurință orice arhitectură, reguli de predare sau funcții de tranziție, puteți adăuga altele noi - și toate acestea fără a scrie o singură linie în C sau Fortran. Un exemplu de utilizare a pachetului pentru recunoașterea modelului unei scrisori a fost dat în lecția 4. O descriere detaliată a versiunii anterioare a pachetului poate fi găsită în carte.

7. Cutie de instrumente Fuzzy Logic

Cutie de instrumente pentru logica fuzzy

Pachetul software Fuzzy Logic aparține teoriei mulțimilor fuzzy (fuzzy). Se oferă suport pentru metodele moderne de clustering fuzzy și rețelele neuronale fuzzy adaptive. Instrumentele grafice ale pachetului vă permit să monitorizați în mod interactiv particularitățile comportamentului sistemului.

Caracteristicile cheie ale pachetului:

  • definirea variabilelor, regulilor fuzzy și funcțiilor de membru;
  • vizualizarea interactivă a inferenței neclare;
  • metode moderne: inferență fuzzy adaptivă folosind rețele neuronale, clustering fuzzy;
  • interactiv modelare dinamicăîn Simulink;
  • generarea de cod C portabil folosind Real-Time Workshop.

Acest exemplu arată clar diferențele în comportamentul modelului cu și fără logica fuzzy.

8. Cutie de instrumente pentru matematică simbolică

Cutie de instrumente pentru matematică simbolică

Un pachet de programe aplicate care oferă sistemului MATLAB capacități fundamental noi - capacitatea de a rezolva probleme într-o formă simbolică (analitică), inclusiv implementarea aritmeticii exacte a lățimii de biți arbitrare. Pachetul se bazează pe utilizarea nucleului de matematică simbolică a unuia dintre cele mai puternice sisteme de algebră computerizată - Maple V R4. Oferă diferențierea și integrarea simbolică, calculul sumelor și produselor, extinderea în serii Taylor și Maclaurin, operații cu polinoame de putere (polinoame), calculul rădăcinilor polinoamelor, rezolvarea analitică a ecuațiilor neliniare, tot felul de transformări simbolice, substituții și multe altele. Are comenzi pentru acces direct la miezul sistemului Maple V.

Pachetul vă permite să pregătiți proceduri cu sintaxa limbajului de programare Maple V R4 și să le instalați în sistemul MATLAB. Din păcate, în ceea ce privește capacitățile matematicii simbolice, pachetul este mult inferior sisteme specializate algebră computerizată, cum ar fi cele mai recente versiuni ale Maple și Mathematica.

9. Pachete de calcule matematice

Pachete de matematică

MATLAB include multe pachete suplimentare care îmbunătățesc capacitățile matematice ale sistemului pentru a crește viteza, eficiența și acuratețea calculelor.

10. NAG Foundation Toolbox

Caseta de instrumente a fundației NAG

Una dintre cele mai puternice biblioteci de funcții matematice create de The Numerical Algorithms Group, Ltd. Pachetul conține sute de funcții noi. Numele funcțiilor și sintaxa pentru apelarea acestora sunt împrumutate de la binecunoscuta bibliotecă a Fundației NAG. Ca rezultat, utilizatorii experimentați NAG FORTRAN pot lucra cu ușurință cu pachetul NAG din MATLAB. Biblioteca Fundației NAG oferă funcțiile sale sub formă de coduri obiect și fișiere m corespunzătoare pentru a le apela. Utilizatorul poate modifica cu ușurință aceste fișiere MEX la nivel de sursă.

Pachetul oferă următoarele caracteristici:

    rădăcinile polinoamelor și metoda Laguerre modificată;

    calculul sumei unei serii: transformată Fourier discretă și hermitian-discretă;

    ecuații diferențiale obișnuite: metodele Adams și Runge-Kutta;

    ecuații cu diferențe parțiale;

    interpolare;

    calcul de valori proprii și vectori, numere singulare, suport pentru matrici complexe și reale;

    aproximarea curbelor și suprafețelor: polinoame, spline cubice, polinoame Chebyshev;

    minimizarea și maximizarea funcțiilor: programare liniară și pătratică, extreme ale funcțiilor mai multor variabile;

    descompunerea matricelor;

    rezolvarea sistemelor de ecuații liniare;

    ecuații liniare (LAPACK);

    calcule statistice, inclusiv statistici descriptive și distribuții de probabilitate;

    analiza de corelație și regresie: liniară, multivariată și generalizată modele liniare;

    metode multidimensionale: componente principale, rotație ortogonală;

    generarea numerelor aleatoare: distribuție normală, distribuții Poisson, Weibull și Koschi;

    statistici neparametrice: Friedman, Kruskal-Wallis, Mann-Whitney; Serii temporale: unidimensionale și multidimensionale;

    aproximarea funcțiilor speciale: exponent integral, funcție gamma, funcții Bessel și Hankel.

În cele din urmă, acest pachet permite utilizatorului să creeze programe FORTRAN care se conectează dinamic cu MATLAB.

11. Caseta de instrumente Spline

Pachet de aplicații pentru lucrul cu spline. Acceptă interpolarea și aproximarea spline unidimensionale, bidimensionale și multidimensionale. Oferă prezentarea și afișarea datelor complexe și suport grafic.

Pachetul vă permite să efectuați interpolarea, aproximarea și transformarea spline-urilor din forma B în polinom pe bucăți, interpolarea cu spline cubice și netezire, efectuarea de operații pe spline: calculul derivatei, integrale și afișare.

Spline este echipat cu programe B-spline descrise în A Practical Guide to Splines de Carl Debour, creatorul spline și autorul cărții Spline. Funcțiile pachetului, în combinație cu limbajul MATLAB și un ghid detaliat al utilizatorului, facilitează înțelegerea splinelor și le aplică în mod eficient la rezolvarea unei varietăți de probleme.

Pachetul include programe pentru lucrul cu cele mai răspândite două forme de reprezentare spline: forma B și forma polinom pe bucăți. Forma B este convenabilă în etapa de construire a splinelor, în timp ce forma polinomială pe bucăți este mai eficientă la momentul respectiv munca permanenta cu o spline. Pachetul include funcții pentru crearea, afișarea, interpolarea, aproximarea și procesarea spline-urilor în formă B și sub formă de segmente polinomiale.

12. Caseta de instrumente pentru statistici

Caseta de instrumente pentru statistici

Un pachet de programe aplicate pentru statistică, extinzând dramatic capacitățile sistemului MATLAB în implementarea calculelor statistice și procesării datelor statistice. Conține un set foarte reprezentativ de instrumente pentru generarea de numere aleatoare, vectori, matrici și tablouri cu legi de distribuție diferite, precum și multe funcții statistice. Trebuie remarcat faptul că cele mai comune functii statistice sunt incluse în nucleul sistemului MATLAB (inclusiv funcții pentru generarea de date aleatorii cu distribuție uniformă și normală). Caracteristicile cheie ale pachetului:

    Statisticile descriptive;

    distribuții de probabilitate;

    estimarea și aproximarea parametrilor;

    testarea ipotezelor;

    regresie multiplă;

    regresie interactivă în trepte;

    simulare Monte Carlo;

    aproximarea intervalului;

    controlul statistic al procesului;

    planificarea unui experiment;

    modelarea suprafeței de răspuns;

    aproximarea unui model neliniar;

    Analiza componentelor principale;

    grafice statistice;

    interfata grafica cu utilizatorul.

Pachetul include 20 de distribuții de probabilitate diferite, inclusiv t (Student), F și Chi-pătrat. Pentru toate tipurile de distribuții sunt furnizate selecția parametrilor, afișarea grafică a distribuțiilor și o metodă de calcul a celor mai bune aproximări. Există multe instrumente interactive pentru vizualizarea și analiza dinamică a datelor. Există interfețe specializate pentru modelarea suprafețelor de răspuns, vizualizarea distribuțiilor, generarea de numere aleatoare și linii de nivel.

13. Caseta de instrumente de optimizare

Caseta de instrumente de optimizare

Pachet de aplicații - pentru rezolvarea problemelor de optimizare și a sistemelor de ecuații neliniare. Acceptă metode de optimizare de bază pentru funcțiile unui număr de variabile:

    optimizarea necondiționată a funcțiilor neliniare;

    cele mai mici pătrate și interpolare neliniară;

    rezolvarea ecuațiilor neliniare;

    programare liniară;

    programare pătratică;

    minimizarea condiționată a funcțiilor neliniare;

    metoda minimax;

    optimizare multiobiectivă.

O varietate de exemple demonstrează utilizarea eficientă a funcțiilor pachetului. Ele pot fi, de asemenea, folosite pentru a compara modul în care aceeași problemă este rezolvată prin metode diferite.

14. Caseta de instrumente pentru ecuații diferențiale parțiale

Caseta de instrumente pentru ecuații diferențiale parțiale

Un pachet de aplicații foarte important care conține multe funcții pentru rezolvarea sistemelor de ecuații cu diferențe parțiale. Oferă instrumente eficiente pentru rezolvarea unor astfel de sisteme de ecuații, inclusiv a celor rigide. Pachetul folosește o metodă cu elemente finite. Comenzile pachetului și GUI pot fi folosite pentru modelare matematică ecuații diferențiale parțiale aplicate la o clasă largă de aplicații științifice și de inginerie, inclusiv probleme de rezistență a materialelor, calcule ale dispozitivelor electromagnetice, probleme de transfer și difuzie de căldură și masă. Caracteristicile cheie ale pachetului:

    interfață grafică completă pentru procesarea ecuațiilor diferențiale parțiale de ordinul doi;

    selectarea automată și adaptivă a rețelei;

    stabilirea condițiilor la limită: Dirichlet, Neumann și mixte;

    setare flexibilă a problemelor folosind sintaxa MATLAB;

    partiționarea complet automată a plaselor și selectarea dimensiunii elementelor finite;

    scheme de proiectare neliniare și adaptive;

    capacitatea de a vizualiza câmpurile diferiților parametri și funcții ale soluției, o demonstrație a efectelor de partiționare și animație adoptate.

Pachetul urmează în mod intuitiv cei șase pași de rezolvare a unui PDE folosind metoda elementelor finite. Acești pași și modurile corespunzătoare ale pachetului sunt următoarele: definirea geometriei (modul de desen), stabilirea condițiilor la limită (modul condițiilor la limită), alegerea coeficienților care definesc problema (modul PDE), discretizarea elementelor finite (modul plasă) , stabilirea condițiilor inițiale și rezolvarea ecuațiilor (modul soluție), post-procesarea soluției (modul grafic).

15. Pachete de analiză și sinteză a sistemelor de control

Pachete de analiză și sinteză pentru sisteme de control

Caseta de instrumente a sistemului de control

Pachetul Control System este destinat modelării, analizei și proiectării sistemelor automate de control – atât continue, cât și discrete. Funcțiile pachetului implementează metode tradiționale ale funcției de transfer și metode moderne ale spațiului de stat. Răspunsurile în frecvență și timp, diagramele de locație cu zerouri și poli pot fi calculate rapid și afișate pe ecran. Pachetul contine:

    un set complet de instrumente pentru analiza sistemelor MIMO (multe intrări - multe ieșiri);

    caracteristici de timp: funcții de transfer și tranzitorii, răspuns la un impact arbitrar;

    caracteristici de frecvență: diagrame Bode, Nichols, Nyquist etc.;

    dezvoltarea feedback-urilor;

    proiectarea regulatoarelor LQR / LQE;

    caracteristicile modelelor: controlabilitate, observabilitate, scăderea ordinii modelelor;

    suport pentru sisteme întârziate.

Funcțiile suplimentare de construire a modelelor vă permit să construiți modele mai complexe. Răspunsul în timp poate fi calculat pentru o intrare de impuls, un singur salt sau o intrare arbitrară. Există și funcții pentru analiza numerelor singulare.

Un mediu interactiv pentru compararea răspunsurilor în timp și frecvență ale sistemelor oferă utilizatorului controale grafice pentru afișarea și comutarea simultană între răspunsuri. Pot fi calculate diferite caracteristici de răspuns, cum ar fi timpii de accelerare și control.

Pachetul Sistem de control conține instrumente pentru selectarea parametrilor de feedback. Metodele tradiționale includ analiza punctelor caracteristice, determinarea câștigului și a atenuării. Printre metodele moderne: reglarea liniar-quadratică etc. Pachetul Sistem de control include un număr mare de algoritmi pentru proiectarea și analiza sistemelor de control. În plus, are un mediu personalizabil și vă permite să vă creați propriile fișiere m.

16. Neliniar Control Design Toolbox

Caseta de instrumente de proiectare a controlului neliniar

Nonlinear Control Design (NCD) Blockset implementează o metodă de optimizare dinamică pentru proiectarea sistemelor de control. Conceput pentru a fi utilizat cu Simulink, acest instrument ajustează automat parametrii sistemului pe baza constrângerilor de sincronizare definite de utilizator.

Pachetul folosește obiecte în mișcare cu mouse-ul pentru a modifica constrângerile de timp direct pe grafice, ceea ce vă permite să configurați cu ușurință variabile și să specificați parametrii nedefiniți, oferă optimizare interactivă, implementează simulări Monte Carlo, susține proiectarea SISO (o intrare - o ieșire) și sistemele de control MIMO, vă permite să simulați suprimarea interferențelor, urmărirea și alte tipuri de răspunsuri, acceptă probleme repetitive ale parametrilor și sarcini de control cu ​​sisteme de întârziere, vă permite să alegeți între constrângeri satisfăcute și de neatins.

17. Cutie de instrumente de control robust

Cutie de instrumente robustă de control

Pachetul Robust Control include instrumente pentru proiectarea și analiza sistemelor de control robuste multi-parametri. Acestea sunt sisteme cu erori de simulare, a căror dinamică nu este pe deplin cunoscută sau ai căror parametri se pot modifica în timpul simulării. Algoritmii puternici ai pachetului vă permit să efectuați calcule complexe ținând cont de modificările multor parametri. Caracteristicile pachetului:

    sinteza de controlere LQG pe baza minimizării normelor uniforme și integrale;

    răspuns în frecvență cu mai mulți parametri;

    construirea unui model spațial de stat;

    transformarea modelelor pe baza numerelor singulare;

    scăderea ordinii modelului;

    factorizarea spectrală.

Pachetul de control robust este bazat pe funcții Controlul pachetului Sistem, oferind în același timp un set avansat de algoritmi pentru proiectarea sistemului de control. Pachetul oferă o tranziție între teoria modernă a controlului și aplicațiile practice. Are multe funcții care implementează metode moderne de proiectare și analiză pentru controlere robuste cu mai mulți parametri.

Manifestările incertitudinilor care încalcă stabilitatea sistemelor sunt diverse - zgomote și perturbări ale semnalelor, inexactitatea modelului funcției de transfer, dinamică neliniară nemodelată. Pachetul Robust Control vă permite să estimați limita de stabilitate multi-parametrică sub diferite incertitudini. Printre metodele utilizate: algoritmul lui Perron, analiza caracteristicilor funcţiilor de transfer etc.

Pachetul Robust Control oferă diverse metode de proiectare a feedback-urilor, printre care: LQR, LQG, LQG / LTR etc. Necesitatea de a scădea ordinea unui model apare în mai multe cazuri: scăderea ordinii unui obiect, scăderea ordinii unui regulator , modelarea sistemelor mari. O procedură calitativă de scădere a ordinii unui model trebuie să fie stabilă numeric. Procedurile incluse în pachetul Robust Control fac față cu succes acestei sarcini.

18. Model Predictive Control Toolbox

Model Predictive Control Toolbox

Pachetul Model Predictive Control conține un set complet de instrumente pentru implementarea strategiilor de control predictiv (proactiv). Această strategie a fost dezvoltată pentru a rezolva probleme practice de gestionare a proceselor complexe multicanal cu constrângeri asupra variabilelor de stare și control. Metodele de control predictiv sunt utilizate în industria chimică și pentru a controla alte procese continue. Pachetul prevede:

    modelarea, identificarea și diagnosticarea sistemelor;

    suport pentru MISO (multe intrări - o ieșire), MIMO, răspuns tranzitoriu, modele de spațiu de stare;

    analiza de sistem;

    conversia modelelor în diverse forme de reprezentare (spațiu de stare, funcții de transfer);

    oferind tutoriale și demonstrații.

Abordarea predictivă a problemelor de control utilizează un liniar explicit model dinamic obiect pentru a prezice impactul schimbărilor viitoare ale variabilelor de control asupra comportamentului obiectului. Problema de optimizare este formulată sub forma unei probleme de programare pătratică constrânsă, care este rezolvată din nou la fiecare ciclu de simulare. Pachetul vă permite să creați și să testați regulatoare atât pentru obiecte simple, cât și pentru cele complexe.

Pachetul conține peste cincizeci de funcții specializate pentru proiectarea, analiza și modelarea sistemelor dinamice folosind control predictiv. Suporta urmatoarele tipuri de sisteme: impuls, continuu si discret in timp, spatiu de stari. Procesat tipuri diferite indignare. În plus, constrângerile asupra variabilelor de intrare și de ieșire pot fi incluse în mod explicit în model.

Instrumentele de simulare permit urmărirea și stabilizarea. Instrumentele de analiză includ calculul polilor în buclă închisă, răspunsul în frecvență și alte caracteristici ale sistemului de control. Pentru a identifica modelul din pachet, există funcții de interacțiune cu pachetul System Identification. Pachetul include și două funcții Simulink care vă permit să testați modele neliniare.

19.mu - Analiză și Sinteză

(Mu) -Analiză și Sinteză

Pachetul p-Analiză și Sinteză conține funcții pentru proiectarea sistemelor de control robuste. Pachetul folosește optimizarea uniform-rate și parametrul singular și. Acest pachet include o interfață grafică pentru a simplifica operațiunile de bloc în timpul proiectării. regulatori optimi... Proprietăți pachet:

  • proiectarea controlerelor optime în norme uniforme și integrale;
  • estimarea parametrului singular real și complex mu;
  • Iterații D-K pentru o valoare aproximativă mu-sinteză;

    o interfață grafică pentru analiza răspunsului în buclă închisă;

    mijloace de scădere a ordinii modelului;

    conectarea directă a blocurilor individuale ale sistemelor mari.

Un model de spațiu de stare poate fi creat și analizat pe baza matricelor de sistem. Pachetul acceptă modele continue și discrete. Pachetul are o interfață grafică completă, inclusiv: capacitatea de a seta intervalul de date de intrare, o fereastră specială pentru editarea proprietăților Iterații D-Kși reprezentare grafică caracteristicile de frecvență. Are funcții pentru adunarea matricelor, înmulțirea, diverse transformări și alte operații pe matrice. Oferă posibilitatea de a reduce ordinea modelelor.

20. Fluxul de stat

Stateflow este un pachet de modelare a sistemului bazat pe teoria mașinilor cu stări finite. Acest pachet este destinat să fie utilizat împreună cu pachetul de simulare a sistemelor dinamice Simulink. În orice model Simulink, puteți insera o diagramă Stateflow (sau diagramă SF) care va reflecta comportamentul componentelor obiectului (sau sistemului) de simulare. Diagrama SF este animată. Prin blocurile și conexiunile evidențiate, puteți urmări toate etapele sistemului sau dispozitivului modelat și puteți face ca funcționarea acestuia să depindă de anumite evenimente. Orez. 23.6 ilustrează simularea comportamentului unui autoturism în cazul unei urgențe pe drum. O diagramă SF (mai precis, un cadru al lucrării sale) este vizibilă sub modelul mașinii.

Pentru crearea diagramelor SF, pachetul are un editor convenabil și simplu, precum și instrumente de interfață cu utilizatorul.

21. Caseta de instrumente pentru teoria feedback-ului cantitativ

Caseta de instrumente pentru teoria feedback-ului cantitativ

Pachetul conține funcții pentru crearea unor sisteme de feedback robuste (stabile). QFT (Teoria Feedback Cantitativ) este o tehnică de inginerie care utilizează reprezentarea în frecvență a modelelor pentru a satisface diverse cerințe de calitate în prezența unor caracteristici incerte ale obiectului. Metoda se bazează pe observația că feedback-ul este necesar în cazurile în care unele caracteristici ale unui obiect sunt incerte și/sau se aplică perturbări necunoscute la intrarea acestuia. Caracteristicile pachetului:

    estimarea limitelor de frecvență ale incertitudinii inerente feedback-ului;

    o interfață grafică cu utilizatorul care vă permite să optimizați procesul de găsire a parametrilor de feedback necesari;

    funcții de determinare a influenței diferitelor blocuri introduse în model (multiplexoare, sumatoare, bucle de feedback) în prezența incertitudinilor;

    suport pentru simularea buclelor de feedback analogice și digitale, cascadelor și circuitelor cu mai multe bucle;

    rezoluția incertitudinii în parametrii obiectului folosind modele parametrice și neparametrice sau o combinație a acestor tipuri de modele.

Teoria feedback-ului este o extensie naturală a abordării clasice de proiectare bazată pe frecvență. Scopul său principal este proiectarea de controlere simple, de comandă mică, cu lățime de bandă minimă, care să satisfacă performanța în prezența incertitudinilor.

Pachetul vă permite să calculați diverși parametri feedback-uri, filtre, controlere de testare atât în ​​spațiu continuu cât și în spațiu discret. Are o interfață grafică ușor de utilizat, care vă permite să creați controale simple care îndeplinesc cerințele utilizatorului.

QFT permite ca controlerele să fie proiectate pentru a îndeplini cerințe diferite, în ciuda modificărilor în parametrii modelului. Datele măsurate pot fi utilizate direct pentru proiectarea regulatorului, fără a fi nevoie de a identifica răspunsuri complexe ale sistemului.

22. LMI Control Toolbox

Caseta de instrumente de control LMI

Pachetul de control LMI (Linear Matrix Inequality) oferă un mediu integrat pentru stabilirea și rezolvarea problemelor de programare liniară. Destinat inițial pentru proiectarea sistemelor de control, pachetul vă permite să rezolvați orice probleme de programare liniară în aproape orice domeniu de activitate în care apar astfel de probleme. Caracteristicile cheie ale pachetului:

    rezolvarea problemelor de programare liniară: probleme de compatibilitate a constrângerilor, minimizarea obiectivelor liniare în prezența constrângerilor liniare, minimizarea valorilor proprii;

    cercetarea problemelor de programare liniară;

    editor grafic pentru sarcini de programare liniară;

    stabilirea de constrângeri în formă simbolică;

    proiectarea cu mai multe criterii a reglementatorilor;

    testarea stabilității: stabilitatea pătratică a sistemelor liniare, stabilitatea Lyapunov, verificarea criteriului lui Popov pentru sistemele neliniare.

Pachetul LMI Control conține algoritmi simplex moderni pentru rezolvarea problemelor de programare liniară. Utilizează o reprezentare structurală a constrângerilor liniare, care îmbunătățește eficiența și minimizează cerințele de memorie. Pachetul are instrumente specializate pentru analiza și proiectarea sistemelor de control bazate pe programare liniară.

Cu soluții de rezolvare a problemelor de programare liniară, puteți efectua cu ușurință verificări de stabilitate pe sisteme dinamice și sisteme cu componente neliniare. Anterior, acest tip de analiză era considerat prea complex pentru a fi implementat. Pachetul permite chiar și o astfel de combinație de criterii, care anterior era considerată prea complexă și rezolvabilă doar cu ajutorul abordărilor euristice.

Pachetul este un instrument puternic pentru rezolvarea problemelor de optimizare convexe apărute în domenii precum controlul, identificarea, filtrarea, „designul structural, teoria grafurilor, interpolarea și algebra liniară. Pachetul LMI Control include două tipuri de interfață grafică cu utilizatorul: problema de programare liniară. editor (Editor LMI) și interfața Magshape, Editorul LMI permite setarea constrângerilor de caractere, iar Magshape oferă un mijloc ușor de utilizat pentru a lucra cu pachetul.

23. Pachete de identificare a sistemului

Pachete de identificare a sistemului

Caseta de instrumente de identificare a sistemului

Pachetul de identificare a sistemului conține instrumente pentru crearea modelelor matematice ale sistemelor dinamice bazate pe datele de intrare și de ieșire observate. Are o interfață grafică flexibilă pentru a ajuta la organizarea datelor și la crearea modelelor. Metodele de identificare incluse în pachet sunt aplicabile pentru rezolvarea unei clase largi de probleme, de la proiectarea sistemelor de control și procesarea semnalului până la analiza seriilor temporale și a vibrațiilor. Principalele proprietăți ale pachetului:

    interfață simplă și flexibilă;

    preprocesarea datelor, inclusiv prefiltrarea, eliminarea tendințelor și a compensațiilor; O selectarea unei game de date pentru analiză;

    analiza răspunsului în timp şi domeniul de frecventa;

    afișarea zerourilor și polilor funcției de transfer al sistemului;

    analiza reziduurilor la testarea modelului;

    construirea de diagrame complexe, cum ar fi diagrama Nyquist etc.

Interfața grafică simplifică preprocesarea datelor, precum și procesul interactiv de identificare a modelului. De asemenea, este posibil să lucrați cu pachetul în modul de comandă și folosind extensia Simulink. Operațiunile de încărcare și salvare a datelor, selectarea unui interval, ștergerea decalajelor și tendințelor sunt efectuate cu efort minim și sunt localizate în meniul principal.

Prezentarea datelor și a modelelor identificate este organizată grafic în așa fel încât în ​​procesul de identificare interactivă utilizatorul să poată reveni cu ușurință la pasul anterior al lucrării. Pentru începători, este posibil să vizualizați următorii pași posibili. Instrumentele grafice permit specialistului să găsească oricare dintre modelele obținute anterior și să evalueze calitatea acestuia în comparație cu alte modele.

Începând cu măsurarea ieșirii și a intrării, puteți crea un model parametric al unui sistem care descrie comportamentul său dinamic. Pachetul acceptă toate structurile de model tradiționale, inclusiv autoregresiv, structura Box-Jenkins și altele.Acceptă modele liniare de spațiu de stare care pot fi definite atât în ​​spațiu discret, cât și în spațiu continuu. Aceste modele pot include un număr arbitrar de intrări și ieșiri. Pachetul include funcții care pot fi folosite ca date de testare pentru modelele identificate. Identificarea modelului liniar este utilizată pe scară largă în proiectarea sistemelor de control atunci când este necesară crearea unui model al unui obiect. În sarcinile de procesare a semnalului, modelele pot fi utilizate pentru procesarea adaptivă a semnalului. Metodele de identificare sunt aplicate cu succes și aplicațiilor financiare.

24. Caseta de instrumente de identificare a sistemului de domeniu de frecvență

Caseta de instrumente de identificare a sistemului de domeniu de frecvență

Pachetul Frequency Domain System Identification oferă mijloace specializate de identificare a sistemelor dinamice liniare prin temporal sau răspuns în frecvență... Metodele din domeniul frecvenței au ca scop identificarea sistemelor continue, ceea ce este un plus puternic la metoda discretă mai tradițională. Metodele pachetului pot fi aplicate la probleme precum modelarea sistemelor electrice, mecanice și acustice. Proprietăți pachet:

    perturbații periodice, factor de vârf, spectru optim, secvențe binare pseudoaleatoare și discrete;

    calcularea intervalelor de încredere de amplitudine și fază, zerouri și poli;

    identificarea sistemelor continue și discrete cu întârziere necunoscută;

    diagnosticarea modelului, inclusiv modelarea și calcularea reziduurilor;

    conversia modelelor în format System Identification Toolbox și invers.

Folosind o abordare bazată pe frecvență, se poate realiza cel mai bun modelîn domeniul frecvenței; evitarea erorilor de eșantionare; ușor de separat componenta constantă a semnalului; îmbunătăți semnificativ raportul semnal-zgomot. Pentru a obține semnale perturbatoare, pachetul oferă funcții pentru generarea de secvențe binare, minimizarea dimensiunii vârfului și îmbunătățirea caracteristicilor spectrale. Pachetul oferă identificarea sistemelor statice liniare continue și discrete, generarea automată a semnalelor de intrare, precum și o reprezentare grafică a zerourilor și polilor funcției de transfer a sistemului rezultat. Funcțiile pentru testarea modelului includ calcularea reziduurilor, funcțiile de transfer, zerourile și polii și rularea modelului folosind datele de testare.

25. Pachete suplimentare de extensii MATLAB

Pachete suplimentare de extensii MATLAB

Cutie de instrumente de comunicații

Un pachet de programe aplicate pentru construirea și simularea diverselor dispozitive de telecomunicații: linii digitale comunicații, modemuri, convertoare de semnal etc. Are cel mai bogat set de modele de diverse dispozitive de comunicații și telecomunicații. Conține o serie de exemple interesante de modelare mijloace de comunicare cum ar fi un modem v34, un modulator pentru SSB etc.

26. Procesare digitală a semnalului (DSP) Blockset

Procesare digitală a semnalului (DSP) Blockset

Pachet de aplicații pentru proiectarea dispozitivelor care utilizează procesoare prelucrare digitală semnale. Acestea sunt, în primul rând, filtre digitale de înaltă performanță, cu un răspuns în frecvență dat (AFC) sau adaptabile la parametrii semnalului. Rezultate de modelare și proiectare dispozitive digitale utilizarea acestui pachet poate fi folosită pentru a construi filtre digitale de înaltă performanță microprocesoare moderne procesarea semnalului digital.

27. Fixed-Point Blockset

Set de blocuri cu punct fix

Acest pachet special este axat pe simularea sistemelor de control digital și a filtrelor digitale ca parte a pachetului Simulink. Un set special de componente vă permite să comutați rapid între calculele în virgulă fixă ​​și în virgulă mobilă. Puteți specifica lungimi de cuvinte de 8, 16 sau 32 de biți. Pachetul are o serie de proprietăți utile:

    folosind aritmetică nesemnată sau binară;

    poziția punctului binar selectabilă de utilizator;

    setarea automată a poziției punctului binar;

    vizualizarea intervalelor de semnal maxime și minime ale modelului;

    comutarea între calcule în virgulă fixă ​​și în virgulă mobilă;

    corectarea depășirii și disponibilitatea componentelor cheie pentru operațiuni în punct fix; operatori logici, tabele de căutare uni și bidimensionale.

28. Pachete pentru procesarea semnalului și a imaginii

Pachete de procesare a semnalului și a imaginilor

Caseta de instrumente pentru procesarea semnalului

Un pachet puternic pentru analiza, modelarea și proiectarea dispozitivelor pentru procesarea tuturor tipurilor de semnale, asigurând filtrarea acestora și multe transformări.

Pachetul de procesare a semnalului oferă un software de procesare a semnalului extrem de cuprinzător pentru aplicațiile științifice și tehnice actuale. Pachetul folosește o varietate de tehnici de filtrare și cei mai recenti algoritmi de analiză spectrală. Pachetul conține module pentru dezvoltarea sistemelor liniare și a analizei serii de timp. Pachetul va fi util, în special, în domenii precum procesarea informațiilor audio și video, telecomunicații, geofizică, sarcini de control în modul real timp, economie, finanțe și medicină. Principalele proprietăți ale pachetului:

    simularea semnalelor și a sistemelor liniare;

    proiectare, analiză și implementare de filtre digitale și analogice;

    transformată Fourier rapidă, cosinus discret și alte transformări;

    evaluarea spectrelor și procesarea statistică a semnalului;

    prelucrarea parametrică a seriilor de timp;

    generarea de semnale de diferite forme.

Pachetul de procesare a semnalului este cadrul ideal pentru analiza și procesarea semnalului. Utilizează algoritmi dovediți pe teren selectați pentru eficiență și fiabilitate maximă. Pachetul conține o gamă largă de algoritmi pentru reprezentarea semnalelor și a modelelor liniare. Acest set permite utilizatorului să fie suficient de flexibil pentru a crea un script de procesare a semnalului. Pachetul include algoritmi pentru transformarea unui model de la o vedere la alta.

Pachetul de procesare a semnalului include un set complet de metode pentru crearea de filtre digitale cu o varietate de caracteristici. Vă permite să proiectați rapid filtre trece-înaltă și trece-jos, filtre trece-bandă și trece-oprire, filtre cu mai multe benzi, inclusiv Chebyshev, Yula-Walker, eliptice etc.

Interfața grafică vă permite să proiectați filtre prin specificarea cerințelor pentru acestea în modul de mutare a obiectelor cu mouse-ul. Pachetul include următoarele tehnici noi de proiectare a filtrelor:

    metoda Chebyshev generalizată pentru crearea de filtre cu răspuns de fază neliniar, coeficienți complexi sau răspuns arbitrar. Algoritmul a fost dezvoltat de McLenan și Karam în 1995;

    metoda celor mai mici pătrate constrânse permite utilizatorului să controleze în mod explicit eroarea maximă (anti-aliasing);

    metoda de calcul comandă minimă filtru cu o fereastră Kaiser;

    metoda Butterworth generalizată pentru proiectarea filtrelor low-pass cu lățime de bandă și atenuare maxim uniforme.

Bazat pe un algoritm FFT optim, Procesarea semnalului oferă performanțe de neegalat pentru analiza frecvenței și estimarea spectrală. Pachetul include funcții pentru calcularea transformatei Fourier discrete, a transformatei cosinus discrete, a transformării Hilbert și a altor transformări adesea utilizate pentru analiză, codificare și filtrare. Pachetul implementează metode de analiză spectrală precum metoda Welch, metoda entropiei maxime etc.

O nouă interfață grafică vă permite să vizualizați și să evaluați vizual caracteristicile semnalului, să proiectați și să aplicați filtre, să efectuați analize spectrale, să investigați impactul metode diferiteși parametrii acestora la rezultatul obținut. Interfața grafică este utilă în special pentru vizualizarea seriilor de timp, a spectrelor, a răspunsurilor în timp și în frecvență și a locației zerourilor și polilor funcțiilor de transfer ale sistemului.

Pachetul de procesare a semnalului este baza pentru multe alte sarcini. De exemplu, combinându-l cu pachetul Procesarea imaginii, puteți procesa și analiza semnale și imagini bidimensionale. Împreună cu pachetul System Identification, pachetul Signal Processing permite modelarea parametrică a sistemelor în domeniul temporal. În combinație cu pachetele Neural Network și Fuzzy Logic, pot fi create multe instrumente pentru procesarea datelor sau extragerea caracteristicilor de clasificare. Generatorul de semnal vă permite să creați semnale de puls de diferite forme.

29. Instrumente de analiză spectrală de ordin superior

Instrumente de analiză spectrală de ordin superior

Pachetul de analiză spectrală de ordin superior conține algoritmi speciali pentru analiza semnalului folosind momente de ordin superior. Pachetul oferă oportunități ample pentru analiza semnalelor non-Gauss, deoarece conține algoritmi, poate cele mai avansate metode de analiză și procesare a semnalelor. Caracteristicile cheie ale pachetului:

    evaluarea spectrelor de ordin înalt;

    abordare tradițională sau parametrică;

    restabilirea amplitudinii și fazei;

    prognoză liniară adaptivă;

    restabilirea armonicilor;

    estimarea decalajului;

    blocarea procesării semnalului.

Pachetul de analiză spectrală de ordin superior vă permite să analizați semnalele deteriorate de zgomotul non-Gauss și procesele care apar în sistemele neliniare. Spectrele de ordin înalt, definite în termenii momentelor de ordin înalt ale semnalului, conțin informații suplimentare care nu pot fi obținute folosind doar autocorelarea sau analiza spectrului de putere a semnalului. Spectrele de ordin înalt permit:

    suprimați zgomotul gaussian de culoare aditivă;

    identificarea semnalelor de fază non-minimă;

    evidențiați informațiile datorită naturii non-Gauss a zgomotului;

    detectează și analizează proprietățile neliniare ale semnalelor.

Aplicațiile potențiale ale analizei spectrale de ordin înalt includ acustică, biomedicină, econometrie, seismologie, oceanografie, fizica plasmei, radare și localizatori. Principalele funcții ale pachetului acceptă spectre de ordin înalt, estimare spectrală reciprocă, modele de predicție liniară și estimare de întârziere.

30. Cutie de instrumente pentru procesarea imaginilor

Caseta de instrumente pentru procesarea imaginilor

Procesarea imaginilor oferă oamenilor de știință, inginerilor și chiar artiștilor o gamă largă de instrumente de procesare și analiză a imaginilor digitale. Strâns conectat la mediul de dezvoltare a aplicațiilor MATLAB, Image Processing Toolbox vă eliberează de codarea și depanarea algoritmului, care necesită timp, permițându-vă să vă concentrați pe rezolvarea problemei principale științifice sau practice. Principalele proprietăți ale pachetului:

    restaurarea și selectarea detaliilor imaginii;

    lucrați cu zona selectată a imaginii;

    analiza imaginii;

    filtrare liniară;

    conversia imaginilor;

    transformări geometrice;

    creșterea contrastului detaliilor importante;

    transformări binare;

    procesare de imagini și statistici;

    conversii de culoare;

    schimbarea paletei;

    conversia tipurilor de imagini.

Pachetul de procesare a imaginii oferă oportunități ample de creare și analiză imagini graficeîn mediul MATLAB. Acest pachet oferă o interfață extrem de flexibilă pentru a manipula imagini, a proiecta interactiv imagini grafice, a vizualiza seturi de date și a adnota rezultatele pentru descrieri tehnice, rapoarte și publicații. Flexibilitatea, combinația de algoritmi ai pachetului cu o astfel de caracteristică a MATLAB precum descrierea matrice-vector, fac ca pachetul să fie foarte potrivit pentru rezolvarea aproape oricăror probleme în dezvoltarea și prezentarea graficelor. Exemple de utilizare a acestui pachet în mediul MATLAB au fost date în Lecția 7. MATLAB include proceduri special concepute pentru a îmbunătăți eficiența înveliș grafic... Se pot remarca, în special, următoarele caracteristici:

    depanare interactivă la dezvoltarea graficelor;

    profiler pentru a optimiza timpul de execuție a algoritmului;

    instrumente pentru construirea unei interfețe grafice interactive de utilizator (GUI Builder) pentru a accelera dezvoltarea șabloanelor GUI, permițându-vă să o personalizați pentru sarcinile utilizatorului.

Acest pachet permite utilizatorului să aloce mult mai puțin timp și efort pentru crearea de imagini grafice standard și, astfel, să concentreze eforturile asupra detaliilor și caracteristicilor importante ale imaginilor.

MATLAB și pachetul de procesare a imaginilor sunt adaptate maxim pentru dezvoltare, implementare de idei noi și metode de utilizare. Pentru aceasta, există un set de pachete interfațate menite să rezolve tot felul de sarcini și sarcini specifice într-un cadru neconvențional.

Procesarea imaginilor este în prezent utilizată intens în peste 4.000 de companii și universități din întreaga lume. În același timp, există o gamă foarte largă de sarcini pe care utilizatorii le rezolvă folosind acest pachet, de exemplu, cercetare spațială, dezvoltare militară, astronomie, medicină, biologie, robotică, știința materialelor, genetică etc.

31. Cutia de instrumente Wavelet

Pachetul Wavelet oferă utilizatorului un set complet de programe pentru studierea fenomenelor nestaționare multidimensionale folosind wavelets (pachete de unde scurte). Metodele create relativ recent ale pachetului Wavelet extind capacitățile utilizatorului în acele zone în care se aplică de obicei tehnica de descompunere Fourier. Pachetul poate fi util pentru aplicații precum procesarea semnalului vocal și audio, telecomunicații, geofizică, finanțe și medicină. Principalele proprietăți ale pachetului:

    interfață grafică de utilizator îmbunătățită și set de comenzi pentru analiza, sintetizarea, filtrarea semnalelor și imaginilor;

    transformarea semnalelor continue multidimensionale;

    conversie de semnal discret;

    descompunerea și analiza semnalelor și imaginilor;

    o gamă largă de funcții de bază, inclusiv corectarea efectelor de limită;

    procesare lot de semnale și imagini;

    analiza pachetelor de semnal bazată pe entropie;

    filtrare cu capacitatea de a seta praguri dure și nedure;

    compresie optimă a semnalului.

Folosind pachetul, puteți analiza caracteristici care sunt trecute cu vederea de alte metode de analiză a semnalului, adică tendințe, valori aberante, discontinuități în derivate de ordin ridicat. Pachetul vă permite să comprimați și să filtrați semnalele fără pierderi evidente, chiar și în cazurile în care este necesar să păstrați atât componentele de înaltă cât și joasă frecvență ale semnalului. Există algoritmi de compresie și filtrare pentru procesare în lot semnale. Programele de compresie extrag numărul minim de coeficienți care reprezintă cel mai bine informația originală, ceea ce este foarte important pentru etapele ulterioare ale sistemului de compresie. Pachetul include următoarele seturi de wavelet de bază: biorthogonal, Haar, „Pălărie mexicană”, Mayer, etc. De asemenea, puteți adăuga propriile baze la pachet.

Un ghid extins al utilizatorului explică modul de lucru cu metodele pachetului, însoțit de numeroase exemple și o secțiune completă de link-uri.

32. Alte pachete de programe aplicative

Alte pachete de aplicații

Cutie de instrumente financiare

Un pachet de programe aplicate pentru calcule financiare și economice, care este destul de relevant pentru perioada noastră de reforme de piață. Conține multe funcții pentru calcularea dobânzii compuse, operațiuni asupra depozitelor bancare, calcularea profiturilor și multe altele. Din păcate, din cauza numeroaselor (deși, în general, nu prea fundamentale) diferențe între formulele financiare și economice, utilizarea sa în condițiile noastre nu este întotdeauna rezonabilă - există multe programe interne pentru astfel de calcule, de exemplu, „Contabilitatea 1C”. Dar dacă doriți să vă conectați la bazele de date ale agențiilor de știri financiare - Bloom-berg, IDC prin MATLAB Datafeed Toolbox, atunci, bineînțeles, asigurați-vă că utilizați pachetele de extensie financiară MATLAB.

Financiar este fundamentul pentru rezolvarea unei varietăți de probleme financiare în MATLAB, de la calcule simple până la aplicații distribuite complet. Pachetul financiar poate fi folosit pentru a calcula ratele dobânzilor și profiturile, analiza veniturile derivate și depozitele și optimizarea unui portofoliu de investiții. Caracteristicile cheie ale pachetului:

    procesarea datelor;

    analiza varianței eficienței portofoliului de investiții;

    analiza serii temporale;

    calculul randamentului titlurilor de valoare și evaluarea ratelor;

    analiza statistica si analiza sensibilitatii pietei;

    calculul venitului anual și calculul fluxurilor de numerar;

    metode de amortizare.

Având în vedere importanța datei unei anumite tranzacții financiare, pachetul Financiar include mai multe funcții pentru manipularea datelor și orelor în diferite formate. Pachetul financiar vă permite să calculați prețurile și randamentele atunci când investiți în obligațiuni. Utilizatorul are capacitatea de a seta non-standard, inclusiv neregulate și inconsecvente între ele, grafice ale tranzacțiilor de debit și credit și decontarea finală la plata facturilor. Funcțiile economice de sensibilitate pot fi calculate luând în considerare datele de scadență la momente diferite.

Algoritmii pachetului financiar pentru calcularea indicatorilor fluxului de numerar și a altor date reflectate în conturile financiare vă permit să calculați, în special, ratele dobânzilor pentru împrumuturi și credite, rate de profitabilitate, încasări de credit și cheltuieli finale, estimați și preziceți valoarea unui portofoliu de investiții, calculați indicatorii de amortizare etc. Funcțiile pachetului pot fi utilizate luând în considerare fluxurile de numerar pozitive și negative (cash-flow) ( excesul de încasări în numerar peste plăți sau, respectiv, plăți în numerar peste încasări).

Pachetul financiar conține algoritmi care vă permit să analizați portofoliul de investiții, dinamica și coeficienții de sensibilitate economică. În special, la determinarea eficienței investițiilor, funcțiile pachetului vă permit să formați un portofoliu care să satisfacă problema clasică a lui G. Markowitz. Utilizatorul poate combina algoritmii pachetului pentru a calcula rapoartele Sharpe și ratele de rentabilitate. Analiza dinamicii și a coeficienților de sensibilitate economică permite utilizatorului să definească poziții pentru tranzacții straddle, hedging și tranzacții cu rată fixă. Suita financiară oferă, de asemenea, opțiuni extinse pentru prezentarea și prezentarea datelor și rezultatelor sub formă de grafice și diagrame tradiționale pentru industriile economice și financiare. Fondurile pot fi afișate la cererea utilizatorului în formate zecimal, bancar și procentual.

33. Mapping Toolbox

Pachetul de cartografiere oferă o interfață grafică și de comandă pentru analiza datelor geografice, afișarea hărților și accesarea surselor de date geografice externe. În plus, pachetul este potrivit pentru a lucra cu multe atlase binecunoscute. Toate aceste instrumente, în combinație cu MATLAB, oferă utilizatorilor toate condițiile pentru munca productiva cu date geografice științifice. Caracteristicile cheie ale pachetului:

    vizualizarea, prelucrarea și analiza datelor grafice și științifice;

    peste 60 de proiecții hărți (directe și inverse);

    proiectarea și afișarea hărților vectoriale, matriceale și compozite;

    interfata grafica pentru construirea si procesarea hartilor si datelor;

    Atlasuri de date globale și regionale și interfață cu date guvernamentale de înaltă rezoluție;

    statistici geografice și funcții de navigație;

    Prezentarea 3D a hărților cu iluminare și umbrire încorporate;

    convertoare pentru formate de date geografice populare: DCW, TIGER, ETOPO5.

Pachetul de cartografiere include peste 60 dintre cele mai cunoscute proiecții, inclusiv cilindrice, pseudocilindrice, conice, policonice și pseudo-conice, azimut și pseudoazimut. Sunt posibile proiecții directe și inverse, precum și vizualizări de proiecție non-standard specificate de utilizator.

În pachetul Mapping prin card se numește orice variabilă sau set de variabile care reflectă sau atribuie o valoare numerică punct geografic sau zonă. Pachetul vă permite să lucrați cu hărți de date vectoriale, matrice și mixte. O interfață grafică puternică oferă hărți interactive, cum ar fi capacitatea de a muta indicatorul peste un articol și de a face clic pe el pentru a obține informații. Interfața grafică MAPTOOL este un mediu complet de dezvoltare pentru aplicații pentru lucrul cu hărți.

Cele mai cunoscute atlasuri ale lumii, Statele Unite ale Americii, sunt incluse în pachet atlasele astronomice. Structura datelor geografice simplifică extragerea și prelucrarea datelor din atlase și hărți. Structura datelor geografice și funcțiile pentru interacțiunea cu formatele de date geografice externe Digital Chart of the World (DCW), TIGER, TBASE și ETOPO5 sunt reunite pentru a oferi un instrument puternic și flexibil pentru accesarea bazelor de date geografice existente și viitoare. Analiza amănunțită a datelor geografice necesită adesea metode matematice care funcționează într-un sistem de coordonate sferice. Pachetul de cartografiere oferă un subset de funcții geografice, statistice și de navigare pentru analiza datelor geografice. Funcțiile de navigare oferă o gamă largă de opțiuni pentru îndeplinirea sarcinilor de călătorie, cum ar fi poziționarea și planificarea rutei.

34. Power System Blockset

Caseta de instrumente pentru achiziția datelor și Caseta de instrumente pentru controlul instrumentelor

Data Acquisition Toolbox este un pachet de extensie legat de domeniul colectării datelor prin blocuri conectate la magistrala internă a unui calculator, generatoare de funcții, analizoare de spectru – pe scurt, instrumente utilizate pe scară largă în scopuri de cercetare pentru obținerea datelor. Acestea sunt susținute de o bază de calcul adecvată. Bloc nou Instrument Control Toolbox vă permite să conectați instrumente și dispozitive cu Interfață serialăși cu interfețe Public Channel și VXI.

36. Caseta de instrumente pentru baze de date și Caseta de instrumente pentru realitate virtuală

Caseta de instrumente pentru baze de date și Caseta de instrumente pentru realitate virtuală

Viteza casetei de instrumente a bazei de date a fost mărită de peste 100 de ori, cu ajutorul căreia informațiile sunt schimbate cu o serie de sisteme de gestionare a bazelor de date prin drivere ODBC sau JDBC:

  • Acces 95 sau 97 Microsoft;

    Microsoft SQL Server 6.5 sau 7.0;

    Sybase Adaptive Server 11;

    Sybase (fostă Watcom) SQL Server Anywhere 5.0;

    IBM DB2 Universal 5.0

  • Computer Associates Ingres (toate versiunile).

Toate datele sunt pre-convertite într-o matrice de celule în MATLAB 6.0. În MATLAB 6.1, puteți utiliza și o serie de structuri. Visual Query Builder vă permite să compuneți interogări arbitrar complexe în dialectele SQL ale acestor baze de date, chiar și fără cunoștințe de SQL. Multe baze de date eterogene pot fi deschise într-o singură sesiune.

Virtual Reality Toolbox este disponibilă începând cu MATLAB 6.1. Permite animație și animație 3D, inclusiv modele Simulink. Limbajul de programare - VRML - Virtual Reality Modeling Language. Animația poate fi vizualizată de pe orice computer echipat cu un browser VRML activat. Confirmă că matematica este știința relațiilor cantitative și a formelor spațiale ale oricăror lumi reale sau virtuale.

37. Link Excel

Permite folosirea Microsoft Excel 97 ca procesor I/O MATLAB. Pentru a face acest lucru, trebuie doar să instalați fișierul excllinkxla furnizat de Math Works ca funcție suplimentară în Excel. În Excel, trebuie să tastați Service > Suplimente> Răsfoiți, selectați fișierul din directorul \ matlabrl2 \ toolbox \ exlink și instalați-l. Acum, de fiecare dată când porniți Excel, apare fereastra de comandă MATLAB și panoul Control Excel completat cu butoanele getmatrix, putmatrix, evalstring. Pentru a închide MATLAB din Excel, trebuie doar să tastați = MLC1ose () în orice celulă Excel. Pentru a o deschide după executarea acestei comenzi, trebuie fie să faceți clic pe unul dintre butoanele getmatrix, putmatrix, evalstring, fie să tastați Excel Tools> Macro> Run mat! abi ni t. Cu mouse-ul peste o serie de celule Excel, puteți face clic pe getmatrix și introduceți numele variabilă MATLAB... Matricea apare în Excel. După ce ați completat un interval de celule Excel cu numere, puteți selecta intervalul respectiv, faceți clic pe putmatrix și introduceți numele variabilei MATLAB. Operația este astfel intuitivă. Spre deosebire de MATLAB, Excel Link nu face distincție între majuscule și minuscule: I și i, J și j sunt egale.

Apelați demonstrații ale pachetelor de extensii.

Majoritatea dezvoltatorilor le este greu să înțeleagă atât sintaxa, cât și capabilitățile. Chestia este că limbajul este direct legat de un produs software popular, al cărui cost poate atinge valori uluitoare. Deci, întrebarea principală este: este Matlab în sine atât de bun? Și vă poate fi de folos.

Utilizare

Să începem nu cu o excursie standard în istorie și discuții despre avantajele și dezavantajele limbajului, ci cu mediul software MATLAB / Simulink - singurul loc în care eroul acestui text poate fi util. Imaginați-vă doar un editor grafic în care puteți implementa oricare dintre ideile dvs. fără a avea în spate câțiva ani de experiență și educație relevantă. Și după ce a creat o schemă de interacțiune a instrumentelor o dată, obțineți un script de înaltă calitate pentru utilizare repetată.

MATLAB este doar un astfel de editor în lumea datelor. Domeniul său de aplicare este infinit de larg: IoT, finanțe, medicină, spațiu, automatizare, robotică, sisteme wireless si multi multi altii. În general, există posibilități aproape nelimitate de colectare și vizualizare a datelor, precum și de prognoză, dar numai dacă există posibilitatea de a cumpăra pachetul corespunzător.

În ceea ce privește prețul, aproape că nu există graniță superioară, dar cea inferioară este în regiunea de 99 de dolari. Pentru a obține un produs atât de puternic pentru bani relativ puțini, trebuie să fii student universitar. Și, desigur, obțineți un produs destul de limitat.

Caracteristicile limbii

Limbajul MATLAB este un instrument care asigură interacțiunea unui operator (de multe ori nici măcar un programator) cu toate oportunități disponibile analiza, colectarea si prezentarea datelor. Are avantaje și dezavantaje evidente inerente unei limbi care trăiesc într-un ecosistem închis.

Dezavantaje:

    Un limbaj lent și supraîncărcat cu operatori, comenzi, funcții, al cărui scop principal este îmbunătățirea percepției vizuale.

    Îngust direcțional. Nu mai este platforma software oriunde MATLAB este util.

    Cost ridicat al software-ului. Dacă nu ești student, fie pregătește-te să-ți golești buzunarele, fie să treci granița legii. Și chiar dacă studentul este un preț decent.

    Cerere scăzută. În ciuda interesului mare pentru MATLAB în aproape toate domeniile, de fapt și din punct de vedere legal, doar câțiva îl folosesc.

Avantaje:

    Limba este ușor de învățat și are o sintaxă simplă și directă.

    Oportunități uriașe. Dar acesta este mai degrabă un avantaj al întregului produs în ansamblu.

    Actualizări frecvente, de regulă, transformări pozitive vizibile au loc cel puțin de câteva ori pe an.

    Mediu software vă permite să îl convertiți în cod „rapid” în C, C++.

Publicul țintă

Desigur, nu toată lumea are nevoie de MATLAB. În ciuda celei mai largi game de aplicații, este greu de imaginat că dezvoltatorul obișnuit de aplicații ar putea avea nevoie de cunoștințe despre acest limbaj. MATLAB este extrem de util în domeniile care necesită o fiabilitate specială în procesarea datelor, de exemplu, în sistemele de pilot automat din mașini sau sistemele electronice de bord ale unei aeronave.

Adică, dacă nu ești foarte programator, dar într-un fel sau altul profesia ta este asociată cu nevoia de procesare programatică a datelor, atunci produsul MATLAB / Simulink cu limbajul adecvat îți poate simplifica foarte mult sarcinile de zi cu zi.

Literatură

Încheiem trecerea în revistă a limbii, ca întotdeauna, cu o listă de literatură educațională. Desigur, printre ele nu veți găsi cărți exclusiv despre limbă, dar acest lucru va face doar percepția limbajului mai ușoară:

Ai experiență cu MATLAB? Și care?

Pentru cei care doresc să devină programator -.

Top articole similare