Invertire una funzione in Matlab

Messaggioda Marco_math » 16/02/2018, 18:47

Salve,
ho un problema da risolvere in ambiente matlab (ma la soluzione può essere data anche se non lo si conosce).
Ho un vettore di 19 elementi. Se lo grafico al variare dell'indice di riga ho un grafico che unisce i punti del vettore: il grafico mostra che l'andamento è strettamente monotono crescente quindi il grafico è una funzione invertibile. io voglio trovare l'inversa di questa funzione (funzione che devo costruire dato il vettore di 19 elementi di partenza, e poi invertirla) e poi mi serve valutare questa funzione in alcuni punti.
Suggerimenti?
Marco_math
Starting Member
Starting Member
 
Messaggio: 1 di 2
Iscritto il: 16/02/2018, 18:36

Re: Invertire una funzione in Matlab

Messaggioda feddy » 17/02/2018, 13:03

Dovresti aver postato nella sezione di Analisi Numerica...

Basta invertire il vettore delle "x" con quello delle "y", che è dato da $y_i=f(x_i)$. Nell'esempio che ti propongo userò una funzione continua, sebbene il tuo sia un caso più delicato, perché bisognerebbe cercare di capire come interpolare.

Codice:
t=linspace(0,1,1000);

f=@(x) x.^3; %monotona in [0,1]
y=f(t); %crea il vettore yi

plot(t,f(t),'g',y,t,'r')


Il grafico prodotto è questo, dove c'è evidentente simmetria rispetto alla bisettrice

Immagine
Avatar utente
feddy
Moderatore
Moderatore
 
Messaggio: 1777 di 5934
Iscritto il: 26/06/2016, 00:25
Località: SISSA


Torna a Algebra, logica, teoria dei numeri e matematica discreta

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite