Previzualizare laborator:

Extras din laborator:

Functiile MATLAB pentru interpolarea si aproximarea datelor sunt:

table1 -interpoleaza liniar si citeste date din tabele unidimensionale;

spline -interpoleaza prin metoda spline date din tabele unidimensionale;

interpft -interpoleaza prin metoda transformatei Fourier date din tabele unidimensionale;

polyfit -aproximeaza un set de date cu un polinom de gradul n;

interp1 -interpoleaza liniar, spline sau cubic date din tabele unidimensionale;

table2 -interpoleaza liniar si citeste date din tabele bidimensionale;

interp2 -interpoleaza biliniar sau bicubic date din tabele bidimensionale;

interp3 -interpoleaza biarmonic valorile unei functii de doua variabile;

interp4 -interpoleaza biliniar valorile unei functii de doua variabile;

interp5 -interpoleaza bicubic valorile unei functii de doua variabile;

griddata -interpoleaza prin metoda distantei inverse valorile unei functii de doua variabile;

Interpolarea unui set discret de date [ xi,yi] presupune determinarea unei functii f(xi) astfel ca f(xi)=yi, in vederea completarii setului de date in orice alt x0, xi. Spre exemplu, fie date punctele de coordonate (x1,y1) si (x2,y2). Se cere estimarea valorii y(x), unde x1<x<x2. Daca punctele sunt unite printr-o dreapta, interpolarea se numeste liniara, iar daca sunt unite printr-un polinom de gradul trei, interpolarea este spline cubica.

1.Cautarea datelor in tabele

Prin cautarea datelor in tabele se intelege operatia prin care o anumita valoare este citita dintr-un tabel predefinit. Aceste operatii sunt utile in proiectare, cand trebuie cautate elemente normalizate de dimensiuni sau parametrii ai unor dispozitive, de exemplu alegerea unei sectiuni de conductor, alegerea unui dispozitiv electronic cu anumiti parametrii, dimensiuni mecanice ale unui profil, etc.

1.1Cautarea datelor in tabele unidimensionale

Cautarea datelor in tabele unidimensionale se face cu functia table1; se apeleaza cu sintaxa:

Z=table1(tab,x)

Tabelul "tab" din care se citesc datele trebuie sa fie organizat ca o matrice care are in prima coloana valorile lui x (abscisa ordonata crescator), iar in coloanele n:2+1 cele n variabile cautate. Daca valoarea x se gaseste intre doua valori din prima coloana a tabelului "tab", functia returneaza o valoare interpolara liniar.

Exemplul 1.1. Sa se gaseasca valorile y care corespund lui x1= -1 si x2 = 3, din tabelul unidimensional de mai jos:

X -2 -1 0 2 4

Y 6 2 3 1 7

Se creeaza matricea coloana M, care are ca prima coloana elementele lui x ordonate crescator, iar a doua coloana elementului lui y in ordinea de asociere la x. Citirea din acest tabel a valorilor y1 si y2,ce corespund lui x1=-1 si x2=3, se face cu instructiunile:

M=[-2 -1 0 2 4; 6 2 3 -1 7];

M=M';

y1=tablel(M,-1)

y2=tablel(M,3)

obtinandu-se rezultatele :

y1=2 y2=3

1.2.Cautarea datelor in tabelele bidimensionale

Cautarea datelor in tabelele unidimensionale se face cu functia table2; se apeleaza cu sintaxa:

Z=table2(tab,x,y)

Tabelul bidimensional "tab" din care citesc datele trebuie sa fie organizat ca o matrice care are in prima coloana valorile x (ordonate crescator), iar in prima linie valorile y (ordonate crescator). Celelalte elemente din tabele sunt valorile z asociate perechilor (x,y). Elementul z(1,1) = 0.

Daca valoarea x sau y se gaseste intre doua valori din prima coloana sau linie a tabelului "tab", functia returneaza o valoare interpolara liniar.

Exemplul 1.2. Sa se citeasca valorile care corespund perechilor (x,y); (2,3), (2.5,3); (2.5,3.5), din urmatorul tabel bidimensional:

x/y 1 2 3 4

1 2 3 4 5

2 3 4 5 6

3 4 5 6 7

Se creeaza mai intai matricea N care constituie tabelul din care se citeste:

o elementul primei linii din prima coloana N(1,1)=0

o prima linie, mai putin primul element, contine elementele lui y ordonate crescator: N(1,2:n+1)=y(1:n).

o prima coloana, mai putin primul element, vor fi elementele lui x ordonate crescator: N(2:n+1,1)=x(1:n).

o celelalte elemente ale matricei, sunt elementele asociate perechilor (x,y).

Prin urmare matricea N este:

Cu urmatoarea secventa MATLAB:

N=[0,1,2,3,4; 1,2,3,4,5; 2,3,4,5,6; 3,4,5,6,7];

c1=table2(N,2,3)

c2=table2(N,2.5,3)

c3=table2(N,2.5,3.5)

se obtin rezultatele:

c1=5c2=5.5000 c3= 6

2.Interpolarea functiilor de o singura variabila

In acest subcapitol se prezinta trei tipuri de interpolari: liniara, spline cubica si polinomiala. In toate cazurile se presupune ca exista un set de date care reprezinta coordonatele (xi,yi). Obiectivul il constituie estimarea valorilor functiei f(x), pentru orice punct xa[xi,zi]. Curba de interpolare trece prin toate punctele care o definesc, legea de interpolare intre punctele putand fi liniara, cubica sau polinomiala.

Observații:

Interpolarea si aproximarea datelor

Download gratuit

Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.

Structură de fișiere:
  • MATLAB.doc
Alte informații:
Tipuri fișiere:
doc
Diacritice:
Da
Nota:
9/10 (1 voturi)
Nr fișiere:
1 fisier
Pagini (total):
6 pagini
Imagini extrase:
6 imagini
Nr cuvinte:
1 960 cuvinte
Nr caractere:
10 825 caractere
Marime:
37.43KB (arhivat)
Publicat de:
Dionisie Cojocaru
Nivel studiu:
Facultate
Tip document:
Laborator
Domeniu:
Limbaje de Programare
Tag-uri:
date, programare, matlab, limbaj de programare, interpolare, aproximare
Predat:
Facultatea de Electronica, Telecomunicatii si Tehnologia Informatiei , Universitatea Politehnica Bucuresti din Bucuresti
Specializare:
Ingineria informatiei
Materie:
Limbaje de Programare
Sus!