Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


Citirea fisierelor cu format uniform

Matlab



+ Font mai mare | - Font mai mic



Citirea fisierelor cu format uniform

Functia textread citeste date de tip caracter sau numerice dintr-un fisier si le transcrie in variabile MATLAB folosind specificatorii de conversie care definesc lungimea campului de date si formatul acestora. Functia textread este utila pentru fisiere cu format uniform si cunoscut (de exemplu cu delimitatori de tip virgula sau tab).



Exemplu: fie fisierul mydata.dat

Sally Type1 12.34 45 Yes

Pentru citirea fisierului mydata.dat ca fisier cu format liber se foloseste formatul de conversie


[names, types, x, y, answer] = textread('mydata.dat', '%s %s %f %d %s', 1)

unde %s citeste un sir de caractere separat prin spatii albe, %f citeste o valoare tip floating point, si %d citeste un intreg cu semn.

MATLAB va raspunde:


names =
'Sally'
types =
'Type1'
x =
12.34000000000000
y =
45
answer =
'Yes'

Schimbarea de date intre platforme (sisteme de operare)

In unele situatii este necesar transferul de date si programe intre utilizatori care lucreaza cu sisteme de operare diferite. Aplicatiile MATLAB constau in fisiere .m cu functii si script-uri si fisiere tip .mat cu date binare. Ambele tipuri de fisiere pot fi transportate direct intre diferite computere:

Fisierele .m contin text simplu si sunt independente de "masina".

Fisierele .mat sunt binare si dependente de "masina" dar pot fi transportate intre computere deoarece contin semnatura de "masina" in antetul fisierului.

Pentru utilizarea si transportul aplicatiilor MATLAB pe diverse computere (sisteme de operare) trebuie sa ne asiguram ca fisierele .mat se transmit in binary file mode si fisierele .m in ASCII file mode.

Comanda diary

Comanda diary genereaza o copie a sesiunii de lucru MATLAB intr-un fisier disc (fara grafice). Se poate vizauliza si edita textul rezultat cu orice procesor de texte.

De exemplu, pentru crearea unui fisier cu numele octomb26.out care contine comenzile si iesirile (raspunsurile) MATLAB corespunzatoare, trebuie tastat:


diary octomb26.out

Pentru oprirea inregistrarii sesiunii se foloseste:


diary off

Utilizarea memoriei


MATLAB-ul necesita o zona continua de memorie pentru stocarea datelor din fiecare matrice.

De asemenea, imaginile si filmele (animatia) cer o mare cantitate de memorie.

In plus, harta de pixeli (pixmap) folosita pentru imagini cere o cantitate de memorie proportionala cu suprafata imaginii de pe ecran. O imagine color de 500x500 pixeli cere 1 Mb de memorie. Pentru limitarea memoriei necesare trebuie limitata dimensiunea imaginilor de pe ecran.

Rezolvarea erorilor de memorie

Daca nu exista memorie suficienta, in cazul unor matrici de dimensiuni mari este posibila aparitia unei erori de memorie de tip "out of memory". Se poate incerca o defragmentare a memoriei cu comanda pack

Daca astfel de erori "out of memory" sunt dese se pot incerca si alte metode:

In cazul sistemelor Windows se creste memoria virtuala folosind System Properties pentru Performance, instrument accesibil din Control Panel.

Pentru sisteme UNIX trebuie cerut administratorului de sistem sa creasca spatiul swap.

Administrarea memoriei MATLAB

MATLAB-ul utilizeaza functiile C standard malloc si free pentru alocarea memoriei dinamice. Aceste rutine mentin de regula o rata relativ lenta de utilizare a memoriei alocata de sistemul de operare. Pentru MATLAB, malloc si free aloca memoria intr-un ritm mai rapid. Pe masura ce MATLAB-ul nu mai are nevoie de memorie, malloc si free nu returneaza memoria aditionala sistemului de operare (rutinele presupun ca daca a fost nevoie de o cantitate mare de memorie o data, atunci este posibil sa mai fie nevoie inca o data).

Din acest motiv este posibil ca alte aplicatii care ruleaza sa nu poata dispune de memorie, chiar daca MATLAB-ul nu mai are nevoie. Pentru a diponibiliza cantitatea de memorie trebuie terminata sesiunea MATLAB.




Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 1945
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved