ESERCIZIO DI MATLAB
buonasera a tutti, dovrei elaborare un breve programmino in MATLAB che consiste nel calcolo del TIR di un cash flow. Si tratta di implementare un algoritmo che ti consenta di risolvere col metodo di bisezione una equazione del genere: $ sum_(i = \0 ) (Ci)/(1+r)^i = 0 $ , con i che va da 0 a n, e con Ci ed n che sarebbero valori arbitrari arbitrario da inserire successivamente (nota bene, Ci non è un prodotto, la i sarebbe un pedice), mentre $ -1 < r < 1 $ . Se riusciste a spiegarmi cosa fare e in che modo mi sareste di grande aiuto. Per cui vi ringrazio per l'attenzione, e vi auguro buona serata
Risposte
Il modo più conveniente di scrivere il programma penso sia questo:
crei una function che prende in input i valori dei parametri e all'interno svolgi questi passaggi
-costruisci l'equazione usando questi parametri in modo opportuno
-risolvi l'equazione con il metodo di bisezione
-trasferisci all'output della function la soluzione trovata.
Non hai specificato se l'algoritmo di bisezione lo usi "già fatto" o se devi implementarlo tutto tu, in ogni caso forse può essere utile utilizzare una function separata da richiamare all'interno del programma.
crei una function che prende in input i valori dei parametri e all'interno svolgi questi passaggi
-costruisci l'equazione usando questi parametri in modo opportuno
-risolvi l'equazione con il metodo di bisezione
-trasferisci all'output della function la soluzione trovata.
Non hai specificato se l'algoritmo di bisezione lo usi "già fatto" o se devi implementarlo tutto tu, in ogni caso forse può essere utile utilizzare una function separata da richiamare all'interno del programma.