Matlab - paketti sovellettuja ohjelmia teknisten laskentaongelmien ratkaisemiseen - asennus ja konfigurointi. Matlab-ohjelman kuvaus

MATLAB on korkean tason tekninen laskentakieli, interaktiivinen algoritmien kehitysympäristö ja moderni data-analyysityökalu.
MATLAB, verrattuna perinteisiin ohjelmointikieliin (C / C ++, Java, Pascal, FORTRAN), mahdollistaa tyypillisten ongelmien ratkaisemiseen kuluvan ajan lyhentämisen suuruusluokkaa ja yksinkertaistaa huomattavasti uusien algoritmien kehittämistä.
MATLAB on koko MathWorks-tuoteperheen selkäranka ja päätyökalu monenlaisten tieteellisten ja sovellettavien ongelmien ratkaisemiseen, kuten: objektit ja ohjausjärjestelmien kehittäminen, viestintäjärjestelmät, signaalin ja kuvan käsittely, signaalin mittaus ja testaus, taloudellinen mallinnus, laskennallinen biologia jne.
MATLAB-ytimen avulla on mahdollisimman helppoa työskennellä todellisten, monimutkaisten ja analyyttisten tietotyyppien matriisien sekä tietorakenteiden ja hakutaulukoiden kanssa. MATLAB sisältää sisäänrakennetut funktiot lineaariselle algebralle (LAPACK, BLAS), nopealle Fourier-muunnokselle (FFTW), funktioita polynomien kanssa työskentelyyn, perustilastojen funktioita ja differentiaaliyhtälöiden numeerista ratkaisua; laajennetut matemaattiset kirjastot Intel MKL:lle. Asiantuntijat ovat suunnitelleet ja optimoineet kaikki MATLAB-ytimen sisäänrakennetut toiminnot toimimaan nopeammin tai samalla tavalla kuin vastaavat C / C ++ -toiminnot.

Kielen kuvaus

MATLAB on korkean tason ohjelmointikieli, joka sisältää matriisipohjaisia ​​tietorakenteita, laajan valikoiman toimintoja, integroidun kehitysympäristön, oliopohjaisia ​​ominaisuuksia ja rajapintoja muilla ohjelmointikielillä kirjoitettuihin ohjelmiin.

MATLABissa on kahdenlaisia ​​ohjelmia - funktioita ja komentosarjoja. Funktioilla on tulo- ja lähtöargumentit sekä oma työtila välilaskennan tulosten ja muuttujien tallentamiseen. Skripteillä on yhteinen työtila. Sekä skriptejä että toimintoja ei tulkita konekoodiksi, vaan ne tallennetaan tekstitiedostoina. On myös mahdollista tallentaa ns. valmiiksi jäsennetyt ohjelmat - funktiot ja komentosarjat, jotka on käsitelty koneen suorittamista varten sopivassa muodossa. Yleensä tällaiset ohjelmat toimivat tavallista nopeammin.

MATLAB-kielen pääominaisuus on sen laajat mahdollisuudet työskennellä matriisien kanssa, jotka kielen luojat ilmaisivat iskulauseella Think vectorized.

Matematiikka ja tietojenkäsittely

MATLAB tarjoaa käyttäjälle suuren määrän (useita satoja) toimintoja tietojen analysointiin, ja se kattaa lähes kaikki matematiikan osa-alueet, erityisesti:
Matriisit ja lineaarinen algebra - matriisialgebra, lineaariyhtälöt, ominaisarvot ja vektorit, singulariteetit, matriisitekijät ja muut.
Polynomit ja interpolointi - polynomien juuret, polynomien operaatiot ja niiden differentiointi, käyrien interpolointi ja ekstrapolointi ja muut.
Matemaattiset tilastot ja tietojen analysointi - tilastofunktiot, tilastollinen regressio, digitaalinen suodatus, nopea Fourier-muunnos ja muut.
Tiedonkäsittely - joukko erikoistoimintoja, mukaan lukien piirtäminen, optimointi, nollien etsiminen, numeerinen integrointi (kvadratuureissa) ja muut.
Differentiaaliyhtälöt - ratkaista differentiaali- ja differentiaalialgebralliset yhtälöt, differentiaaliyhtälöt viiveellä, yhtälöt rajoituksilla, osittaiset differentiaaliyhtälöt ja muut.
Harvat matriisit ovat erityinen MATLAB-tietoluokka, jota käytetään erikoissovelluksissa.
Kokonaislukuaritmetiikka - Suorittaa kokonaislukuaritmeettisia operaatioita MATLAB-ympäristössä.


Algoritmin kehittäminen

MATLAB tarjoaa käteviä työkaluja algoritmien kehittämiseen, mukaan lukien korkean tason algoritmit, joissa käytetään olioohjelmointikonsepteja. Se sisältää kaikki tarvittavat IDE-työkalut, mukaan lukien debuggeri ja profilointi. Kokonaislukutietotyyppien kanssa työskentelyn toiminnot helpottavat algoritmien luomista mikro-ohjaimille ja muille sovelluksille tarvittaessa.


Tietojen visualisointi

MATLAB-paketti sisältää suuren määrän toimintoja kaavioiden piirtämiseen, mukaan lukien kolmiulotteiset, visuaalisen datan analysointiin ja animoitujen videoiden luomiseen.

Sisäänrakennetun kehitysympäristön avulla voit luoda graafisia käyttöliittymiä erilaisilla säätimillä, kuten painikkeilla, syöttökentillä ja muilla. MATLAB Compiler -komponentin avulla nämä graafiset rajapinnat voidaan muuntaa erillisiksi sovelluksiksi.


Ulkoiset rajapinnat

MATLAB-paketti sisältää erilaisia ​​rajapintoja, joilla päästään käsiksi ulkoisiin rutiineihin, jotka on kirjoitettu muilla ohjelmointikielillä, dataa, asiakkaita ja palvelimia, jotka kommunikoivat Component Object Model tai Dynamic Data Exchange -tekniikoiden kautta sekä oheislaitteita, jotka kommunikoivat suoraan MATLABin kanssa. Monet näistä ominaisuuksista tunnetaan MATLAB API:na.


COM

MATLAB-paketti tarjoaa pääsyn toimintoihin, joiden avulla voit luoda, käsitellä ja poistaa COM-objekteja (sekä asiakkaita että palvelimia). Myös ActiveX-tekniikkaa tuetaan. Kaikki COM-objektit kuuluvat MATLAB-paketin erityiseen COM-luokkaan. Kaikki ohjelmat, joissa on automaatioohjaintoimintoja, voivat käyttää MATLABia automaatiopalvelimena.


DDE

MATLAB-paketti sisältää toimintoja, joiden avulla se voi käyttää muita Windows-ympäristön sovelluksia sekä näitä sovelluksia päästäkseen MATLAB-dataan Dynamic Data Exchange (DDE) -tekniikan avulla. Jokaisella sovelluksella, joka voi olla DDE-palvelin, on oma yksilöllinen tunnistenimi. MATLABille tämä nimi on Matlab.


Web palvelut

MATLAB tarjoaa mahdollisuuden kutsua verkkopalveluiden menetelmiä. Erikoisfunktio luo luokan verkkopalvelun API:n menetelmien perusteella.

Matlab on vuorovaikutuksessa verkkopalvelun asiakkaan kanssa vastaanottamalla häneltä paketteja, käsittelemällä ne ja lähettämällä vastauksen. Seuraavia tekniikoita tuetaan: Simple Object Access Protocol (SOAP) ja Web Services Description Language (WSDL).


COM-portti

MATLAB-sarjaportin käyttöliittymä tarjoaa suoran pääsyn oheislaitteisiin, kuten modeemeihin, tulostimiin ja tieteellisiin laitteisiin, jotka yhdistetään tietokoneeseen sarjaportin (COM-portin) kautta. Käyttöliittymä toimii luomalla erikoisluokan objektin sarjaportille. Tämän luokan käytettävissä olevat menetelmät mahdollistavat tietojen lukemisen ja kirjoittamisen sarjaporttiin, tapahtumien ja tapahtumakäsittelijöiden käytön sekä tietojen kirjoittamisen tietokoneen levylle reaaliajassa. Tästä on hyötyä kokeissa, reaaliaikaisissa simulaatioissa ja muissa sovelluksissa.


MEX-tiedostot

MATLAB-paketti sisältää käyttöliittymän vuorovaikutukseen ulkoisten C- ja Fortran-kielillä kirjoitettujen sovellusten kanssa. Tämä vuorovaikutus suoritetaan MEX-tiedostojen kautta. C- tai Fortran-kielellä kirjoitettuja alirutiineja voidaan kutsua MATLABista ikään kuin ne olisivat paketin sisäänrakennettuja toimintoja. MEX-tiedostot ovat dynaamisia linkkikirjastoja, jotka MATLABiin sisäänrakennettu tulkki voi ladata ja suorittaa.


DLL

MATLABin yleisen DLL-rajapinnan avulla voit kutsua tavallisista dynaamisista linkkikirjastoista löytyviä toimintoja suoraan MATLABista. Näillä toiminnoilla on oltava C-liitäntä.

Lisäksi MATLABilla on mahdollisuus käyttää sisäänrakennettuja toimintojaan C-rajapinnan kautta, mikä mahdollistaa paketin toimintojen käytön ulkoisissa C-kielellä kirjoitetuissa sovelluksissa. Tätä tekniikkaa kutsutaan MATLABissa C Engineksi.


Työkalusarjat

MATLABille on mahdollista luoda erikoistyökaluja, jotka laajentavat sen toimintoja. Työkalusarjat ovat funktiokokoelmia, jotka on kirjoitettu MATLABissa tietyn luokan ongelmien ratkaisemiseksi. Mathworks toimittaa työkalupakkeja, joita käytetään monilla aloilla, mukaan lukien seuraavat:
Signaalien, kuvien ja tietojen digitaalinen käsittely: DSP Toolbox, Image Processing Toolbox, Wavelet Toolbox, Communication Toolbox, Filter Design Toolbox - toimintosarja, jonka avulla voit ratkaista monenlaisia ​​ongelmia signaalinkäsittelyssä, kuvissa, digitaalisten suodattimien suunnittelussa ja viestintäjärjestelmät.
Ohjausjärjestelmät: Control Systems Toolbox, µ-analyysi- ja synteesityökalut, Robust Control Toolbox, System Identification Toolbox, LMI Control Toolbox, Model Predictive Control Toolbox, Model-Based Calibration Toolbox – toimintosarjat, jotka helpottavat dynaamisten järjestelmien analysointia ja synteesiä, ohjausjärjestelmien suunnittelu, mallintaminen ja tunnistaminen, mukaan lukien nykyaikaiset ohjausalgoritmit, kuten vankka ohjaus, H∞-ohjaus, LMN-synteesi, µ-synteesi ja muut.
Talousanalyysi: GARCH Toolbox, Fixed Income Toolbox, Financial Time Series Toolbox, Financial Derivatives Toolbox, Financial Toolbox, Datafeed Toolbox – toimintosarjat, joiden avulla voit nopeasti ja tehokkaasti kerätä, käsitellä ja siirtää erilaisia ​​taloudellisia tietoja.
Maantieteellisten karttojen analyysi ja synteesi, mukaan lukien kolmiulotteiset: Mapping Toolbox.
Kokeellisten tietojen kerääminen ja analysointi: Data Acquisition Toolbox, Image Acquisition Toolbox, Instrument Control Toolbox, Link for Code Composer Studio - toimintosarjat, joiden avulla voit tallentaa ja käsitellä kokeiden aikana saatuja tietoja, myös reaaliajassa. Laaja valikoima tieteellisiä ja teknisiä mittauslaitteita tuetaan.
Datan visualisointi ja esittäminen: Virtual Reality Toolbox - mahdollistaa interaktiivisten maailmojen luomisen ja tieteellisen tiedon visualisoinnin käyttämällä vja VRML:ää.
Kehitystyökalut: MATLAB Builder for COM, MATLAB Builder for Excel, MATLAB Compiler, Filter Design HDL Coder - toimintosarjat, joiden avulla voit luoda itsenäisiä sovelluksia MATLAB-ympäristöstä.
Vuorovaikutus ulkoisten ohjelmistotuotteiden kanssa: MATLAB Report Generator, Excel Link, Database Toolbox, MATLAB Web Server, Link for ModelSim - toimintosarjat, joiden avulla voit tallentaa tietoja eri muodoissa, jotta muut ohjelmat voivat toimia niiden kanssa.
Tietokannat: Database Toolbox - työkalut tietokantojen käsittelyyn.
Tieteelliset ja matemaattiset paketit: Bioinformatic Toolbox, Curve Fitting Toolbox, Fixed-Point Toolbox, Fuzzy Logic Toolbox, Genetic Algorithm and Direct Search Toolbox, OPC Toolbox, Optimization Toolbox, Partial Differential Equation Toolbox, Spline Toolbox, Statistics Toolbox, RF Toolbox - sarjat erikoistuneet matemaattiset toiminnot, jotka mahdollistavat monenlaisten tieteellisten ja teknisten ongelmien ratkaisemisen, mukaan lukien geneettisten algoritmien kehittäminen, ongelmien ratkaiseminen osittaisina derivaattaina, kokonaislukuongelmat, järjestelmän optimointi ja muut.
Neural Networks: Neural Network Toolbox - Työkalut hermoverkkojen synteesiin ja analysointiin.
Symbolic Math Toolbox Symbolic Math Toolbox - Symboliset laskentatyökalut, joissa on kyky olla vuorovaikutuksessa symbolisen Maple-ohjelman kanssa.

Yllämainittujen lisäksi on olemassa tuhansia muita MATLAB-työkalusarjoja, jotka ovat kirjoittaneet muut yritykset ja harrastajat.

). Kemometriassa käytettävistä yleiskäyttöisistä työkaluista MatLab-paketti on erityisen tärkeällä sijalla. Sen suosio on erittäin korkea. Tämä johtuu siitä, että MatLab on tehokas ja moniulotteinen tiedonkäsittely. Pakkauksen rakenne tekee siitä kätevän työkalun matriisilaskelmien suorittamiseen. MatLabin avulla tutkittavien ongelmien kirjo kattaa: matriisianalyysin, signaalin ja kuvankäsittelyn, hermoverkot ja monet muut. MatLab on korkeatasoinen avoimen lähdekoodin kieli, jonka avulla kokeneet käyttäjät voivat ymmärtää ohjelmoituja algoritmeja. Yksinkertainen sisäänrakennettu ohjelmointikieli tekee omien algoritmien luomisesta helppoa. Useiden vuosien MatLabin käytön aikana on luotu valtava määrä toimintoja ja ToolBoxia (erikoistyökalupaketteja). Suosituin on Eigenvector Research, Inc:n PLS ToolBox.

1. Perustiedot

1.1. MatLab työympäristö

Käynnistä ohjelma kaksoisnapsauttamalla kuvaketta. Kuvassa näkyvä työympäristö avautuu edessäsi.

Työympäristö MatLab 6.x hieman erilainen kuin aikaisempien versioiden työympäristö, siinä on kätevämpi käyttöliittymä monien apuelementtien käyttämiseen

Työympäristö MatLab 6.x sisältää seuraavat elementit:

    työkalurivi painikkeilla ja avattavalla luettelolla;

    Käynnistä Pad-välilehtiikkuna ja Työtila josta pääset käsiksi erilaisiin ToolBox-moduuleihin ja työtilan sisältöön;

    välilehtiikkuna Komentohistoria ja Nykyinen hakemisto, tarkoitettu aiemmin syötettyjen komentojen katseluun ja palauttamiseen sekä nykyisen hakemiston asettamiseen;

    komentoikkuna, joka sisältää kehotteen "ja vilkkuvan pystysuoran kohdistimen;

    tilapalkki.

Jos työympäristössä MatLab 6.x jotkin kuvassa näkyvät ikkunat puuttuvat, valitse sitten sopivat kohteet Näytä-valikosta: Komento-ikkuna, Komentohistoria, Nykyinen hakemisto, Workspase, Launch Pad.

Komennot tulee kirjoittaa komentoikkunaan. Sinun ei tarvitse kirjoittaa "merkkiä" osoittaaksesi komentorivikehotteen. Työalueen tarkastelemiseen on kätevää käyttää vierityspalkkeja tai Koti-, Lopetus-näppäimiä liikkuaksesi vasemmalle tai oikealle ja PageUp-, PageDown-näppäimiä liikkuaksesi ylös tai alas. Jos yhtäkkiä, kun olet liikkunut komentoikkunan työalueella, komentorivi vilkkuvalla kohdistimella katosi, paina vain Enter.

On tärkeää muistaa, että minkä tahansa komennon tai lausekkeen joukon on päätettävä Enter-näppäintä, jotta MatLab voi suorittaa tämän komennon tai laskea lausekkeen.

1.2. Yksinkertaisimmat laskelmat

Kirjoita komentoriville 1 + 2 ja paina Enter. Tämän seurauksena MatLab-komentoikkunassa näkyy seuraava:

Riisi. 2 Graafinen esitys pääkomponenttianalyysistä

Mitä MatLab teki? Ensin hän laski summan 1 + 2, kirjoitti sitten tuloksen erikoismuuttujaan ans ja tulosti sen arvon, joka on yhtä suuri kuin 3, komentoikkunaan. Vastauksen alla on komentorivi, jossa on vilkkuva kohdistin, joka osoittaa, että MatLab on valmis lisälaskelmia varten. Voit kirjoittaa uusia lausekkeita komentoriville ja löytää niiden arvot. Jos haluat jatkaa työskentelyä edellisen lausekkeen kanssa, esimerkiksi laskea (1 + 2) /4.5, niin helpoin tapa on käyttää jo olemassa olevaa tulosta, joka tallennetaan ans-muuttujaan. Kirjoita ans / 4.5 (desimaalilukuja syötettäessä käytetään pistettä) ja paina Tulla sisään, käy ilmi

Riisi. 3 Graafinen esitys pääkomponenttianalyysistä

1.3. Kaiku käskyt

Jokainen komennon suoritus MatLabissa kaiutetaan. Yllä olevassa esimerkissä tämä on vastaus ans = 0,6667. Usein kaiku vaikeuttaa ohjelman toiminnan havaitsemista ja sitten se voidaan sammuttaa. Tätä varten komennon tulee päättyä puolipisteeseen. Esimerkiksi

Riisi. 4 Esimerkki ScoresPCA-funktion syöttämisestä

1.4 Työympäristön säilyttäminen. MAT-tiedostot

Helpoin tapa tallentaa kaikki muuttujien arvot on käyttää Tiedosto-valikon kohtaa Tallenna työalue nimellä. Näyttöön tulee Save Workspase Variables -valintaikkuna, jossa sinun on määritettävä hakemisto ja tiedostonimi. Oletuksena on suositeltavaa tallentaa tiedosto MatLabin päähakemiston työalihakemistoon. Ohjelma tallentaa työn tulokset tiedostoon, jonka tunniste on matto. Nyt voit sulkea MatLabin. Palauta muuttujien arvot seuraavassa istunnossa avaamalla tämä tallennettu tiedosto Tiedosto-valikon Avaa-alikohdalla. Nyt kaikki edellisessä istunnossa määritellyt muuttujat ovat taas käytettävissä. Niitä voidaan käyttää juuri syötetyissä komennoissa.

1.5. Aikakauslehti

MatLabilla on kyky kirjoittaa suoritettavia komentoja ja tuloksia tekstitiedostoon (pidä työpäiväkirjaa), jotka voidaan sitten lukea tai tulostaa tekstieditorista. Aloita kirjaaminen käyttämällä komentoa päiväkirja... Komennon argumenttina päiväkirja sinun on määritettävä sen tiedoston nimi, johon työloki tallennetaan. Edelleen kirjoitetut komennot ja niiden suorituksen tulokset kirjoitetaan tähän tiedostoon, esimerkiksi komentosarja

suorittaa seuraavat toiminnot:

    avaa lokin tiedostossa exampl-1.txt;

    suorittaa laskelmia;

    tallentaa kaikki muuttujat MAT-tiedostoon work-1.mat;

    tallentaa lokin tiedostoon exampl-1.txt MatLabin juurihakemiston työalihakemistoon ja sulkee MatLabin;

Katso tiedoston exampl-1.txt sisältöä tekstieditorissa. Tiedosto sisältää seuraavan tekstin:

a1 = 3;
a2 = 2,5;
a3 = a1 + a2

Tallenna työ-1
lopettaa

1.6. Apujärjestelmä

MatLabin ohjeikkuna tulee näkyviin, kun olet valinnut Ohje-valikosta Ohje-ikkunan tai napsauttamalla työkalupalkin kysymyspainiketta. Sama toiminto voidaan suorittaa kirjoittamalla komento helpwin... Näytä yksittäisten osien ohjeikkuna kirjoittamalla helpwin aihe... Ohje-ikkuna tarjoaa samat tiedot kuin ohjekomento, mutta ikkunallinen käyttöliittymä tarjoaa kätevämpiä linkkejä muihin ohjeaiheisiin. Käyttämällä Math Works -verkkosivuston osoitetta voit kirjautua yrityksen palvelimelle ja saada viimeisimmät tiedot kysymyksiisi. Voit tutustua uusiin ohjelmistotuotteisiin tai löytää vastauksen ongelmiisi teknisen tuen sivulta.

2. Matriisit

2.1. Skalaarit, vektorit ja matriisit

MatLabissa voidaan käyttää skalaareja, vektoreita ja matriiseja. Skalaarin syöttämiseen riittää, että annat sen arvon esimerkiksi jollekin muuttujalle

Huomaa, että MatLab erottaa isot ja pienet kirjaimet, joten p ja P ovat eri muuttujia. Jos haluat syöttää taulukoita (vektoreita tai matriiseja), niiden elementit on suljettu hakasulkeisiin. Joten syöttääksesi 1 × 3 rivivektorin käytä seuraavaa komentoa, jossa rivin elementit erotetaan välilyönneillä tai pilkuilla.

Kun syötät sarakevektorin, erota kohteet puolipisteellä. Esimerkiksi,

Pienikokoisia matriiseja on kätevä syöttää suoraan komentoriviltä. Kun kirjoitat, matriisia voidaan pitää sarakevektorina, jonka jokainen elementti on rivivektori.

tai matriisia voidaan pitää rivivektorina, jonka jokainen elementti on sarakevektori.

2.2. Elementtien käyttö

Matriisielementteihin päästään käyttämällä kahta indeksiä - rivi- ja sarakenumeroita, jotka on suljettu suluissa, esimerkiksi komento B (2,3) palauttaa matriisin B toisen rivin ja kolmannen sarakkeen elementin. Jos haluat valita sarakkeen tai rivin matriisista, käytä matriisin sarakkeen tai rivin numeroa yhtenä indeksistä ja korvaa toinen indeksi kaksoispisteellä. Esimerkiksi matriisin A toinen rivi kirjoitetaan vektoriin z

Voit myös korostaa matriisilohkoja kaksoispisteellä. Valitse esimerkiksi matriisista P värillä merkitty lohko

Jos haluat tarkastella työympäristön muuttujia, sinun on kirjoitettava komentoriville komento kuka .

Näet, että työtila sisältää yhden skalaarin (p), neljä matriisia (A, B, P, P1) ja rivivektorin (z).

2.3. Perusmatriisioperaatiot

Matriisioperaatioita käytettäessä tulee muistaa, että yhteen- tai vähennyslaskua varten matriisien tulee olla samankokoisia ja kertomalla ensimmäisen matriisin sarakkeiden lukumäärän tulee olla yhtä suuri kuin toisen matriisin rivien lukumäärä. Matriisien sekä lukujen ja vektorien yhteen- ja vähennyslasku suoritetaan plus- ja miinusmerkeillä

ja kertolasku on merkitty tähdellä *. Ota käyttöön 3 × 2 -matriisi

Matriisin kertominen numerolla suoritetaan myös tähdellä, ja voit kertoa numerolla sekä oikealla että vasemmalla. Neliömatriisi nostetaan kokonaislukupotenssiin käyttämällä operaattoria ^

Tarkista tuloksesi kertomalla P-matriisi itsellään.

2.4. Erityismatriisien luominen

Suorakaiteen muotoisen matriisin täyttö nolilla tehdään sisäänrakennetulla toiminnolla nollia

Identiteettimatriisi luodaan funktiolla silmä

Funktion kutsumisen tuloksena muodostuu ykkösistä koostuva matriisi yhdet

MatLab tarjoaa mahdollisuuden täyttää matriiseja satunnaisluvuilla. Toiminnon tulos rand on nollan ja yhden välillä tasaisesti jakautuneiden lukujen ja funktioiden matriisi randn- normaalin lain mukaan jakautuneiden lukujen matriisi nollakeskiarvolla ja yksikkövarianssilla.

Toiminto diag muodostaa vektorista diagonaalimatriisin järjestämällä elementtejä vinottain.

2.5. Matriisilaskelmat

MatLab sisältää monia erilaisia ​​toimintoja matriisien kanssa työskentelyyn. Joten esimerkiksi matriisi transponoidaan heittomerkillä "

Käänteinen matriisi löytyy funktion avulla lasku neliömatriiseille

3. MatLabin ja Excelin integrointi

MatLabin ja Excelin integraatio antaa Excel-käyttäjälle mahdollisuuden käyttää lukuisia MatLab-toimintoja tietojen käsittelyyn, erilaisiin laskelmiin ja tuloksen visualisointiin. Excllink.xla-apuohjelma toteuttaa tämän Excelin parannuksen. MatLabin ja Excelin välistä kommunikaatiota varten on määritelty erityisfunktioita.

3.1. Excelin määrittäminen

Ennen kuin määrität Excelin toimimaan yhdessä MatLabin kanssa, varmista, että Excel Link on sisällytetty MatLabin asennettuun versioon. Excllink.xla-lisäosatiedoston tulee sijaita MatLabin päähakemiston exclink-alihakemistossa tai toolbox-alihakemistossa. Käynnistä Excel ja valitse Työkalut-valikosta Apuohjelmat. Näyttöön tulee valintaikkuna, joka sisältää tietoja tällä hetkellä saatavilla olevista lisäosista. Selaa-painikkeella voit määrittää polun excllink.xla-tiedostoon. Rivi tulee näkyviin valintaikkunan lisäosien luetteloon Excel Link 2.0 käytettäväksi MatLabin kanssa lipun kanssa. Napsauta OK, tarvittava apuohjelma on lisätty Exceliin.

Huomaa, että Excelissä on nyt Excel Link -työkalurivi, joka sisältää kolme painiketta: putmatrix, getmatrix, evalstring. Näillä painikkeilla toteutetaan Excelin ja MatLabin välisen suhteen toteuttamiseen tarvittavat päätoiminnot - matriisitietojen vaihto ja MatLab-komentojen suorittaminen Excel-ympäristöstä. Kun Excel käynnistyy uudelleen, excllink.xla-apuohjelma yhdistetään automaattisesti.

Excelin ja MatLabin koordinoitu työ vaatii vielä muutamia asetuksia, jotka hyväksytään Excelissä oletuksena (mutta voidaan muuttaa). Valitse Työkalut-valikosta Asetukset, Asetukset-valintaikkuna avautuu. Valitse Yleiset-välilehti ja varmista, että R1C1-viittaustyylilippu on pois päältä, ts. solut on numeroitu A1, A2 jne. Muokkaa-välilehdellä Siirrä valinta Enter jälkeen -lippu on asetettava.

3.2. Tiedonvaihto MatLabin ja Excelin välillä

Käynnistä Excel, tarkista, että kaikki tarvittavat asetukset on tehty edellisessä osiossa kuvatulla tavalla (MatLab on suljettava). Syötä matriisi soluihin A1–C3, erota desimaalit pisteellä Excelin vaatimusten mukaisesti.

Valitse taulukon solutiedot ja paina putmatrix-painiketta, jolloin näkyviin tulee Excel-ikkuna, jossa varoitetaan, että MatLab ei ole käynnissä. Napsauta OK ja odota, että MatLab avautuu.

Näkyviin tulee Excel-valintaikkuna, jossa on syöttörivi, jonka tarkoitus on määrittää MatLab-työympäristön muuttujan nimi, johon valituista Excel-soluista tiedot viedään. Syötä esimerkiksi M ja sulje ikkuna OK-painikkeella. Mene MatLab-komentoikkunaan ja varmista, että tuotantoympäristöön on luotu muuttuja M, joka sisältää kolme kertaa kolme -taulukon:

Tee joitain operaatioita MatLabissa matriisilla M, esimerkiksi käännä se.

Soittaa puhelimella lasku matriisin kääntämiseksi, kuten minkä tahansa muun MatLab-komennon, voit suorittaa suoraan Excelistä. Excel Link -paneelissa olevan evalstring-painikkeen painaminen johtaa valintaikkunaan, jonka syöttöriville tulee kirjoittaa MatLab-komento

IM = lasku (M).

Tulos on samanlainen kuin suoritettaessa komento MatLab-ympäristössä.

Palaa Exceliin, tee solusta A5 nykyinen ja napsauta getmatrix-painiketta. Näyttöön tulee valintaikkuna, jossa on syöttörivi, jossa sinua pyydetään syöttämään Exceliin tuotavan muuttujan nimi. Tässä tapauksessa tämä muuttuja on IM. Napsauta OK, solut A5–A7 täytetään käänteismatriisielementeillä.

Joten viedäksesi matriisin MatLabiin, sinun tulee valita sopivat Excel-taulukon solut ja tuontia varten riittää, että määrität yhden solun, joka on tuodun taulukon vasen yläelementti. Loput elementit kirjoitetaan taulukon soluihin taulukon koon mukaan ylikirjoittaen niiden sisältämät tiedot, joten taulukoita tuodessasi kannattaa olla varovainen.

Yllä oleva lähestymistapa on yksinkertaisin tapa vaihtaa tietoa sovellusten välillä - alkuperäiset tiedot sisällytetään Exceliin, viedään sitten MatLabiin, käsitellään siellä jollain tavalla ja tulos tuodaan Exceliin. Käyttäjä siirtää tietoja Excel Link -työkalupalkin painikkeilla. Tieto voidaan esittää matriisin muodossa, ts. laskentataulukon suorakaiteen muotoinen alue. Riville tai sarakkeelle järjestetyt solut viedään MatLabin rivivektoreihin ja sarakevektoreihin, vastaavasti. Rivivektorien ja sarakevektorien tuonti Exceliin toimii samalla tavalla.

4. Ohjelmointi

4.1. M-tiedostot

MatLab-komentoriviltä työskentely on vaikeaa, jos sinun on syötettävä paljon komentoja ja vaihdettava niitä usein. Päiväkirjan pitäminen käskyllä päiväkirja ja työympäristön säilyttäminen helpottaa työtä hieman. Kätevin tapa suorittaa MatLab-komentoryhmiä on käyttää M-tiedostoja, joihin voit kirjoittaa komentoja, suorittaa ne kaikki kerralla tai osissa, tallentaa ne tiedostoon ja käyttää niitä myöhemmin. M-file-editori on tarkoitettu työskentelyyn M-filesin kanssa. Sen avulla voit luoda omia toimintoja ja kutsua niitä, myös komentoikkunasta.

Avaa MatLabin pääikkunan Tiedosto-valikko ja valitse Uusi-kohdasta M-file-alikohta. Uusi tiedosto avautuu M-file-editori-ikkunaan, joka näkyy kuvassa.

MatLabissa on kahden tyyppisiä M-tiedostoja: ohjelmatiedosto ( Käsikirjoitus M-Files) sisältää joukon komentoja ja tiedostotoimintoja ( Toiminto M-Files), jotka kuvaavat käyttäjän määrittämiä toimintoja.

4.2. Tiedosto-ohjelma

Kirjoita editoriin komennot, jotka johtavat kahden kaavion rakentamiseen yhteen grafiikkaikkunaan

Tallenna nyt tiedosto mydemo.m MatLabin päähakemiston työalihakemistoon valitsemalla editorin Tiedosto-valikosta Tallenna nimellä. Jos haluat suorittaa kaikki tiedoston sisältämät komennot suoritettavaksi, valitse Viankorjaus-valikosta Suorita. Näytölle tulee graafinen ikkuna. Kuvio 1 sisältää funktiokaavioita.

Tiedostoohjelman komennot tulostuvat komentoikkunaan. Voit estää tulostuksen lopettamalla komennot puolipisteellä. Jos kirjoitettaessa tapahtuu virhe ja MatLab ei tunnista komentoa, komennot suoritetaan väärin kirjoitettuun asti, jonka jälkeen komentoikkunaan tulee virheilmoitus.

Erittäin kätevä M-file-editorin tarjoama ominaisuus on komentojen osan suorittaminen. Sulje grafiikkaikkuna Kuvio 1... Valitse hiirellä samalla kun pidät vasenta painiketta painettuna tai nuolinäppäimillä samalla kun pidät alhaalla Siirtää, neljä ensimmäistä komentoa ja suorita ne Teksti-kohdasta. Huomaa, että grafiikkaikkunassa näkyy vain yksi kaavio, joka vastaa suoritettuja komentoja. Muista, että suorittaaksesi joitain komentoja valitse ne ja paina F9-näppäintä.

M-tiedoston yksittäisiin lohkoihin voidaan lisätä kommentteja, jotka ohitetaan suorituksen aikana, mutta ovat käteviä M-tiedoston kanssa työskennellessä. Kommentit alkavat prosenttimerkillä ja korostetaan automaattisesti vihreällä, esimerkiksi:

Olemassa oleva M-tiedosto avataan työympäristön Tiedosto-valikon Avaa-kohdalla tai M-file-editorilla.

4.3. Tiedostotoiminto

Yllä oleva tiedosto-ohjelma on vain sarja MatLab-komentoja, sillä ei ole tulo- ja lähtöargumentteja. Jotta voit käyttää numeerisia menetelmiä ja ohjelmoida omia sovelluksiasi MatLabissa, sinun tulee osata muodostaa tiedostofunktioita, jotka suorittavat tarvittavat toiminnot syöttöargumenteilla ja palauttavat toiminnon tuloksen lähtöargumentteina. Katsotaanpa muutamia yksinkertaisia ​​esimerkkejä, jotka auttavat sinua ymmärtämään, kuinka tiedostotoimintoja käytetään.

Keskittämistä käytetään usein monimuuttujakemometrisen analyysitietojen esikäsittelyssä. On järkevää kirjoittaa tiedostofunktio kerran ja kutsua sitä sitten missä tahansa on tarpeen keskittää. Avaa uusi tiedosto M-file-editorissa ja kirjoita

Ensimmäisellä rivillä oleva sanafunktio määrittää, että tämä tiedosto sisältää funktiotiedoston. Ensimmäinen rivi on funktion otsikko, joka sisältää funktion nimen sekä luettelon tulo- ja lähtöargumenteista. Esimerkissä funktion nimi on keskitys, yksi tuloargumentti on X ja yksi lähtö on Xc. Otsikon jälkeen seuraavat kommentit ja sitten funktion runko (tässä esimerkissä se koostuu kahdesta rivistä), jossa sen arvo lasketaan. On tärkeää, että laskettu arvo kirjoitetaan Xc:hen. Muista lisätä puolipiste, jotta tarpeettomia tietoja ei näytetä näytöllä. Tallenna nyt tiedosto työhakemistoosi. Huomaa, että valitsemalla Tiedosto-valikosta Tallenna tai Tallenna nimellä avautuu tiedoston tallennus -valintaikkuna, jonka Tiedostonimi-kentässä on jo nimen keskitys. Älä muuta sitä, vaan tallenna funktiotiedosto tiedostoon ehdotetulla nimellä!

Nyt luotua toimintoa voidaan käyttää samalla tavalla kuin sisäänrakennettua sin, cos ja muita. Omia toimintoja voidaan kutsua ohjelmatiedostosta ja toisesta tiedostofunktiosta. Yritä kirjoittaa itse tiedostofunktio, joka skaalaa matriiseja, ts. jaa jokainen sarake kyseisen sarakkeen keskihajonnalla.

Voit kirjoittaa funktiotiedoston, jossa on useita syöttöargumentteja, jotka sijoitetaan pilkuilla erotettuun luetteloon. Voit myös luoda funktioita, jotka palauttavat useita arvoja. Tätä varten tulosargumentit lisätään pilkuilla eroteltuina lähtöargumenttien luetteloon, ja itse luettelo on suljettu hakasulkeisiin. Hyvä esimerkki on funktio, joka muuntaa ajan sekunneissa tunneiksi, minuutteiksi ja sekunneiksi.

Kutsuttaessa tiedostofunktioita, joissa on useita lähtöargumentteja, tulos tulee kirjoittaa vastaavanpituiseen vektoriin.

4.4 Aikataulun luominen

MatLabissa on runsaasti mahdollisuuksia vektorien ja matriisien piirtämiseen sekä kommenttien luomiseen ja kaavioiden tulostamiseen. Kuvataan useita tärkeitä graafisia toimintoja.

Toiminto juoni syöteparametreihin liittyy erilaisia ​​muotoja, esimerkiksi plot (y) luo paloittain lineaarisen graafin y-elementtien riippuvuudesta indekseihinsä. Jos argumentteina annetaan kaksi vektoria, kaavio (x, y) piirtää y:n funktiona x. Jos haluat esimerkiksi piirtää syntifunktion välillä 0 - 2π, toimi seuraavasti

Ohjelma on rakentanut riippuvuuskaavion, joka näkyy ikkunassa Kuvio 1

MatLab määrittää automaattisesti oman värinsä jokaiselle kaaviolle (paitsi silloin, kun käyttäjä tekee sen), mikä mahdollistaa tietojoukon erottamisen.

Komento pidä kiinni voit lisätä käyriä olemassa olevaan kuvaajaan. Toiminto sivujuoni voit näyttää useita kaavioita yhdessä ikkunassa

4.5 Kaavioiden tulostaminen

Tiedosto-valikon Tulosta-kohta ja komento Tulosta tulosta MatLab-grafiikka. Tulosta-valikko tuo esiin valintaikkunan, josta voit valita yleisiä vakiotulostusasetuksia. Komento Tulosta tarjoaa enemmän joustavuutta tulosteen tulostuksessa ja mahdollistaa tulostuksen ohjauksen M-tiedostoista. Tulos voidaan lähettää suoraan oletustulostimelle tai tallentaa määritettyyn tiedostoon.

5. Esimerkkiohjelmat

Tässä osiossa luetellaan yleisimmät moniulotteisen tiedon analysoinnissa käytetyt algoritmit. Tarkastellaan ovat sekä yksinkertaisimmat menetelmät tietojen muuntamiseen, keskittämiseen ja skaalaukseen että data-analyysin algoritmeja - PCA, PLS.

5.1. Keskitys ja skaalaus

Analyysi vaatii usein alkuperäisten tietojen muuntamista. Yleisimmin käytetyt datan muunnosmenetelmät ovat kunkin muuttujan keskittäminen ja skaalaus keskihajonnan mukaan. Matriisin keskittämisen funktion koodissa annettiin. Siksi alla näytetään vain funktion koodi, joka vaa'at tiedot. Huomaa, että alkuperäinen matriisi on keskitettävä

funktio Xs = skaalaus (X)
% skaalaus: lähtömatriisi on Xs
% matriisi X on keskitettävä

Xs = X * inv (diag (std (X)));

% skaalaus päättyy

5.2. SVD / PCA

Suosituin menetelmä tietojen pakkaamiseen monimuuttujaanalyysissä on pääkomponenttianalyysi (PCA). Matemaattisesti PCA on alkuperäisen matriisin hajotus X, eli sen esitys kahden matriisin tulona T ja P

X = TP t + E

Matriisi T kutsutaan pistematriisiksi, matriisia kutsutaan jäännösmatriisiksi.

Yksinkertaisin tapa löytää matriiseja T ja P- käytä SVD-hajoamista tavallisen MatLab-toiminnon kautta svd .

funktio = pcasvd (X)

Svd (X);
T = U*D;
P = V;

pcasvd:n loppu %

5.3 PCA / NIPALS

PCA-tilien ja -kuormien rakentamiseen käytetään toistuvaa algoritmia NIPALS, joka laskee yhden komponentin jokaisessa vaiheessa. Alkuperäinen matriisi ensin X muunnetaan (ainakin - keskitetään; katso) ja muuttuu matriisiksi E 0 , a= 0. Sitten käytetään seuraavaa algoritmia.

t 2. p t = t t Ea / t t t 3. p = p / (p t p) ½ 4. t = Ea p / p t p 5. Tarkista konvergenssi, jos ei, siirry kohtaan 2

Kun olet laskenut seuraavan ( a th) komponentit, oletamme ta=t ja pa=p E a+1 = Eat p a päällä a+1.

NIPALS-algoritmin koodin voivat kirjoittaa lukijat itse, tässä opetusohjelmassa kirjoittajat kertovat oman versionsa. PCA:ta laskettaessa voit syöttää pääkomponenttien määrän (muuttuva numeroPC). Jos et tiedä kuinka monta komponenttia tarvitaan, kirjoita komentoriville = pcanipals (X) ja sitten ohjelma asettaa komponenttien määrän yhtä suureksi kuin alkuperäisen matriisin mitat pienin. X.

funktio = pcanipals (X, numeroPC)

% laskelma komponenttien lukumäärästä
= koko (X); P =; T =;

Jos pituus (numeroPC)> 0
pc = numeroPC (1);
elseif (pituus (numeroPC) == 0) & X_r< X_c
pc = X_r;
muu
pc = X_c;
loppu;

k = 1: kpl
P1 = rand (X_c, 1); T1 = X * P1; d0 = T1 "* T1;
P1 = (T1 "* X / (T1" * T1)) "; P1 = P1 / normi (P1); T1 = X * P1; d = T1" * T1;

kun taas d - d0 > 0,0001;
P1 = (T1 "* X / (T1" * T1)); P1 = P1 / normi (P1); T1 = X * P1; d0 = T1 "* T1;
P1 = (T1 "* X / (T1" * T1)); P1 = P1 / normi (P1); T1 = X * P1; d = T1 "* T1;
loppu

X = X - T1 * P1; P = cat (1, P, P1"); T =;
loppu

Ohjeessa käsitellään PCA:n laskemista Chemometrics-apuohjelman avulla

5.4 PLS1

Suosituin menetelmä monimuuttujakalibrointiin on latentti projektio (PLS) -menetelmä. Tämä menetelmä suorittaa samanaikaisen ennustajamatriisin hajotuksen X ja vastausmatriisit Y:

X=TP t + E Y=Uq t + F T=XW(P t W) –1

Projektio rakennetaan johdonmukaisesti - jotta maksimoidaan vastaavien vektoreiden välinen korrelaatio X-tilit ta ja Y-tilit ua... Jos tietolohko Y sisältää useita vastauksia (esim. K> 1), voit rakentaa kaksi projektiota alkutiedoista - PLS1 ja PLS2. Ensimmäisessä tapauksessa jokaiselle vastaukselle y k sen oma projektioaliavaruus on rakennettu. Samaan aikaan tilit T (U) ja lataa P (W, K) riippuen käytetystä vastauksesta. Tätä lähestymistapaa kutsutaan nimellä PLS1. PLS2-menetelmää varten rakennetaan vain yksi projektioavaruus, joka on yhteinen kaikille vastauksille.

Yksityiskohtainen kuvaus PLS-menetelmästä on tässä kirjassa.PLS1-tilien ja -latausten muodostamiseen käytetään toistuvaa algoritmia. Alkuperäiset matriisit ensin X ja Y keskusta

= mc (X);
= mc (Y);

ja ne muuttuvat matriisiksi E 0 ja vektori f 0 , a= 0. Sitten niihin sovelletaan seuraavaa algoritmia

1. w t = fa t E a 2. w = w / (w t w) ½ 3. t = Ea w 4. q = t t fa / t t t 5. u = qfa / q 2 6. p t = t t Ea / t t t

Kun olet laskenut seuraavan ( a th) komponentit, oletamme ta=t ja pa=p... Seuraavan komponentin saamiseksi sinun on laskettava jäännökset E a+1 = Eat p t ja käytä niihin samaa algoritmia korvaamalla indeksin a päällä a+1.

Tässä on tämän algoritmin koodi kirjasta otettuna

funktio = pls (x, y)
% PLS: laskee PLS-komponentin.
% Lähtövektorit ovat w, t, u, q ja p.
%
% Valitse vektori y:stä aloitusvektoriksi u.

u = y (:, 1);

% Lähentymiskriteeri on asetettu erittäin korkeaksi.
kri = 100;

% Komennot tästä loppuun toistetaan konvergenssiin asti.
kun (kri> 1e - 10)

% Jokainen aloitusvektori u tallennetaan vanhana.
uold = u; w = (u "* x)"; w = w / normi (w);
t = x*w; q = (t "* y)" / (t "* t);
u = y*q/(q"*q);

% Konvergenssikriteeri on u-uold:n normi jaettuna u:n normilla.
kri = normi (uold - u) / normi (u);
loppu;

% Konvergenssin jälkeen laske p.
p = (t "* x)" / (t "* t);

% Loppu pls

Tietoja PLS1:n laskemisesta apuohjelmalla ChemometricsLisätä kuvattu käsikirjassa Projisointimenetelmät Excelissä.

5.5 PLS2

PLS2:lle algoritmi on seuraava. Alkuperäiset matriisit ensin X ja Y muunnos (ainakin - keskus; katso), ja ne muuttuvat matriiseiksi E 0 ja F 0 , a= 0. Sitten niihin sovelletaan seuraavaa algoritmia.

1. Valitse aloitusvektori u 2. w t = u t E a 3. w = w / (w t w) ½ 4. t = Ea w 5. q t = t t Fa / t t t 6. u = Fa q/ q t q 7. Tarkista konvergenssi, jos ei, siirry kohtaan 2 8. p t = t t Ea / t t t

Kun olet laskenut seuraavan ( a-th) PLS2-komponentit on asetettava: ta=t, pa=p, wa=w, ua=u ja q a = q... Seuraavan komponentin saamiseksi sinun on laskettava jäännökset E a+1 = Eat s t ja Fa +1 = F atq t ja käytä niihin samaa algoritmia korvaamalla indeksin a päällä a+1.

Tässä on koodi, joka on myös lainattu kirjasta.

funktio = plsr (x, y, a)
% PLS: laskee PLS-komponentin.
% Lähtömatriisit ovat W, T, U, Q ja P.
% B sisältää regressiokertoimet ja SS niiden summat
% neliöitä jäännöksille.
% a on komponenttien lukumäärä.
%
% Komponenteille: käytä kaikkia komentoja lopettaaksesi.

Jos i = 1: a
% Laske neliöiden summa. Käytä funktiota ss.
sx =;
sy =;

% Laske yksi komponentti funktiolla pls.
= pls (x, y);

% Laske jäännökset.
x = x - t * p ";
y = y - t*q";

% Tallenna vektorit matriiseihin.
W =;
T =;
U =;
Q =;
P =;
loppu;

% Laske regressiokertoimet silmukan jälkeen.
B = W * inv (P "* W) * Q";

% Lisää lopullinen jäännös SS neliövektorien summaan.
sx =;
sy =;

% Tee matriisi X:n ja Y:n ss-vektoreista.
SS =;

% Laske käytetyn SS:n osuus.
= koko (SS);
tt = (SS * diag (SS (1,:). ^ (- 1)) - ykköset (a, b)) * (-1)

% Plsr:n loppu

funktio = ss (x)
% SS: laskee matriisin X neliöiden summan.
%

ss = summa (summa (x. * x));
% ss. loppu

Tietoja PLS2:n laskemisesta apuohjelmalla ChemometricsLisätä kuvattu käsikirjassa Projisointimenetelmät Excelissä.

Johtopäätös

MatLab on erittäin suosittu data-analyysityökalu. Selvityksen mukaan sitä käyttää jopa kolmasosa tutkijoista, kun taas Unsrambler-ohjelmaa käyttää vain 16 % tutkijoista. MatLabin suurin haitta on sen korkea hinta. Lisäksi MatLab on hyvä rutiinilaskelmiin. Vuorovaikutteisuuden puute tekee siitä hankalia suoritettaessa hakuja, tutkimuslaskelmia uusille, tutkimattomille tietojoukoille.

    Paketin tärkeimmät ominaisuudetMatlab

    PakettityökalusarjatMatlab

    Pakkausrakenne ja työikkunatMatlab

    Työskentely komentotilassa

    Ohjelmointikielen peruselementitMatlab

1. Matlab-paketin pääominaisuudet

MATLAB(lyhennetty englannista "Matrix Laboratory") - paketti sovellettavia ohjelmia teknisten laskelmien ongelmien ratkaisemiseksi ja tässä paketissa käytetty samanniminen ohjelmointikieli. MATLABia käyttää yli 1 000 000 insinööriä ja tiedemiestä, ja se toimii useimmissa nykyaikaisissa käyttöjärjestelmissä, mukaan lukien Linux, Mac OS, Solaris (Solaris ei ole enää tuettu R2010b:ssä) ja Microsoft Windows.

Historia. Cleve Moler kehitti MATLABin ohjelmointikieleksi 1970-luvun lopulla, kun hän toimi New Mexicon yliopiston tietojenkäsittelytieteen osaston dekaanina. Kehityksen tarkoituksena oli antaa tiedekunnan opiskelijoille mahdollisuus käyttää Linpack- ja EISPACK-ohjelmistokirjastoja ilman Fortranin opiskelua. Pian uusi kieli levisi muihin yliopistoihin, ja soveltavan matematiikan alalla työskentelevät tutkijat ottivat sen suurella mielenkiinnolla vastaan. Löydät edelleen Internetistä Fortranin vuoden 1982 version, jota jaetaan avoimena lähdekoodina. Insinööri John N. (Jack) Little tutustui kieleen Clive Mowlerin vierailulla Stanfordin yliopistoon vuonna 1983. Hän ymmärsi, että uudella kielellä oli suuri kaupallinen potentiaali, ja hän teki yhteistyötä Cleve Mowlerin ja Steve Bangertin kanssa. Yhdessä he kirjoittivat MATLABin uudelleen C-kielellä ja perustivat The MathWorksin vuonna 1984 jatkokehitystä varten. Nämä C-kielellä uudelleen kirjoitetut kirjastot tunnetaan pitkään nimellä JACKPAC. Alun perin ohjausjärjestelmien suunnitteluun (John Littlen pääerikoisuus) tarkoitettu MATLAB saavutti nopeasti suosion monilla muilla tieteen ja tekniikan aloilla. Sitä käytettiin myös laajasti koulutuksessa, erityisesti lineaarisen algebran ja numeeristen menetelmien opettamisessa.

MATLAB-kielen kuvaus. MATLAB-kieli on korkeatasoista tulkittu ohjelmointikieli mukaan lukien perusteella matriiseja tietorakenteet, laaja valikoima toimintoja, integroitu kehitysympäristö, oliopohjaiset ominaisuudet ja rajapinnat muilla ohjelmointikielillä kirjoitettuihin ohjelmiin.

MATLABilla kirjoitettuja ohjelmia on kahdenlaisia ​​- toimintoja ja käsikirjoituksia.

Funktioilla on tulo- ja lähtöargumentit sekä oma työtila välilaskennan tulosten ja muuttujien tallentamiseen.

Skripteillä on yhteinen työtila. Sekä komentosarjoja että toimintoja ei käännetä konekoodiksi, vaan ne tallennetaan tekstitiedostoina.

On myös mahdollista tallentaa ns valmiiksi jäsennelty ohjelmat - funktiot ja komentosarjat, jotka on käsitelty koneen suorittamiseen sopivassa muodossa. Yleensä tällaiset ohjelmat toimivat nopeammin kuin tavalliset ohjelmat, varsinkin jos funktio sisältää kuvaajakomentoja.

MATLAB-kielen pääominaisuus on sen laajat mahdollisuudet työskennellä matriisien kanssa, jonka kielen luojat ilmaisivat iskulauseena "think vector" (eng. Ajatella vektoroitu).

MATLABin sovellus.

Matematiikka ja tietojenkäsittely. MATLAB tarjoaa käyttäjälle suuren määrän (useita satoja) toimintoja tietojen analysointiin, ja se kattaa lähes kaikki matematiikan osa-alueet, erityisesti:

    Matriisit ja lineaarinen algebra - matriisialgebra, lineaariyhtälöt, ominaisarvot ja vektorit, singulariteetit, matriisitekijät ja muut.

    Polynomit ja interpolointi - polynomien juuret, polynomien operaatiot ja niiden differentiointi, käyrien interpolointi ja ekstrapolointi ja muut.

    Matemaattiset tilastot ja tietojen analysointi - tilastofunktiot, tilastollinen regressio, digitaalinen suodatus, nopea Fourier-muunnos ja muut.

    Tiedonkäsittely - joukko erikoistoimintoja, mukaan lukien piirtäminen, optimointi, nollien etsiminen, numeerinen integrointi (kvadratuureissa) ja muut.

    Differentiaaliyhtälöt - ratkaista differentiaali- ja differentiaalialgebralliset yhtälöt, differentiaaliyhtälöt viiveellä, yhtälöt rajoituksilla, osittaiset differentiaaliyhtälöt ja muut.

    Harvat matriisit ovat erityinen MATLAB-tietoluokka, jota käytetään erikoissovelluksissa.

    Kokonaislukuaritmetiikka - Suorittaa kokonaislukuaritmeettisia operaatioita MATLAB-ympäristössä.

Algoritmien kehittäminen. MATLAB tarjoaa käteviä työkaluja algoritmien kehittämiseen, mukaan lukien korkean tason algoritmit, joissa käytetään olioohjelmointikonsepteja. Se sisältää kaikki tarvittavat IDE-työkalut, mukaan lukien debuggeri ja profilointi. Kokonaislukutietotyyppien kanssa työskentelyn toiminnot helpottavat algoritmien luomista mikro-ohjaimille ja muille sovelluksille tarvittaessa.

Tietojen visualisointi. MATLAB-paketti sisältää suuren määrän toimintoja graafisten piirtämiseen, mukaan lukien kolmiulotteinen, visuaalinen data-analyysi ja animoitujen videoiden luominen.

Sisäänrakennetun kehitysympäristön avulla voit luoda graafisia käyttöliittymiä erilaisilla säätimillä, kuten painikkeilla, syöttökentillä ja muilla.

Riippumattomat sovellukset. Komponentin avulla voidaan rakentaa MATLAB-ohjelmia, sekä konsolia että graafista käyttöliittymää MATLAB-kääntäjä MATLAB-riippumattomiin suoritettaviin sovelluksiin tai DLL-tiedostoihin, jotka kuitenkin vaativat ilmaisen jakeluympäristön toimiakseen muissa tietokoneissa MATLAB-kääntäjän suoritusaika(MCR).

Ulkoiset rajapinnat. MATLAB-paketti sisältää erilaisia ​​rajapintoja, joilla päästään käsiksi ulkoisiin rutiineihin, jotka on kirjoitettu muilla ohjelmointikielillä, dataa, asiakkaita ja palvelimia, jotka kommunikoivat Component Object Model tai Dynamic Data Exchange -tekniikoiden kautta sekä oheislaitteita, jotka kommunikoivat suoraan MATLABin kanssa. Monet näistä ominaisuuksista tunnetaan MATLAB API:na.

COM. MATLAB-paketti tarjoaa pääsyn toimintoihin, joiden avulla voit luoda, käsitellä ja poistaa COM-objekteja (sekä asiakkaita että palvelimia). Myös ActiveX-tekniikkaa tuetaan. Kaikki COM-objektit kuuluvat MATLAB-paketin erityiseen COM-luokkaan. Kaikki ohjelmat, joissa on automaatioohjaimen toiminnot (eng. Automaatio ohjain) voi käyttää MATLABia automaatiopalvelimena. Automaatio palvelin).

.NETTO. Microsoft Windowsin MATLAB-paketti tarjoaa pääsyn .NET Framework -ohjelmistoon. MATLAB-ympäristöstä on mahdollista ladata .NET-kokoonpanoja ja työskennellä .NET-luokkien objektien kanssa. MATLAB 7.11 (R2010b) tukee .NET Frameworkin versioita 2.0, 3.0, 3.5 ja 4.0.

DDE. MATLAB-paketti sisältää toimintoja, joiden avulla se voi käyttää muita Windows-ympäristön sovelluksia sekä näitä sovelluksia päästäkseen MATLAB-dataan Dynamic Data Exchange (DDE) -tekniikan avulla. Jokaisella sovelluksella, joka voi olla DDE-palvelin, on oma yksilöllinen tunnistenimi. MATLABille tämä nimi on - Matlab.

Web palvelut. MATLAB tarjoaa mahdollisuuden kutsua verkkopalveluiden menetelmiä. Erikoisfunktio luo luokan verkkopalvelun API:n menetelmien perusteella.

MATLAB on vuorovaikutuksessa verkkopalveluasiakkaan kanssa ottamalla vastaan ​​paketteja siltä, ​​käsittelemällä ne ja lähettämällä vastauksen. Seuraavia tekniikoita tuetaan: Simple Object Access Protocol (SOAP) ja Web Services Description Language (WSDL).

COM-portti. MATLAB-sarjaportin käyttöliittymä tarjoaa suoran pääsyn oheislaitteisiin, kuten modeemeihin, tulostimiin ja tieteellisiin laitteisiin, jotka yhdistetään tietokoneeseen sarjaportin (COM-portin) kautta. Käyttöliittymä toimii luomalla erikoisluokan objektin sarjaportille. Tämän luokan käytettävissä olevat menetelmät mahdollistavat tietojen lukemisen ja kirjoittamisen sarjaporttiin, tapahtumien ja tapahtumakäsittelijöiden käytön sekä tietojen kirjoittamisen tietokoneen levylle reaaliajassa. Tästä on hyötyä kokeissa, reaaliaikaisissa simulaatioissa ja muissa sovelluksissa.

MEX-tiedostot. MATLAB-paketti sisältää käyttöliittymän vuorovaikutukseen ulkoisten C- ja Fortran-kielillä kirjoitettujen sovellusten kanssa. Tämä vuorovaikutus suoritetaan MEX-tiedostojen kautta. C- tai Fortran-kielellä kirjoitettuja alirutiineja voidaan kutsua MATLABista ikään kuin ne olisivat paketin sisäänrakennettuja toimintoja. MEX-tiedostot ovat dynaamisia linkkikirjastoja, jotka MATLABiin sisäänrakennettu tulkki voi ladata ja suorittaa. MEX-proseduureilla on myös mahdollisuus kutsua sisäänrakennettuja MATLAB-komentoja.

DLL. MATLABin yleisen DLL-rajapinnan avulla voit kutsua tavallisista dynaamisista linkkikirjastoista löytyviä toimintoja suoraan MATLABista. Näillä toiminnoilla on oltava C-liitäntä.

Lisäksi MATLABilla on mahdollisuus käyttää sisäänrakennettuja toimintojaan C-rajapinnan kautta, mikä mahdollistaa pakettitoimintojen käytön ulkoisissa C-kielellä kirjoitetuissa sovelluksissa. Tämä MATLABin tekniikka on ns. C Moottori.

Vaihtoehtoiset paketit. Numeerisen analyysin ongelmien ratkaisemiseen on olemassa suuri määrä ohjelmistopaketteja. Monet näistä paketeista ovat ilmaisia ​​ohjelmistoja.

Yhteensopiva MATLABin kanssa ohjelmointikielitasolla:

Toiminnaltaan samanlainen:

    APL ja sen jälkeläiset: esim. J

    Python, kun sitä käytetään Python (x, y) -ohjelmistopaketin sekä kirjastojen, kuten NumPy, SciPy ja matplotlib, kanssa, toteuttaa samanlaisia ​​​​ominaisuuksia.

    IDL (eng. Interaktiivinen Data Kieli, interaktiivinen tiedonkuvauskieli), joka oli aikoinaan MATLABin kaupallinen kilpailija, mutta on nyt vakava kilpailija monilla sovellusalueilla, vaikka sen osuus numeerisen analyysin ohjelmistotuotteiden markkinoista on romahtanut.

    Fortress, Sun Microsystemsin luoma ohjelmointikieli, perii Fortranin, mutta ei ole yhteensopiva sen kanssa.

    Jos on tarpeen kehittää suuria numeerisen analyysin projekteja, on mahdollista käyttää yleiskäyttöisiä ohjelmointikieliä, jotka tukevat staattista kirjoitusta ja modulaarista rakennetta. Esimerkkejä ovat Modula-3, Haskell, Ada, Java. Samalla on suositeltavaa käyttää tieteellisessä ja teknisessä ympäristössä tunnettuja erikoiskirjastoja.

2. Matlabin työkalulaatikot

Matlabissa tärkeä rooli on erikoistuneilla ohjelmaryhmillä ns työkalulaatikot... Työkalulaatikot ovat kattava kokoelma funktioita (m-tiedostoja), jotka on kirjoitettu MATLABissa tietyn luokan ongelmien ratkaisemiseksi. Mathworks toimittaa työkalupakkeja, joita käytetään monilla aloilla, mukaan lukien seuraavat:

    Signaalien, kuvien ja datan digitaalinen käsittely: DSP Toolbox, Kuvankäsittelytyökalut, Wavelet Toolbox, Viestintätyökalupakki, Suodattimen suunnittelutyökalulaatikko- toimintosarjat, jotka mahdollistavat monenlaisten signaalinkäsittelyn, kuvien, digitaalisten suodattimien ja viestintäjärjestelmien suunnittelun tehtävien ratkaisemisen.

    Ohjausjärjestelmät: Ohjausjärjestelmien työkalupakki, µ-Analysis and Synthesis Toolbox, Vankka ohjaustyökalulaatikko, System Identification Toolbox, LMI Control Toolbox, Mallin ennakoivan ohjauksen työkalupakki, Model-Based Calibration Toolbox- toimintosarjat, jotka helpottavat dynaamisten järjestelmien analysointia ja synteesiä, ohjausjärjestelmien suunnittelua, mallintamista ja tunnistamista, mukaan lukien nykyaikaiset ohjausalgoritmit, kuten robust ohjaus, H∞-ohjaus, LMN-synteesi, µ-synteesi jne.

    Taloudellinen analyysi: GARCH Toolbox, Korkotulojen työkalupakki, Financial Time Series Toolbox, Johdannaisten työkalupakki, Taloustyökalut, Datafeed Toolbox- toimintosarjat, joiden avulla voit nopeasti ja tehokkaasti kerätä, käsitellä ja siirtää erilaisia ​​taloustietoja.

    Maantieteellisten karttojen, mukaan lukien kolmiulotteisten, analyysi ja synteesi: Mapping Toolbox.

    Kokeellisten tietojen kerääminen ja analysointi: Tiedonhankinnan työkalupakki, Image Acquisition Toolbox, Instrument Control Toolbox, Linkki Code Composer Studioon- toimintosarjat, joiden avulla voit tallentaa ja käsitellä kokeiden aikana saatuja tietoja, myös reaaliajassa. Laaja valikoima tieteellisiä ja teknisiä mittauslaitteita tuetaan.

    Datan visualisointi ja esittely: Virtuaalitodellisuuden työkalupakki- voit luoda interaktiivisia maailmoja ja visualisoida tieteellistä tietoa käyttämällä vja VRML:ää.

    Kehitystyökalut: MATLAB Builder for COM, MATLAB Builder for Excel, MATLAB Builder NETille, MATLAB-kääntäjä, Suodatinsuunnittelu HDL-kooderi- toimintosarjat, joiden avulla voit luoda itsenäisiä sovelluksia MATLAB-ympäristöstä.

    Vuorovaikutus ulkoisten ohjelmistotuotteiden kanssa: MATLAB-raporttigeneraattori, Excelin linkki, Tietokannan työkalupakki, MATLAB-verkkopalvelin, Linkki ModelSimiin- toimintosarjat, joiden avulla voit tallentaa tietoja siten, että muut ohjelmat voivat toimia niiden kanssa.

    Tietokanta: Tietokannan työkalupakki- työkalut tietokantojen käsittelyyn.

    Tieteen ja matematiikan paketit: Bioinformatiikan työkalupakki, Curve Fitting Toolbox, Kiinteän pisteen työkalulaatikko, Fuzzy Logic Toolbox, Geneettinen algoritmi ja suorahakutyökalulaatikko, OPC Toolbox, Optimointityökalut, Partial Differential Equation Toolbox, Spline Toolbox, Tilastotyökalut, RF Toolbox- erikoistuneiden matemaattisten funktioiden joukot, jotka mahdollistavat monenlaisten tieteellisten ja teknisten ongelmien ratkaisemisen, mukaan lukien geneettisten algoritmien kehittäminen, ongelmien ratkaiseminen osittaisina johdannaisina, kokonaislukuongelmat, järjestelmän optimointi ja muut.

    Neuroverkot: Neural Network Toolbox- työkaluja neuroverkkojen synteesiin ja analysointiin.

    Sumea logiikka: Fuzzy Logic Toolbox- työkalut sumeiden joukkojen muodostamiseen ja analysointiin.

    Symbolinen laskenta: Symbolic Math Toolbox- työkalut symbolisiin laskelmiin, joilla on mahdollisuus olla vuorovaikutuksessa Maple-ohjelman symbolisen prosessorin kanssa.

Yllämainittujen lisäksi on olemassa tuhansia muita MATLAB-työkalusarjoja, jotka ovat kirjoittaneet muut yritykset ja harrastajat.

Useimpien kehittäjien on vaikea ymmärtää sekä sen syntaksia että ominaisuuksia. Asia on siinä, että kieli liittyy suoraan suosittuun ohjelmistotuotteeseen, jonka kustannukset voivat nousta huikeita arvoja. Joten pääkysymys on: onko Matlab itse niin hyvä? Ja voiko siitä olla sinulle hyötyä.

Käyttö

Aloitetaanko tavanomaisesta historiaretkestä ja keskustelusta kielen eduista ja haitoista, vaan MATLAB / Simulink -ohjelmistoympäristöstä - ainoasta paikasta, jossa tämän tekstin sankari voi olla hyödyllinen. Kuvittele vain graafinen editori, jossa voit toteuttaa minkä tahansa ideasi ilman usean vuoden kokemusta ja asiaankuuluvaa koulutusta takanasi. Ja kun olet luonut työkalujen vuorovaikutusjärjestelmän kerran, hanki korkealaatuinen komentosarja toistuvaan käyttöön.

MATLAB on juuri sellainen editori datamaailmassa. Sen soveltamisala on äärettömän laaja: IoT, rahoitus, lääketiede, avaruus, automaatio, robotiikka, langattomat järjestelmät ja paljon muuta. Yleensä tiedon keräämiseen ja visualisointiin sekä ennustamiseen on lähes rajattomat mahdollisuudet, mutta vain, jos on mahdollisuus ostaa vastaava paketti.

Mitä tulee hintaan, ylärajaa ei juuri ole, mutta alempi on 99 dollarin alueella. Jotta voit napata niin tehokkaan tuotteen suhteellisen pienellä rahalla, sinun on oltava yliopisto-opiskelija. Ja tietysti saat melko rajoitetun tuotteen.

Kielen ominaisuudet

MATLAB-kieli on työkalu, jonka avulla käyttäjä (usein ei edes ohjelmoija) voi olla vuorovaikutuksessa kaikkien käytettävissä olevien tietojen analysointi-, keräämis- ja esittämisominaisuuksien kanssa. Sillä on ilmeisiä etuja ja haittoja suljetussa ekosysteemissä elävälle kielelle.

Haitat:

    Hidas ja ylikuormitettu kieli, jossa on operaattoreita, komentoja, toimintoja, joiden päätarkoituksena on parantaa visuaalista havaintoa.

    Kapeasti suuntaava. Ei ole muuta ohjelmistoalustaa, jossa MATLAB on hyödyllinen.

    Korkeat ohjelmistokustannukset. Jos et ole opiskelija, valmistaudu tyhjentämään taskusi tai ylitä lain raja. Ja vaikka opiskelija on kohtuullinen hinta.

    Alhainen kysyntä. Huolimatta suuresta kiinnostuksesta MATLABia kohtaan lähes kaikilla alueilla, itse asiassa ja laillisesti vain harvat käyttävät sitä.

Edut:

    Kieli on helppo oppia, ja sen syntaksi on yksinkertainen ja suoraviivainen.

    Valtavat mahdollisuudet. Mutta tämä on pikemminkin koko tuotteen etu.

    Säännölliset päivitykset, pääsääntöisesti havaittavia positiivisia muutoksia tapahtuu vähintään pari kertaa vuodessa.

    Ohjelmistoympäristön avulla voit muuttaa sen "nopeaksi" koodiksi C-, C++-kielillä.

Kohdeyleisö

Kaikki eivät tietenkään tarvitse MATLABia. Huolimatta laajimmasta sovellusvalikoimasta on vaikea kuvitella, että keskivertosovelluskehittäjä tarvitsee tämän kielen taitoa. MATLAB on erittäin hyödyllinen alueilla, jotka vaativat erityistä luotettavuutta tietojenkäsittelyssä, esimerkiksi autojen autopilottijärjestelmissä tai lentokoneen elektronisissa järjestelmissä.

Eli jos et ole kovin ohjelmoija, mutta ammattisi liittyy tavalla tai toisella ohjelmoidun tiedonkäsittelyn tarpeeseen, niin MATLAB / Simulink -tuote sopivalla kielellä voi yksinkertaistaa päivittäisiä tehtäviäsi huomattavasti.

Kirjallisuus

Päätämme kielen tarkastelun, kuten aina, opetuskirjallisuuden luetteloon. Tietenkään niiden joukosta et löydä kirjoja yksinomaan kielestä, mutta tämä vain helpottaa kielen havaitsemista:

Onko sinulla kokemusta MATLABista? Ja mikä?

Niille, jotka haluavat tulla ohjelmoijaksi -.

Math Works loi MatLabin yli kymmenen vuotta sitten. Satojen tutkijoiden ja ohjelmoijien työn tavoitteena on jatkuvasti laajentaa sen kykyjä ja parantaa taustalla olevia algoritmeja. Tällä hetkellä MatLab on tehokas ja monipuolinen työkalu ihmisen toiminnan eri osa-alueiden ongelmien ratkaisemiseen.
Työympäristö MatLab 6.x, MatLab 7:ssä on kätevä käyttöliittymä monien MatLabin apuelementtien käyttämiseen.
Kun käynnistät MatLab 6.x:n, työympäristö tulee näkyviin näytölle , esitetty kuvassa. 1.

Riisi. 1. MatLab 6.x -paketin työympäristö

Tämä oppitunti opettaa Matlabissa työskentelyn perusteet (johdanto).

Työympäristö sisältää seuraavat elementit:

Valikko;
- työkalupalkki painikkeilla ja avattavalla luettelolla;
- välilehtiikkuna Tuoda markkinoille Pad ja työtila, josta pääset helposti käsiksi erilaisiin ToolBox-moduuleihin ja työympäristön sisältöön;
- välilehtiikkuna Komento Historia ja Nykyinen Hakemisto, tarkoitettu aiemmin syötettyjen komentojen katseluun ja palauttamiseen sekä nykyisen hakemiston asettamiseen;
- komentoikkuna Komento Ikkuna komentorivillä, jossa vilkkuva kohdistin sijaitsee;
- tilapalkki.

Kaikki tässä laboratoriossa kuvatut komennot tulee kirjoittaa komentoriville. Sinun ei tarvitse kirjoittaa "itse merkkiä", joka tarkoittaa esimerkeissä näkyvää komentorivikehotetta. Työalueen tarkastelemiseen on kätevää käyttää vierityspalkkeja tai näppäimiä. , liikkuaksesi vasemmalle tai oikealle ja , Liikkuaksesi ylös tai alas. Tietoja näppäinten käytöstä , , , kerrotaan lisäksi. Jos yhtäkkiä, liikkumisen jälkeen komentoikkunan työalueella, komentorivi vilkkuva kohdistimella katosi, paina vain .
On tärkeää muistaa, että minkä tahansa komennon tai lausekkeen kirjoittamisen tulee päättyä näppäinpainallukseen. jotta MatLab suorittaa tämän komennon tai arvioi lausekkeen.

Huomautus 1

Jos jotkin kuvatuista ikkunoista puuttuvat MatLab 6.x -työympäristöstä, siirry valikkoon Näytä valitse sopivat kohteet: Komentoikkuna, Komentohistoria, Nykyinen hakemisto, Työtila, Launch Pad.

2.1. Aritmeettiset laskelmat

MatLabin sisäänrakennettujen matemaattisten toimintojen avulla voit löytää eri lausekkeiden arvot. MatLab tarjoaa mahdollisuuden hallita tuloksen tulostusmuotoa. Lausekkeiden arviointikomentojen muoto on yhteinen kaikille korkean tason ohjelmointikielille.

2.1.1. Yksinkertaisimmat laskelmat

Kirjoita komentoriville 1 + 2 ja paina ... Tämän seurauksena MatLab-komentoikkunassa näkyy seuraava:

»1 + 2
ans =
3
» |

Mitä MatLab teki? Ensin hän laski summan 1 + 2, kirjoitti sitten tuloksen erikoismuuttujaan ans ja tulosti sen arvon, joka on yhtä suuri kuin 3, komentoikkunaan. Vastauksen alla on komentorivi, jossa on vilkkuva kohdistin, joka osoittaa, että MatLab on valmis lisälaskelmia varten. Voit kirjoittaa uusia lausekkeita komentoriville ja löytää niiden arvot.

Jos haluat jatkaa työskentelyä edellisen lausekkeen kanssa, esimerkiksi laskea (1 + 2) /4.5, niin helpoin tapa on käyttää jo olemassa olevaa tulosta, joka tallennetaan ans-muuttujaan. Kirjoita komentoriville ans / 4.5 (desimaalipisteet syötetään pisteen kanssa) ja paina , käy ilmi:

»Ans / 4.5
ans =
0.6667
» |

Huomautus 2

Laskentatulosten näyttömuoto riippuu MatLabissa asetetusta tulostusmuodosta. Seuraavassa selitetään, kuinka perustulostusmuodot asetetaan.

2.1.2. Laskennan tulostusmuodot

Käyttäjä määrittää tarvittavan tulostusmuodon MatLab-valikosta. Valitse valikosta Tiedosto kohta Asetukset. Näyttöön tulee valintaikkuna. Asetukset. Jos haluat määrittää tulostusmuodon, varmista, että kohde on valittuna vasemman ruudun luettelosta. Komento Ikkuna... Muoto asetetaan avattavasta luettelosta Numeerinen muoto paneelit Teksti näyttö.
Toistaiseksi analysoimme vain useimmin käytettyjä formaatteja. Ole hyvä ja valitse lyhyt pudotusvalikosta Numeerinen muoto MatLabissa 6.x. Sulje valintaikkuna napsauttamalla OK. Laskentatulosten näyttämiseen on nyt asetettu lyhyt liukulukumuoto, jossa näytössä näkyy vain neljä numeroa desimaalipilkun jälkeen. Kirjoita komentoriville 100/3 ja paina .
Tulos tulostetaan lyhyessä muodossa:

"100/3
ans =
33.3333

Tämä tulostusmuoto säilytetään kaikissa myöhemmissä laskelmissa, ellei muuta muotoa ole määritetty. Huomaa, että MatLabissa on mahdollista, että liian suurta tai pientä lukua näytettäessä tulos ei sovi lyhyeen muotoon. Laske 100000/3, tulos näytetään eksponentiaalisessa muodossa:

"100 000/3
ans =
Z.ZZZZe + 004

Sama tapahtuu, kun löydät 1/3000:

"1/3000
ans =
Z.ZZZZe-004

Alkuperäinen muodon asetus kuitenkin säilyy ja lisälaskelmissa pienille luvuille tulos on jälleen lyhytmuotoinen.

Edellisessä esimerkissä MatLab-paketti näytti laskelmien tuloksen eksponentiaalinen muoto. Merkintä 3.3333e-004 tarkoittaa 3.3333 * 10-4 tai 0.00033333. Vastaavasti voit kirjoittaa numeroita lausekkeisiin. Esimerkiksi 10e9 tai l.0e10 on helpompi kirjoittaa kuin 1 000 000 000, ja tulos on sama. Välilyöntejä numeroiden ja e:n välillä ei sallita syötettäessä, koska tämä tuottaa virheilmoituksen:

»10 e9
??? 10 е9

Jos haluat saada laskelmien tuloksen tarkemmin, sinun tulee valita avattavasta luettelosta pitkä... Tulos näytetään pitkän liukulukumuodossa 14 numerolla desimaalipilkun jälkeen. Muodot lyhyt e ja pitkä e on suunniteltu näyttämään tulos eksponentiaalisessa muodossa neljällä ja viidellätoista numerolla desimaalipilkun jälkeen. Tietoa muodoista saat kirjoittamalla komentoriville help-komennon format-argumentin kanssa:

Jokaisen muodon kuvaus tulee näkyviin komentoikkunaan.

Voit asettaa tulosteen muodon suoraan komentoriviltä käyttämällä format-komentoa. Jos haluat esimerkiksi määrittää pitkän liukulukumuodon laskutoimitusten tulosten tulostamiseen, kirjoita komentoriville muoto long e -komento:

»Muotoile pitkä e
"1,25 / 3,11
ans =
4.019292604501608e-001

Huomaa, että help format -komento näyttää muotojen nimet isoin kirjaimin. Syötettävä komento on kuitenkin pienillä kirjaimilla. Tämä sisäänrakennetun ohjeen ominaisuus vaatii totuttelua. MatLab erottaa isot ja pienet kirjaimet. Jos yrität kirjoittaa komennon isoilla kirjaimilla, seurauksena on virhe:

»MUOTO PITKÄ E
??? MUOTO PITKÄ.
Operaattori, pilkku tai puolipiste puuttuu.

Jotta tulos olisi helpompi havaita, MatLab näyttää laskelmien tuloksen rivin kautta lasketun lausekkeen jälkeen. Joskus on kuitenkin kätevää sijoittaa näytölle lisää rivejä valitsemalla valintanappi kompakti (tiedosto, numeerinen näyttö) avattavasta luettelosta. Tyhjien rivien lisääminen tapahtuu valitsemalla löysä pudotusvalikosta Numeerinen näyttö.

Huomautus 3

Kaikki välilaskelmat suorittaa MatLab kaksinkertainen tarkkuus, riippumatta siitä, mikä tulostusmuoto on asetettu.

2.2. Perusfunktioiden käyttö

Oletetaan, että haluat arvioida seuraavan lausekkeen:

Kirjoita tämä lauseke komentoriville MatLabin sääntöjen mukaisesti ja paina :

»Exp (-2,5) * log (11,3) ^ 0,3-sqrt ((sin (2,45 * pi) + cos (3,78 * pi)) / tan (3,3))

Vastaus näkyy komentoikkunassa:

ans =
-3.2105

Lauseketta syötettäessä käytettiin MatLabin sisäänrakennettuja funktioita eksponentin, luonnollisen logaritmin, neliöjuuren ja trigonometristen funktioiden laskemiseen. Mitä sisäänrakennettuja atomifunktioita voin käyttää ja miten voin kutsua niitä? Kirjoita komentoriville komento help eifun, ja luettelo kaikista sisäänrakennetuista perusfunktioista ja niiden lyhyestä kuvauksesta tulee näkyviin komentoikkunaan. Funktioiden argumentit on suljettu suluissa, funktioiden nimet ovat pieniä kirjaimia. Numeron syöttäminen l kirjoita vain komentoriville pi.

Aritmeettiset operaatiot MatLabissa suoritetaan tavallisessa järjestyksessä useimmille ohjelmointikielille:

Eksponenttio ^;
- kerto- ja jakolasku *, /;
- yhteen- ja vähennyslasku +, -.

Käytä sulkeita muuttaaksesi aritmeettisten operaattorien suoritusjärjestystä.
Jos nyt sinun on laskettava esimerkiksi edellistä vastaavan lausekkeen arvo

sitä ei tarvitse kirjoittaa uudelleen komentoriville. Voit käyttää sitä tosiasiaa, että MatLab muistaa kaikki syötetyt komennot. Voit kirjoittaa ne uudelleen komentoriville käyttämällä näppäimiä , ... Arvioi annettu lauseke noudattamalla alla olevia vaiheita.

1. Paina -näppäintä<­>, ja aiemmin syötetty lauseke tulee näkyviin komentoriville.
2. Tee siihen tarvittavat muutokset korvaamalla miinusmerkki plus-merkillä ja neliöjuuren neliöintiä varten (liirtyäksesi lausekkeen kanssa käytä näppäimiä , , , ).
3. Arvioi muokattu lauseke painamalla .

Se käy ilmi

»Exp (-2,5) * log (11,3) ^ 0,3 + ((sin (2,45 * pi) + cos (3,78 * pi)) / tan (3,3)) ^ 2
ans =
121.2446

Jos haluat saada tarkemman tuloksen, sinun tulee suorittaa komentomuoto pitkä e ja paina sitten -näppäintä<­>kunnes vaadittu lauseke ilmestyy komentoriville, ja arvioi se painamalla .

»Muotoile pitkä e
»Exp (-2,5) * log (11,3) ^ 0,3 + ((sin. (2,45 * pi) + cos (3,78 * pi)) / tan (3,3)) ^ 2
ans =
1,212446016556763e + 002

Voit näyttää viimeksi löydetyn lausekkeen tuloksen eri muodossa ilman uudelleenlaskentaa. Sinun tulisi muuttaa muotoa lyhyellä komennolla ja nähdä sitten ans-muuttujan arvo kirjoittamalla se komentoriville ja painamalla :

»Muotoile lyhyt
»Ans
ans =
121.2446

MatLab 6.x -työympäristössä on kätevä työkalu aiemmin syötettyjen komentojen kutsumiseen - ikkuna Komento Historia komentohistorian kanssa. Komentohistoria sisältää jokaisen MatLab 6.x -istunnon ajan ja päivämäärän. Aktivoidaksesi ikkunan Komento Historia sinun on valittava samanniminen välilehti. Ikkunan nykyinen komento näkyy sinisellä taustalla. Jos napsautat mitä tahansa komentoa ikkunassa hiiren vasemmalla painikkeella, tästä komennosta tulee nykyinen. Suorittaaksesi sen MatLabissa, sinun on kaksoisnapsautettava tai valittava rivi komennolla näppäimillä , ja paina näppäintä ... Ylimääräinen komento voidaan poistaa ikkunasta. Tätä varten se on päivitettävä ja poistettava -näppäimellä ... Voit valita useita peräkkäisiä komentoja pikanäppäimellä +, +ja toteuttaa ne kanssa tai poista näppäimellä ... Peräkkäiset komennot voidaan valita hiiren vasemmalla painikkeella pitäen näppäintä painettuna ... Jos komennot eivät seuraa peräkkäin, valitse ne käyttämällä hiiren vasenta painiketta samalla kun pidät näppäintä painettuna .

Napsauta hiiren kakkospainikkeella ikkuna-aluetta Komento Historia ponnahdusvalikko tulee näkyviin. Kohteen valinta Soru aiheuttaa komennon kopioimisen Windowsin leikepöydälle. Avulla Arvioida Valinta voit suorittaa merkityn komentoryhmän. Voit poistaa nykyisen komennon käyttämällä kohdetta Poistaa Valinta. D Poistaaksesi kaikki komennot nykyiseen asti - Poistaa kohtaan Valinta, poistaa kaikki komennot - Poistaa Koko Historia.

Laskelmien aikana jotkut poikkeukselliset tilanteet ovat mahdollisia, esimerkiksi nollalla jako, joka useimmissa ohjelmointikielissä johtaa virheeseen. Kun positiivinen luku jaetaan nollalla MatLabissa, saadaan inf (ääretön), ja kun negatiivinen luku jaetaan nollalla, saadaan -inf (miinus ääretön) ja annetaan varoitus:

»1/0
Varoitus: Jaa nollalla.
ans =
Inf

Nollan jakaminen nollalla tuottaa NaN:n (ei numeron) ja luo myös varoituksen:

» 0/0
Varoitus: Jaa nollalla.
ans =
NaN

Laskettaessa kuten sqrt (-1) , virhettä tai varoitusta ei esiinny. MatLab siirtyy automaattisesti kompleksilukualueelle:

»Sqrt (-1,0)
ans =
0 + l.0000i

Mistä tiedän, mitä sisäänrakennettuja atomifunktioita voidaan käyttää ja miten niitä kutsutaan? Kirjoita komento komentokehotteeseen apua eifun, samalla lista kaikista sisäänrakennetuista perusfunktioista ja niiden lyhyestä kuvauksesta näkyy komentoikkunassa.