Vinnaren i pepparkakshustävlingen!
2012-02-27, 21:40
  #1
Medlem
Har en funktion f(x) = x^2(5-x^3)^2-76/9

Ska räkna ut arean under grafen mellan 0,8 och 1,2.

Försöker med trapz men får felmeddelande:
-"Error using trapz (line 59) LENGTH(X) must equal the length of Y in dim 2.".
Eller denna:
-"Undefined function 'max' for input arguments of type 'sym'. Error in trapz (line 43)
perm = [dim:max(ndims(y),dim) 1:dim-1];".

Har försökt olika varianter, typ denna:
syms x
x=0.8:0.05:1.2;
y='x.^2*(5-x.^3).^2-76/9';
Kör sen: z=trapz(x,y)

Försökt att förstå hjälpen men icke.
Citera
2012-02-27, 21:53
  #2
Medlem
dxdps avatar
Du ska inte köra syms x. Sen är din lösning lite felaktig. Kolla här:

x = 0.8:0.05:1.2 ;
y = x.^2.*(5-x.^3).^2-76/9 ;
trapz(x,y)

-"Error using trapz (line 59) LENGTH(X) must equal the length of Y in dim 2.".
Eller denna:

-> Beror på att x och y är olika långa. Dvs du gör fel när du anger y från x på något vis.

-"Undefined function 'max' for input arguments of type 'sym'. Error in trapz (line 43)
perm = [dim:max(ndims(y),dim) 1:dim-1];".

-> Beror på att du kört syms x. x och y ska vara siffror inte syms.

Edit: En elegantare lösning är naturligtvis

f = @(x) x.^2.*(5-x.^3).^2-76/9 ;
x = 0.5:0.05:1.2 ;
z = trapz(x,f(x)) alt byt denna rad mot
y = f(x) ;
z = trapz(x,f(x))
__________________
Senast redigerad av dxdp 2012-02-27 kl. 22:03.
Citera
2012-02-27, 23:19
  #3
Medlem
Ah txh!
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback