19/07/2023, 15:45
warning off
f=@(x)((sin(x).*(cos(x)).^2)./(1+x.^2));
alpha=0; beta=2*pi;
figure(1)
fplot(f,[alpha,beta],'r--')
title('Grafico f e splines')
xlabel('asse x')
ylabel('asse y')
hold on
pause
t=linspace(alpha,beta,10000)';
for n=[3 5 7]
x=linspace(alpha,beta,n+1);
s=spline(x,f(x),t);
plot(t,s)
legend('f','n=3','n=5','n=7')
pause
a=0;
b=0.1;
tolla=1e-8;
tollr=0;
tollf=1e-8;
kmax=500;
S=spline(x,f(x));
[x_star]=bisezione(S,a,b,tolla,tollr,tollf,kmax);
disp([n,x_star,abs(0.01-ppval(S,x_star)),abs(0.01-f(x_star))])
end
function [x]=bisezione(S,a,b,tolla,tollr,tollf,kmax)
f_a=ppval(S,a)-0.01;
ind=-1;
for k=1:kmax
x=(a+b)/2;
y=ppval(S,x)-0.01;
if abs(y)<=tollf, ind=2; return, end
if b-a<= tolla+tollr*abs(a), ind=1; return, end
if f_a*y<0
b=x;
else
a=x;
f_a=y;
end
end
19/07/2023, 23:06
19/07/2023, 23:18
feddy ha scritto:Credo tu riesca a risponderti da solo. Le domande che ti devi fare sono: "Dove, nel codice, sto valutando in un punto? Sto rigenerando la spline per ogni punto in cui valuto ?"
20/07/2023, 12:21
20/07/2023, 20:13
Testo del problema ha scritto:La procedura non rigenera l'intera spline ogni volta che la stessa spline dev'essere valutata in un punto.
andreadel1988 ha scritto:l'unico mio dubbio è che prima la genero per fare il grafico e dopo la rigenero per la seconda parte ed è come se l'avessi rigenerata due volte (per iterazione), anche se non per la valutazione.
20/07/2023, 20:17
feddy ha scritto:Scusami ma siccome sono abbastanza occupato durante la giornata, non ho il tempo di rispondere al volo In ogni caso, volevo che tu ti rispondessi da solo a questo problema non per pigrizia, ma perché sono domande semplici che ti permettono di acquisire sicurezza. Riuscire a ripercorrere quanto tu stesso hai scritto aiuta in primis te perché ti obbliga ad essere il primo revisore del tuo stesso lavoro. Avere dubbi va benissimo, non fraintedere!
Ad ogni modo, il testo dice:Testo del problema ha scritto:La procedura non rigenera l'intera spline ogni volta che la stessa spline dev'essere valutata in un punto.
Tu hai poi notato:andreadel1988 ha scritto:l'unico mio dubbio è che prima la genero per fare il grafico e dopo la rigenero per la seconda parte ed è come se l'avessi rigenerata due volte (per iterazione), anche se non per la valutazione.
Sei d'accordo che dalla parte in grassetto in nero segue logicamente che hai soddisfatto la richiesta? Il testo dice chiaramente che non va duplicata **per le valutazioni**. Tu, per le valutazioni, hai verificato che non l'hai duplicata.
20/07/2023, 20:21
20/07/2023, 20:25
feddy ha scritto:Non conosco cosa faccia MatLab. Come hai detto giustamente, va guardata la documentazione. In ogni caso, poiché come argomento della funzione c'è la spline stessa **dubito fortemente** che questa venga gettata via e all'interno della funzione vegna ricreata da capo, soprattutto perché questa funzione da sola non ha in input abbastanza dati per ricreare la spline
20/07/2023, 20:31
Skuola.net News è una testata giornalistica iscritta al Registro degli Operatori della Comunicazione.
Registrazione: n° 20792 del 23/12/2010.
©2000—
Skuola Network s.r.l. Tutti i diritti riservati. — P.I. 10404470014.
Powered by phpBB © phpBB Group - Privacy policy - Cookie privacy
phpBB Mobile / SEO by Artodia.