\mnb150ÿ{\rtf1\ansi\deff0\deftab720{\fonttbl{\f0\fswiss MS Sans Serif;}{\f1\froman\fcharset2 Symbol;}{\f2\fswiss\fprq2\fcharset238 System;}{\f3\fswiss\fprq2\fcharset238 Verdana;}{\f4\fmodern\fprq1 Lucida Sans Typewriter;}} {\colortbl\red0\green0\blue0;\red0\green0\blue128;\red255\green0\blue0;\red192\green192\blue192;} \deflang1045\pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}reset():TEXTWIDTH :=80 : \par \pard\ri4\plain\f3\fs24\cf1\b \par \plain\f3\fs36\cf1\b Grafika dla matematyka I \plain\f3\fs24\cf1\b \par \par 5.1 Kamera Wirtualna \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}f := (x,y) -> x^2 + y^2: \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 g := (x,y) -> -x^2 + y^2: \par h := (x,y) -> x^2 - y^2: \par p := (x,y) -> -x^2 - y^2: \par \pard\ri4\plain\f3\fs24\cf1\b \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}plotfunc3d( \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 f(x,y),g(x,y),h(x,y),p(x,y), \par x=-PI..PI, y=-PI..PI \par ) \par \pard\ri4\plain\f3\fs24\cf1\b \par KOMENTARZ: Wszystkie parametry grafiki mog\'b9 by\'e6 \par modyfikowane w VCam. \par KOMENTARZ: W Kamerze Wirtualnej nie mo\'bfemy utworzy\'e6 \par nowych obiekt\'f3w graficznych, ale mo\'bfemy \par doda\'e6 nowe kamery i \'9cwiat\'b3a \par \par 5.2 Struktura sceny graficznej MuPADa \par \par 5.3 Galeria obiekt\'f3w matematycznych \par \par KOMENTARZ: obiekt graficzny a klasa \par \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}plot::Function3d::LineColor=RGB::Blue: \par {\pntext\f1\'b7\tab}info(plot) \par \pard\ri4\plain\f3\fs24\cf1\b \par 5.3.1 Function2d \par \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}G1 := plot::Function2d(sin(x), x=-5..5): \par {\pntext\f1\'b7\tab}G2 := plot::Function2d(sin(x), x=-5..5, \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 LineColor=RGB::Blue, \par LineWidth=0.3*unit::mm \par ): \par \par G3 := plot::Function2d(sin(2*x), x=-3..3, \par LineColor=RGB::Red, \par LineWidth=0.6*unit::mm \par ): \par \par G4 := plot::Function2d(sin(3*x), x=-2..2, \par LineColor=RGB::Brown, \par LineWidth=0.8*unit::mm \par ): \par G5 := plot::Function2d(sin(4*x), x=-1..1, \par LineColor=[0.5, 0.5, 0.5], \par LineWidth=1*unit::mm \par ): \par \par plot(G1,G3,G4,G5) \par \pard\ri4\plain\f3\fs24\cf1\b \par 5.3.2 Curve2d \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}C1 := plot::Curve2d( \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 [2*sin(3*t), 4*cos(5*t)], t=0..2*PI \par ): \par plot(C1) \par \pard\ri4\plain\f3\fs24\cf1\b \par 5.3.3 Polar \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}P1 := plot::Polar( \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 [sin(5*alfa)+cos(3*alfa), alfa], alfa=0..6*PI, \par LineWidth=0.3 \par ): \par plot(P1) \par \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}P1 := plot::Polar([1, alfa], alfa=0..2*PI, \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 LineWidth=0.3 \par ): \par \par P2 := plot::Polar( \par [sin(2*alfa), alfa], alfa=0..2*PI, \par LineWidth=0.5 \par ): \par \par P3 := plot::Polar( \par [exp(-1/u),u], u=0.1..4*PI, \par LineWidth=1 \par ): \par plot(P1, P2, P3) \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}a1 := plot::Polar([x,x], x=-2*PI..2*PI): \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 a2 := plot::Polar([x^2,x], x=-2*PI..2*PI): \par a3 := plot::Polar([x^3,x], x=-2*PI..2*PI): \par plot(a1,a2,a3) \par \pard\ri4\plain\f3\fs24\cf1\b \par 5.3.4 Implicit2d \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}reset(): \par {\pntext\f1\'b7\tab}I1 := plot::Implicit2d(x^2+y^2=1, \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 x=-2..2, y=-2..2, \par LineColor=RGB::Red \par ): \par plot(I1, Scaling=Constrained) \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}I1 := plot::Implicit2d(x^2+y^2=1, x=-2..2, y=-2..2, \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 LineColor=RGB::Red \par ): \par \par I2 := plot::Implicit2d(x^3+y^3=1, x=-2..2,y=-2..2, \par LineColor=RGB::Blue, \par LineWidth=0.5 \par ): \par \par I3 := plot::Implicit2d(x^4+y^4=1, x=-1..1, y=-1..1, \par LineColor=RGB::Green, \par LineWidth=0.7 \par ): \par \par I4 := plot::Implicit2d(x^11+y^11=1, x=-2..2,y=-2..2, \par LineColor=RGB::Brown, \par LineWidth=0.9 \par ): \par \par plot(I1, I2, I3, I4, Scaling=Constrained) \par \pard\ri4\plain\f3\fs24\cf1\b \par 5.3.5 Hatch \par \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}reset(): \par {\pntext\f1\'b7\tab}F1 := plot::Function2d(x^2+1, x=-2..2): \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 F2 := plot::Function2d(0.5*x^2+1,x=-2..2): \par F3 := plot::Function2d(x, x=-2..2, LineWidth=0.5): \par \par H1 := plot::Hatch(F1,F2, -2..2, \par FillPattern=Solid, \par FillColor=RGB::Gold \par ): \par \par H2 := plot::Hatch(F3, -2..2, \par FillPattern=VerticalLines, \par FillColor=[0.0, 0.0, 1] \par ): \par \par plot(H1,H2, F1, F2, F3) \par \pard\ri4\plain\f3\fs24\cf1\b \par \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}C1 := plot::Curve2d( \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 [cos(3*t), sin(5*t)], t=0..2*PI \par ): \par \par H4 := plot::Hatch(C1, -0.6..0.6, \par FillPattern=Solid \par ): \par \par plot(H4, C1, AxesInFront=TRUE) \par \pard\ri4\plain\f3\fs24\cf1\b \par 5.3.6 Inequality \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}I1 := plot::Inequality(x^2-2*x+3*y>=0, \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 x=-1..1, y=-1..1, \par XMesh=100, YMesh=100, \par FillColorTrue=[1,0,0], \par FillColorFalse=[0.8,0.8,0.8] \par ): \par plot(I1) \par \pard\ri4\plain\f3\fs24\cf1\b \par 5.3.7 Histogram2d \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}dane := [frandom() $ k=1..100]: \par {\pntext\f1\'b7\tab}H1 := plot::Histogram2d(dane, Cells=[50]): \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 plot(H1) \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}dane := [frandom() $ k=1..10000]: \par {\pntext\f1\'b7\tab}H2 := plot::Histogram2d(dane, Cells=[50]): \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 plot(H2) \par \pard\ri4\plain\f3\fs24\cf1\b \par 5.3.8 Boxplot \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}dane1 := [frandom() $ k=1..10]: \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 dane2 := [frandom() $ k=1..10]: \par dane3 := [frandom() $ k=1..10]: \par B1 := plot::Boxplot(dane1, dane2, dane3): \par plot(B1) \par \pard\ri4\plain\f3\fs24\cf1\b \par 5.3.9 Function3d \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Kol := (x,y,z)->[abs(sin(x)),abs(sin(y)),abs(sin(z))]: \par {\pntext\f1\'b7\tab}F1 := plot::Function3d(1.7*x*exp(-1/2*(x^2+y^2)), \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 x=-4..4, y=-4..4, \par FillColorFunction=Kol \par ): \par F2 := plot::Function3d(-1, x=-4..4, y=-4..4): \par plot(F1, F2) \par \pard\ri4\plain\f3\fs24\cf1\b KOMENTARZ: MuPAD u\'bfywa technologii OpenGL \par (om\'f3wi\'e6 konsekwencje) \par \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Kol1 := (x,y,z)->[abs(sin(x)),abs(sin(y)),abs(sin(z)),0.8]: \par {\pntext\f1\'b7\tab}F1 := plot::Function3d(1.7*x*exp(-1/2*(x^2+y^2)), \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 x=-4..4, y=-4..4, \par XMesh=50, \par YMesh=50, \par FillColorFunction=Kol1 \par ): \par F2 := plot::Function3d(-1, x=-4..4, y=-4..4): \par plot(F1, F2) \par \pard\ri4\plain\f3\fs24\cf1\b \par \par 5.3.10 Surface \par \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Kol2 := (u,v)->[u-trunc(u), v-trunc(v), 0 ]: \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 S1 := plot::Surface( \par [sin(u)*sin(v), \par sin(u)*cos(v), \par cos(u)*sin(v)], \par u=0..PI, v=0..PI, \par FillColorFunction=Kol2 \par ): \par plot(S1) \par \pard\ri4\plain\f3\fs24\cf1\b \par 5.3.11 Implicit3d \par \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}SteinerEq := (y^2*z^2 + z^2*x^2 + x^2*y^2 + 2*x*y*z = 0) \par {\pntext\f1\'b7\tab}Steiner := plot::Implicit3d( \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 SteinerEq, \par x=-1..1, y=-1..1, z=-1..1, \par MeshVisible=TRUE, \par XMesh=25, YMesh=25, ZMesh=25 \par ): \par plot(Steiner) \par \pard\ri4\plain\f3\fs24\cf1\b \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Kol3 := (u,v,x,y,z)->[abs(x),abs(y),abs(z)]: \par {\pntext\f1\'b7\tab}SteinerParam:=plot::Surface( \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 [sin(2*u)*(cos(v))^2, \par sin(u)*sin(2*v), \par cos(u)*sin(2*v)], \par u=-PI/2..PI/2, \par v=-PI/2..PI/2, \par FillColorFunction=Kol3, \par Scaling=Constrained, \par UMesh=50, \par VMesh=50 \par ): \par plot(SteinerParam) \par \pard\ri4\plain\f3\fs24\cf1\b \par \par 5.3.12 Spherical \par \par Przyk\'b3ad: r\'f3wnanie z=xy we wsp\'f3\'b3rz\'eadnych sferycznych \par \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}p := x -> abs(5*x - trunc(5*x)): \par {\pntext\f1\'b7\tab}Kol4 := (u,v,x,y,z)->[p(x*y),p(y*z),p(z*x)]: \par {\pntext\f1\'b7\tab}Shell := plot::Spherical( \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 [u*v,u,v],u=0..2*PI,v=0..PI, \par //[sin(3*u)+cos(5*v),u,v],u=0..2*PI,v=0..PI, \par FillColorFunction=Kol4 \par ): \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}plot( \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 Shell, \par Axes=Origin, \par AxesLineWidth=0.7, \par AxesTips=TRUE \par ) \par \pard\ri4\plain\f3\fs24\cf1\b \par Animacja zakresu zmiennych \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Shell := plot::Spherical( \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 [u*v,u,v], u=0..PI, v=0..a, a=0..PI, \par FillColorFunction=Kol4 \par ): \par plot(Shell) \par \pard\ri4\plain\f3\fs24\cf1\b \par 5.3.13 Cylindrical \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}reset(): \par \pard\ri4\plain\f3\fs24\cf1\b \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Kol5 := (u,z)-> \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 [abs(1-z/PI),abs(1-u/PI),abs(u/PI)]: \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}CylSurf:=plot::Cylindrical( \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 [3*sin(2*z)+2*cos(3*u), u, z], \par u=0..PI, z=0..PI, \par Scaling=Unconstrained, \par FillColorFunction=Kol5 \par ): \par plot(CylSurf) \par \pard\ri4\plain\f3\fs24\cf1\b \par \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}Kol6:= (u,z) -> [abs(1-z/PI) ,abs(1-u/PI),abs(u/PI)]: \par {\pntext\f1\'b7\tab}czapka := plot::Cylindrical( \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 [t*v, sin(t), sin(v)], \par t=-2*PI..2*PI, v=0..2*PI, \par Scaling=Unconstrained, \par FillColorFunction=Kol6, \par UMesh=50, \par VMesh=50 \par ): \par plot(czapka) \par \pard\ri4\plain\f3\fs24\cf1\b \par 5.3.14 Curve3d i Tube \par \par Wychodzimy od r\'f3wniania parametrycznego krzywej w R3 \par x=rsin atcos bt, \par y=rsin atsin bt, \par z=rcos at. \par \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}a := 1: b := 2.5: r := 10: \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 //a := 8: b := 3.5: r := 3: \par x := t -> r*sin(a*t)*cos(b*t): \par y := t -> r*sin(a*t)*sin(b*t): \par z := t -> r*cos(a*t): \par C3D := plot::Curve3d([x(t),y(t),z(t)], t=0..4*PI, \par LineWidth=0.8, \par LineColorType=Dichromatic \par ): \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}plot(C3D) \par \pard\ri4\plain\f3\fs24\cf1\b \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}a := 1: \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 b := 2.5: \par r := 10: \par \par x := t -> r*sin(a*t)*cos(b*t): \par y := t -> r*sin(a*t)*sin(b*t): \par z := t -> r*cos(a*t): \par \par T1 := plot::Tube( \par [x(t),y(t),z(t)], 1, t=0..4*PI, \par UMesh=121 \par ): \par \par plot(T1) \par \pard\ri4\plain\f3\fs24\cf1\b \par \pard\li300\ri5\fi-300{\*\pn\pnlvlblt\pnf1\pnindent300{\pntxtb\'b7}}\plain\f4\fs28\cf2 {\pntext\f1\'b7\tab}a := 1: \par \pard\li600\ri1\fi-300\plain\f4\fs28\cf2 b := 2.5: \par r := 10: \par x := t -> r*sin(a*t)*cos(b*t): \par y := t -> r*sin(a*t)*sin(b*t): \par z := t -> r*cos(a*t): \par T2 := plot::Tube( \par [x(t),y(t),z(t)], sin(5*b*t)+1, t=0..4*PI, \par UMesh=221 \par ): \par plot(T2, Axes=None) \par \pard\ri4\plain\f3\fs24\cf1\b \par \par }