IX1304 Matematik,  Analys VT 2012

Jan-Olof Åkerlund,  jo@kth.se

Föreläsning 10 
Funktioner med flera variabler

Funktioner av flera variabler (Exempel med 2 variabler)

Givetvis kan vi definiera även sådana funktioner och uttryck i Mathematica.

Quit[]

funktion1[x_,y_]=(x^2)+(y^2)

Och använda dem

funktion1[2,4]
funktion1[2,4]==(2^2)+(4^2)

Ekvation med tilldelning

Med hjälp av funktionen kan vi bilda en ekvation och lösa den

lösning=y/.Solve[funktion1[x,y]==x,y]

Tack vare tilldelningen har vi ett uttryck på lösningen som vi kan använda

lösning[[1]]

Tilldelning med regel (utan ekvation)

Regler kan användas inte bara för ekvationer. Det är en generell funktion (Rule)

?Rule

värde=lösning[[2]]/.x->.6

lösning[[2]]
värde

Plotta ekvationens graf

ContourPlot[(x^2)+(y^2)==4,{x,-3,3},{y,-3,3}]

Koordinataxlar i stället för en ram

ContourPlot[(x^2)+(y^2)==4,{x,-3,3},{y,-3,3},Frame->False,Axes->True]

Plotta funktion av två variabler

?Plot3D

Plot3D[funktion1[x,y],{x,-5,5},{y,-5,5}]

Med axlar

Plot3D[funktion1[x,y],{x,-5,5},{y,-5,5},Boxed->False,AxesLabel->{x,y,z}]

Axlar som skär varandra i origo

Plot3D[funktion1[x,y],{x,-5,5},{y,-5,5},Boxed->False,AxesLabel->{x,y,x},AxesOrigin->{0,0,0}]

Och med ett namn på grafen

Plot3D[funktion1[x,y],{x,-5,5},{y,-5,5},Boxed->False,AxesLabel->{x,y,x},AxesOrigin->{0,0,0},PlotLabel->(x^2)+(y^2)]

och...

Plot3D[funktion1[x,y],{x,-5,5},{y,-5,5},Boxed->False,AxesLabel->{x,y,x},AxesOrigin->{0,0,0},PlotLabel->(x^2)+(y^2),BoxRatios->Automatic]

Några andra funktioner

Plot3D[x+y,{x,-3,3},{y,-3,3}]

Plot3D[(x^3)+(y^3),{x,-3,3},{y,-3,3}]

Bara en del av kurvan

Plot3D[{(x^3)+(y^3)∧x<0},{x,-3,3},{y,-3,3},AxesLabel->Automatic]

Plot3D[{(x^3)+(y^3)∧x<0∧y<1},{x,-3,3},{y,-3,3},AxesLabel->Automatic]

Plotta två funktioner

Plot3D[{funktion1[x,y],x-(y^3)},{x,-5,5},{y,-5,5},Boxed->False,AxesLabel->{x,y,x}]

Exempel med tre variabler

Funktion med tre variabler

funktion2[x_,y_,z_]=(x^3)-(y^2)+(z^3)

funktion2[a,b,c]

funktion2[2,3,4]

Plotta med tre variabler

Med ContourPlot3D kan vi plotta grafen för ekvationer  i (R^(3 ))

?ContourPlot3D

grafen för (x^2)+(y^2)+(z^2)=4  plottad som en yta

ContourPlot3D[(x^2)+(y^2)+(z^2)==4,{x,-3,3},{y,-3,3},{z,-3,3}]

ContourPlot3D[funktion2[x,y,z]==0,{x,-5,5},{y,-5,5},{z,-5,5}]

Plottning som nivåkurvor

Först ett exempel i (R^2)

?ContourPlot

(x^2)+(y^2)=h  för olika värden på h

Funktionen har alltså samma värde i alla punkter på en konturlinje

ContourPlot[(x^2)+(y^2),{x,-3,3},{y,-3,3}]

Och nu i (R^3)

ContourPlot3D[(x^2)+(y^2)+(z^2),{x,-3,3},{y,-3,3},{z,-3,3}]

ContourPlot3D[(x^2)+(y^2)+(z^2),{x,0,8},{y,-6,6},{z,-6,6}, BoxRatios->Automatic]

Och med vår funktion 2

ContourPlot3D[funktion2[x,y,z],{x,-5,5},{y,-5,5},{z,-5,5}]

ContourPlot3D[funktion2[x,y,z],{x,-5,5},{y,-5,5},{z,-5,5},Contours->10]

x-, y- och z-planen

plan=ContourPlot3D[y==1,{x,-3,3},{y,-3,3},{z,-50,50}]

Utan axlar och box

ContourPlot3D[{x==0,y==0,z==0},{x,-5,5},{y,-5,5},{z,-5,5},Boxed->False,Axes->False]

Plot3D[{(x^3)+(y^3)},{x,-3,3},{y,-3,3}]

Och med vår funktion

ContourPlot3D[{funktion2[x,y,z]==0,x==0,y==0,z==0},{x,-5,5},{y,-5,5},{z,-5,5},Boxed->False,Axes->False]

(x^3)+(y^3)

Plot3D[{(x^3)+(y^3)},{x,-3,3},{y,-3,3}]

?Mesh

Plot3D[{(x^3)+(y^3)},{x,-3,3},{y,-3,3},MeshFunctions->{#2&},Mesh->5]

?Mesh

Plot3D[{(x^3)+(y^3)},{x,-3,3},{y,-3,3},MeshFunctions->{#2&},Mesh->5,AxesOrigin->{0,0,0},AxesLabel->Automatic, PlotLabel->(x^2)+(y^2)]

Med y=1

Plot[{(x^3)+(1^3)},{x,-3,3}]

En annan funktion

Plot3D[(Sqrt[1-(x^2)-(y^2)])+1/(Sqrt[1+(x^2)+(y^2)]),{x,-3,3},{y,-3,3}]

Med nivåer

Plot3D[(Sqrt[1-(x^2)-(y^2)])+1/(Sqrt[1+(x^2)+(y^2)]),{x,-3,3},{y,-3,3},MeshFunctions->{#3&},Mesh->5]

...och en till

Plot3D[(Sqrt[1-(x^2)-(y^2)])+1/(Sqrt[1+(x^2)-(y^2)]),{x,-3,3},{y,-3,3}]

Plot3D[(Sqrt[1-(x^2)-(y^2)])+1/(Sqrt[1+(x^2)-(y^2)]),{x,-3,3},{y,-3,3},MeshFunctions->{#3&},Mesh->5]

Derivator

?D

Förstaderivator

funk= 2(x^4)+(y^3);

D[funk,x]
D[funk,y]

funk2= 2(x^4)(y^3);

D[funk2,x]
D[funk2,y]

Andraderivator med avseende på x

D[funk2,{x,2}]
D[funk2,x,x]

D[funk2,{x,2}]==D[funk2,x,x]

Andraderivator med avseende på x och y

D[funk2,x,y]
D[funk2,y,x]

D[funk2,x,y]==D[funk2,y,x]

Plot3D[(x^2)+3y,{x,0,5},{y,0,5},AxesLabel->{"x","y"}]

Exempel

funk5=(x^2)(E^(y^2));

D[funk5,y]
D[funk5,{y,2}]

Plot3D[funk5,{x,0,5},{y,0,2},AxesLabel->{"x","y"}]