[MatLab] interpolazione e zeri di una funzione
Ciao a tutti! Vorrei chiedere alcune delucidazioni in merito ai seguenti esercizi, in quanto non riesco a venirne a capo
1) Si consideri $f(x)=3x*cos(x)*sin(x)$. Si costruisca il polinomio p di grado 7 interpolante f su nodi equispaziati nell'intervallo $[0,2pi]$, includendo gli estremi nei nodi di interpolazione. Il valore di $|f(pi/2)-p(pi/2)|$ è... ?
Io ho svolto il seguente codice, tuttavia non so come calcolare l'ultimo quesito relativo alla differenza in valore assoluto delle due funzioni, in quanto non so individuare i valori di pi/2 nelle rispettive funzioni...
2) Determinare il numero degli zeri di $f(x)=e^(-cos(5x))*x-1$ ha nell'intervallo [0,2].
Per quanto riguarda il secondo quesito non so come determinare il numero degli zeri. Ho provato a cercare online e sono risalito alla function "fzero"; tuttavia, quando la utilizzo MatLab mi restituisce un messaggio di errore.
Potreste cortesemente aiutarmi, per favore?

1) Si consideri $f(x)=3x*cos(x)*sin(x)$. Si costruisca il polinomio p di grado 7 interpolante f su nodi equispaziati nell'intervallo $[0,2pi]$, includendo gli estremi nei nodi di interpolazione. Il valore di $|f(pi/2)-p(pi/2)|$ è... ?
Io ho svolto il seguente codice, tuttavia non so come calcolare l'ultimo quesito relativo alla differenza in valore assoluto delle due funzioni, in quanto non so individuare i valori di pi/2 nelle rispettive funzioni...
z = linspace(0,2*pi); f = @(x) 3*x.*cos(x).*sin(x); fz = f(z); x = linspace(0,2*pi,8); %(grado del polinomio + 1) nodi di interpolaizone y = f(x); c = polyfit(x,y,z); p = polyval(c,z);
2) Determinare il numero degli zeri di $f(x)=e^(-cos(5x))*x-1$ ha nell'intervallo [0,2].
Per quanto riguarda il secondo quesito non so come determinare il numero degli zeri. Ho provato a cercare online e sono risalito alla function "fzero"; tuttavia, quando la utilizzo MatLab mi restituisce un messaggio di errore.
Potreste cortesemente aiutarmi, per favore?

Risposte
Il primo punto dovrebbe essere semplicemente abs(f(pi/2) - polyval(c, pi/2)). Che dubbi hai al riguardo?
Sinceramente non ricordo metodi in matlab che restituiscono il numero di zeri in un intervallo.. Puoi provare a risolverlo in modo analitico o grafico immagino.
Sinceramente non ricordo metodi in matlab che restituiscono il numero di zeri in un intervallo.. Puoi provare a risolverlo in modo analitico o grafico immagino.
Risolti entrambi, grazie molte! Nessun dubbio, solo che non sapevo esprimerlo in linguaggio MatLab perché non ci è stato spiegato a lezione.
Grazie ancora!
Grazie ancora!