> > On Thu, Feb 08, 2001 at 08:46:18AM +0100, Marco Visentin wrote: > > > Se vuoi ricavare una retta da punti sul piano, o nello spazio -->ne > > servono e ne bastano 2<--. La formula nel piano e' piuttosto > > semplice. Chiama il primo punto P_0=(x_0,y_0) ed il secondo > > p_1=(x_1,y_1), allora la retta che passa per P_0 e P_1 ha equazione: > > Credo lui intenda un algoritmo per trofare la funzione di grado N che > descrive la curca passante per tutti i punti, ovviamente se N < 2 si > fa presto :-) > > Ciao > -- > Daniele > --- http://www.grinta.net --- > > -- > Per iscriversi (o disiscriversi), basta spedire un messaggio con SOGGETTO > "subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxxxxxx > > Se N<2 si tratta di N=0 (nessun punto) oppure N=1 (un punto), e la cosa si commenta da se. Se si tratta di piu' punti, come detto, bisogna distinguere se vuoi una funzione che passa per i punti o fra i punti. Esempio: se hai i punti (1,2) (1,3) (2,5), non esiste una funzione y=f(x) che passa 'per' i punti (perche' dovresti avere f(1)=2 e f(1)=3 contemporaneamente), ma ne esistono quante ne vuoi che passano fra i punti considerati. Nel caso in cui tu abbia N > 2 punti ci puoi far passare un polinomio di grado N-1 (per la cronaca si tratta della formula di Lagrange). Se hai n punti P_1=(x_1,y_1), P_2=(x_2,y_2),... P_n=(x_n,y_n) si tratta appunto del polinomio: (x-x_2)(x-x_3)....(x-x_n) p(x) = -------------------------------- y_1 + (manca x-x_1) (x_1-x_2)(x_1-x_3)....(x_1-x_n) (x-x_1)(x-x_3)....(x-x_n) -------------------------------- y_2 + (manca x-x_2) (x_2-x_1)(x_2-x_3)....(x_2-x_n) ..... (x-x_1)(x-x_2)....(x-x_(n-1)) -------------------------------- y_n + (manca x-x_n) (x_n-x_1)(x_n-x_2)....(x_n-x_(n-1)) Pero' tornando a prima, devi avere tutte le x_i diverse fra loro.... Ma di qui si potrebbero produrre volumi di considerazioni su quanto sia adeguato un polinomio che passa per i punti, piuttosto che un suo smoothing... quindi trovo che tranne in casi banali non si possa dire "la formula che devi usare e' questa" quanto si debba conoscere prima il problema che si vuole risolvere. Comunque sui tre riferimenti consigliati nella mail precedente queste considerazioni vengono ampiamente commentate ed illustrate da esempi. marco -- Per iscriversi (o disiscriversi), basta spedire un messaggio con SOGGETTO "subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxxxxxx