Ricavare l'equazione di una curva

L*u*k*e112
Ciao a tutti,
vi scrivo per il seguente problema:
ho un set di dati organizzati in 2 colonne, ad ogni X corrisponde la rispettiva Y.
Devo ricavare l'equazione della curva che descrive questa relazione.

Si tratta di valori relativi ad un legame cinematico, con andamento non lineare, lo si nota subito osservando i valori.

Mi sapreste indicare una via semplice per risolvere il problema?
Immagino che sia necessario usare un solutore, cosa consigliate?

Grazie.
Luca

Risposte
Seneca1
Non credo di aver capito bene. Il tuo è un problema di interpolazione?

L*u*k*e112
Scusami, cerco di rispiegarmi con un esempio.

Avendo questi dati sperimentali:

X Y
2 1000
3 980
4 930
5 860
6 750
7 620
8 460
9 270
10 70

Come faccio a ricavare l'equazione matematica che governa questo fenomeno?

gugo82
Mi spiace informarti che è improprio l'uso dell'articolo determinativo in "l'equazione matematica": infatti di funzioni che passano per i punti di coordinate $(X,Y)$ che riporti ce ne sono infinite.
Quindi il problema è mal posto, perchè i dati (rappresentati nella figura seguente) non determinano la soluzione in modo univoco.
[asvg]xmin=0;xmax=10;ymin=0;ymax=10;
axes("labels","grid");
dot([2,10]);
dot([3,9.8]);
dot([4,9.3]);
dot([5,8.6]);
dot([6,7.5]);
dot([7,6.2]);
dot([8,4.6]);
dot([9,2.7]);
dot([10,0.7]);[/asvg]
Sta a te decidere quale tipo di funzione vuoi e che metodo vuoi usare per fare un fitting dei dati, ovvero per trovare una curva che "approssimi" i tuoi dati.

Ad esempio, potresti usare un metodo come l'interpolazione di Newton, che ti fornirebbe un polinomio in $X$ di grado pari al numero di punti $-1$ (in questo caso di grado $8$) il cui grafico passa esattamente per i tuoi punti.

Oppure potresti usare il metodo delle spline cubiche, che ti fornirebbe una spline (ossia una funzione che a tratti coincide con un polinomio di terzo grado) il cui grafico passa esattamente per i tuoi punti.

O ancora, potresti usare un metodo di tipo minimi quadrati, che ti fornirebbe un polinomio di secondo grado (ossia una parabola) che non passa esattamente per i tuoi punti, ma minimizza l'errore che si commette approssimando ognuno dei tuoi punti col punto corrispondente sulla parabola...

Forse (soprattutto se devi fare un fitting per esperienze di laboratorio, tipo moto uniformemente accelerato o simili) conviene il metodo dei minimi quadrati.

L*u*k*e112
Gugo82,
ti ringrazio per la risposta e anche per la "tirata di orecchie"...
Dunque devo scegliere un metodo per creare una curva approssimante, che "inventi" la sua traiettoria nei punti non assegnati.
Ho vaghissime reminescenze di queste cose (esame di Calcolo Numerico con Scilab).... dovrei usare Scilab?
Secondo te è un lavoro complicato?

Grazie.

L*u*k*e112
Qualche idea?

gugo82
Prova con qualche software numerico.

Certo si potrebbe fare anche a mano, però è un po' lunga la cosa e non mi ricordo bene il procedimento (anch'io ho fatto Calcolo Numerico anni fa... :-D).
Ad ogni modo, consiglierei un approccio tipo minimi quadrati se non ti interessa necessariamente "passare" per i punti; altrimenti consiglierei spline cubiche.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.