[MATLAB e/o Calcolo Numerico] Piccolo dubbio su spline
Ciao a tutti!
ho un dubbio su un esercizio di calcolo numerico che chiede di disegnare il grafico della splice che interpola la funzione $(1+x^2)*(log(1+x))$ in 8 punti equidistanti in [0,1];
non so perchè, ma quando faccio:
mi da come errore:
il problema me lo da il logoratimo, perchè, infatti, se lo tolgo, tutta funziona normalmente...
è strano e non riesco a capirlo... mi spiegate perchè?
grazie a tutti!
ho un dubbio su un esercizio di calcolo numerico che chiede di disegnare il grafico della splice che interpola la funzione $(1+x^2)*(log(1+x))$ in 8 punti equidistanti in [0,1];
non so perchè, ma quando faccio:
f = inline('(1 + x.^2)*log(1+x)') z = linspace(0,1,8) x = linspace(0,1) p = f(x)
mi da come errore:
??? Error using ==> inlineeval Error in inline expression ==> (1 + x.^2)*log(1+x) ??? Error using ==> mtimes Inner matrix dimensions must agree. Error in ==> inline.subsref at 25 INLINE_OUT_ = inlineeval(INLINE_INPUTS_, INLINE_OBJ_.inputExpr, INLINE_OBJ_.expr); Error in ==> spline_esercizio at 8 p = f(x)
il problema me lo da il logoratimo, perchè, infatti, se lo tolgo, tutta funziona normalmente...
è strano e non riesco a capirlo... mi spiegate perchè?
grazie a tutti!

Risposte
Secondo me semplicemente è .* in luogo di *, perchè devi specificare la moltiplicazione componente per componente tra due vettori, senza ambiguità. Sbaglio?
f = inline('(1 + x.^2).*log(1+x)') z = linspace(0,1,8) x = linspace(0,1) p = f(x)
si è vero, grazie mille!!!
ci ho perso un'ora ed alla fine non sapevo più cosa fare...
ti ringrazio!
ci ho perso un'ora ed alla fine non sapevo più cosa fare...
ti ringrazio!
