allineare "grafici"

Sep 06, 2011 2 Replies

ciao!



supponendo di avere a disposizione poca potenza di calcolo (un dsp a



16 bit tanto per dare un target, 40MHz), quale pu=F2 essere una buona idea per "sovrapporre" 2 funzioni simili?

ogni funzione =E8 basata su 2 array di valori:



- un array (Y) contiene campioni di tensione acquisiti tramite ADC



- l'altro array (X) contiene l'istante di tempo (hh:mm:ss convertiti in secondi) dell'acquisizione



esempio: Y1=3D[100,120,90,102,1000,1001,1002,110,100] X1=3D[0,30,60,89,125,150,180,209,242] graficando idealmente questa matrice sul piano cartesiano si ottiene la curva1



Y2=3D[103,121,91,101,999,999,1002,111,85] X2=3D[20,50,81,110,141,170,190,227,269] graficando idealmente questa matrice sul piano cartesiano si ottiene la curva2



le 2 curve sono simili, shiftate nel tempo ma simili; a me servirebbe trovare il dt ottimale da sommare algebricamente agli elementi di X2 per ottenere uno shift temporale e sovrapporre al meglio le 2 curve; indicativamente 1000 elementi per gli array X/Y



se avete idee...


-ice-


Il 06/09/2011 17:16, ice ha scritto:

My 2c...

Simili o identiche? (per capire, quale e' la relazione tra le due, solo una trasformazione lineare, oppure qualcosa di piu' complesso e "quasi" lineare?)

DeltaT massimo?

Il DeltaT e' costante?

Quanto tempo hai per trovare il DeltaT?

Quale e' il prezzo da pagare per un errore nel DeltaT?

si esatto, detto pi=F9 rigorosamente potremmo vedere i 2 spazi vettoriali correlati tra loro da una trasformazione lineare del tipo curva2=3DK*(curva1+n(X1)) dove K sar=E0 in genere prossimo all'unit=E0 (esempio: 1.2) e n(X1) =E8 una funzione che sovrappone algebricamente del rumore (diciamo max 10% in modulo)

quindi non sono identiche ma scalandole di fattore K e applicandoci una spline sarebbero pressoch=E8 identiche

in linea di principio il deltaT =E8 costante (es: 30 secondi) e i campionamenti avvengono con frequenza 1/deltaT; bisogna per=F2 considerare che talvolta l'istante di campionamento potrebbe essere anticipato/posticipato di un 10% (es: 27 secondi dopo il precedente anzich=E8 30 secondi) oppure saltato del tutto; questo avviene per entrambe le curve; non =E8 possibile sapere invece che intervallo di tempo esiste tra il primo campionamento della curva1 e quello della curva2; ovvero: il primo campionamento della curva1 avviene quando nel mondo reale sono le 4:58:00am mentre per il rtc del sistema1 sono le 5am (05:00:00

--> X1[0]=3D18000) il primo campionamento della curva2 avviene quando nel mondo reale sono le 4:03:00am mentre per il rtc del sistema2 sono le 4am (04:00:00

--> X2[0]=3D14400)

al momento =E8 uno studio di fattibilit=E0 ma non c'=E8 richiesta di lavorare in pseudo-realtime; posso archiviare tutto e elaborare in seguito;

se per deltaT intendiamo il periodo tra un campionamento e l'altro della stessa curva allora diciamo che posso permettermi di eliminare qualche punto scomodo e sostituirlo usando la media fra precedente e successivo (idem per il relativo valore in Y)

grazie

-ice-

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required