Građevinski fakultet Sveučilišta u Zagrebu
Osnove inženjerske informatike II (Mathematica)
7. vježbe

2D grafika

Graphics

Zadatak 1.

Nacrtajte sljedeće prometne znakove

znak1=Graphics[{{Black,Circle[{0,0},5.1]},
{Red,Disk[{0,0},5]},
{White,Disk[{0,0},4]}}]

znak2=Graphics[{{Black,Circle[{0,0},5.1]},
{Red,Disk[{0,0},5]},
{White,Polygon[{{-4,-0.6},{-4,0.6},{4,0.6},{4,-0.6}}]}}]

GraphicsRow[{znak1,znak2}]

ParametricPlot

Zadatak 1.

Nacrtajte krivulju zadanu parametarskim jednadžbama: 
	 x(t) = cost - (((sin^2)t)/(Sqrt[2]))
	  y(t) = sint cost,   t ϵ [0,2π].
Obojite ju crveno.

ParametricPlot[{Cos[t]-Sin[t]^2/Sqrt[2],Cos[t]*Sin[t]},{t,0,2Pi},PlotStyle->Red]

Zadatak 2.

Na istoj slici nacrtajte jediničnu kružnicu i dvije astroide (a=1 i a=2). Kružnicu obojite crvenom, a astroide plavom bojom.
Uputa: Parametarske jednadžbe astroide su
	 x(t)=a·(cos^3)t
	  y(t)=a·(sin^3)t,   tϵ[0,2π].

astroida[a_]:={a*Cos[t]^3,a*Sin[t]^3}

ParametricPlot[{astroida[1],{Cos[t],Sin[t]},astroida[2]},{t,0,2Pi},PlotStyle->{Hue[0.7],Hue[1]}]

Zadatak 3.

Pomoću funkcije Manipulate napravite animaciju iscrtavanja elipse kojoj su poluosi a=3  i  b=2  parelelne s osi x, odnosno  y,  a koordinate središta (2, -1).
Uputa: Parametarske jednadžbe elipse su
	 x(t)=a·cost+p
	  y(t)=b·sint+q,   t ϵ [0,2π].

Manipulate[ParametricPlot[{3Cos[u]+2,2Sin[u]-1},{u,0,t},PlotRange->{{-1,5.1},{-3.1,1}}],{t,0.01,2Pi}]

Zadaci za vježbu

Zadatak 1.

Koristeći naredbu ParametricPlot nacrtajte hiperbolu kojoj su poluosi a=3  i  b=2  parelelne s osi x, odnosno  y,  a koordinate središta (-3, 3).
Neka jedinice na osima budu jednake.
Uputa: Parametarske jednadžbe hiperbole su
	 x(t)=a·sect+p
	  y(t)=b·tant+q,   t ϵ [0, 2π].

ParametricPlot[{3Sec[t]-3,2Tan[t]+3},{t,0,2Pi},AspectRatio->Automatic]

Zadatak 2.

Nacrtajte krivulju kojoj su parametarske jednadžbe
	 x(t)=sect
	  y(t)=csct,   tϵ[0,2π].

Pomoću opcije PlotRange nacrtajte ju u području [-5,5]×[-5,5].
Što znači upozorenje koje vam Mathematica ispisuje?

ParametricPlot[{1/Cos[t],1/Sin[t]},{t,0,2Pi},AspectRatio->Automatic,PlotRange->{{-5,5},{-5,5}}]

PolarPlot

Zadatak 1.

Polarna  jednadžba krivulje je  r(φ)=cos(e·φ).
Nacrtajte tu krivulju za  φϵ[0,30 π],  obojite ju crveno na žutoj podlozi i neka Mathematica pri tom ne iscrtava koordinatne osi.

PolarPlot[Cos[E*u],{u,0,30Pi},
PlotStyle->Red,Background->Yellow,Axes->None]

Zadatak 2.

Polarna  jednadžba logaritamske spirale je 
 r(φ)=(a^φ).
Na istoj slici nacrtajte 2 logaritamske spirale  (za a=(10/9) i a=(9/10)), za φϵ[0,8π],  i obojite ih crvenom i plavom bojom.

PolarPlot[{(10/9)^u,(8/9)^u},{u,0,8Pi},PlotStyle->{Hue[1],Hue[0.7]}]

Zadatak 3.

Pomoću funkcije Manipulate pokažite kako se, za interval [0,4π], mijenja oblik krivulje čija je polarna jednadžba
r(φ)= a +cos φ,
ako realni parametar a poprima vrijednosti između 0 i 2.
Neka za svaku od dobivenih krivulja Mathematica prikazuje područje (-1.2,3)×(-2.2,2.2).
(opcija PlotRange)

Manipulate[
PolarPlot[a+Cos[t],{t,0,4Pi},PlotRange->{{-1.2,3},{-2.2,2.2}}],
{a,0,2}]

Zadaci za vježbu

Zadatak 1.

Polarna  jednadžba krivulje je  r(φ)=(e^(sint)) - 2cos4t + (sin^5)((t-π)/24).
Nacrtajte tu krivulju za  tϵ[0, 9π],  obojite ju plavo na svijetlo plavoj podlozi i neka Mathematica pri tom ne iscrtava koordinatne osi.

PolarPlot[Exp[Sin[t]]-2Cos[4t]+Sin[(t-Pi)/24]^5,{t,0,9Pi},PlotStyle->Blue,Background->LightBlue,Axes->None]

Zadatak 2.

Polarna  jednadžba krivulje je 
 r(u)=sin 3u, u ∈ [0, π].
Pomoću funkcije Manipulate rotirajte tu krivulju oko ishodišta koordinatnog sustava. Neka je krivulje crvena, a podloga crna.

Manipulate[
PolarPlot[Sin[3u+v],{u,0,Pi},
PlotStyle->{Red,AbsoluteThickness[2]},Background->Black,Axes->None,PlotRange->{{-1.1,1.1},{-1.1,1.1}}],
{v,0,2Pi}]

ContourPlot

Zadatak 1

Krivulja je zadana jednadžbom   (y^2)=a((x^4)–(x^6)),  za xϵ[–1,1].
Na istoj slici nacrtajte 4 takve krivulje (za a=1, a=2, a=3 i a=4) i obojite ih redom crvenom, plavom, zelenom
i žutom bojom.

g[a_]:=y^2-a(x^4-x^6)

ContourPlot[{g[1]==0,g[2]==0,g[3]==0,g[4]==0},{x,-1,1},{y,-1,1},
ContourStyle->{Red,Blue,Green,Yellow}]

Zadatak 2.

a) Nacrtajte krivulju koja je zadana jednadžbom
(x^4)–2(x^2)·y+2(y^3)=0,  za (x,y) ϵ (([–1,1] )^2).
Upotrijebite opciju PlotPoints da dobijete precizan crtež u okolini singularne točke.
Neka Mathematica ne iscrtava okvir (opcija Frame).

ContourPlot[x^4-2x^2*y+2y^3==0,{x,-1,1},{y,-1,1},PlotPoints->100,Frame->False]

b) Nacrtajte plohu koja je zadana jednadžbom
z=(x^4)–2(x^2)·y+2(y^3),  za (x,y) ϵ (([–1,1] )^2).

Plot3D[x^4-2x^2*y+2y^3,{x,-1,1},{y,-1,1}]

c) Nacrtajte nivo linije gornje plohe. Obojite ih crveno.

ContourPlot[x^4-2x^2*y+2y^3,{x,-1,1},{y,-1,1},ContourStyle->Red,PlotPoints->100]

Zadatak za vježbu

Zadatak 1.

a) Krivulja je zadana jednadžbom  ((x^2)–(a^2))(((x–a))^2)+((((y^2)–(a^2)))^2)=0,  za xϵ[–a,a].
Na istoj slici, u području [-3,3]×[-5,5] nacrtajte 3 takve krivulje (za a=1, a=2 i a=3) i obojite ih crvenom, plavom i zelenom bojom.
Neka su jedinice na osima jednake i neka Mathematica ne iscrtava okvir.

f[a_]:=(x^2-a^2)(x-a)^2+(y^2-a^2)^2

ContourPlot[{f[1]==0,f[2]==0,f[3]==0},{x,-3,3},{y,-5,5},ContourStyle->{Red,Blue,Green},AspectRatio->Automatic,Frame->False]

b) Nacrtajte plohu koja je zadana jednadžbom
z=((x^2)–(3^2))(((x–3))^2)+((((y^2)–(3^2)))^2),  za (x,y) ϵ [-3,3]×[-5,5].

Plot3D[f[3],{x,-3,3},{y,-5,5}]

c) Nacrtajte nivo linije gornje plohe. Obojite ih žuto.

ContourPlot[f[3],{x,-3,3},{y,-5,5},ContourStyle->Yellow,AspectRatio->Automatic]

RegionPlot

Zadatak 1

Dio kvadratnog područja (([–5,5])^2) u kojem vrijedi  
 x y  ((x^2)((–y)^2)) < (x^2)+(y^2)  
obojite crveno i obrubite debelom crnom linijom. Preostali dio područja neka bude sive boje. Neka Mathematica ne iscrtava okvir.

RegionPlot[x*y(x^2-y^2)<x^2+y^2,{x,-5,5},{y,-5,5},
PlotStyle->Red,Background->Gray,BoundaryStyle->{Black,AbsoluteThickness[2]},Frame->False]

Zadatak 2.

Dio kvadratnog područja (([–1,1])^2) u kojem vrijedi  
 ((((x^2) + (y^2)))^3) > 4(x^2)(y^2)  ili   (x^2) + (y^2)<0.04,
pomoću funkcije ColorFunction obojite s "Rainbow". Neka podloga bude bijela.

RegionPlot[(x^2+y^2)^3>4x^2y^2||x^2+y^2<0.04,{x,-1,1},{y,-1,1},ColorFunction->"Rainbow",Background->White]

Zadatak za vježbu

Zadatak 1.

Dio  područja [–1,1]×[–2,2] u kojem vrijedi  
 (x^2) - (y^2) > (x^2)(y^2)  i   | y | < 1.5,
pomoću funkcije ColorFunction obojite s "Rainbow". Neka podloga bude crna.

RegionPlot[y^2-x^2>x^2*y^2&&Abs[y]<1.5,{x,-1,1},{y,-2,2},ColorFunction->"Pastel",Background->Black]

Show

Zadatak 1.

Hiperbola i kružnica dane su implicitnim jednadžbama
(x^2)-(y^2)=1  i   (((x+1))^2)+(y^2)=9.
Izračunajte koordinate njihovih sjecišta, a zatim nacrtajte obe krivulje i na crtežu njihova sjecišta istaknite crvenom bojom.

sj=Solve[{x^2-y^2==1,(x+1)^2+y^2==9},{x,y}]

Show[ContourPlot[{x^2-y^2==1,(x+1)^2+y^2==9},{x,-5,5},{y,-3,3}],
Graphics[{Red,AbsolutePointSize[6],Table[Point[{x,y}/.sj[[i]]],{i,1,4}]}],
AspectRatio->Automatic]

Zadatak 2.

Središte elipse je u ishodištu, a poluosi   a=5  i  b=3  parelelne s osi x, odnosno  y.
Pomiću funkcije Manipulate, napravite animaciju generiranja te elipse kao skupa točaka kojima je zbroj udaljenosti od fokusa konstantan.
Uputa: Animirajte radij-vektore (spojnice fokusa s točkama elipse).
            e= (Sqrt[(a^2)-(b^2)]) je udaljenost fokusa od sredista elipse

Manipulate[
Show[ParametricPlot[{5Cos[t],3Sin[t]},{t,0,u}],
Graphics[{{Red,AbsolutePointSize[6],Point[{-4,0}],Point[{4,0}]},
Line[{{-4,0},{5Cos[u],3Sin[u]},{4,0}}]}],
PlotRange->{{-5.1,5.1},{-3.1,3.1}},Axes->None],
{u,0.01,2Pi}]

Zadatak za vježbu

Zadatak 1.

Na istoj slici nacrtajte krivulje (Subscript[k, 1]) (bijelo), (Subscript[k, 2]) (crveno) i (Subscript[k, 3])(crno).
1. Polarna  jednadžba krivulje (Subscript[k, 1]) je: 
	 r(φ)=cos(2·φ),   φϵ[0,π].
2. Parametarske jednadžbe  krivulje (Subscript[k, 2]) su:
	 x(t)=(cos^3)t
	  y(t)=(sin^3)t,   tϵ[0,2π].
3. Implicitna  jednadžbe  krivulje (Subscript[k, 3]) je:
	(x^2)+(y^2)=0.25,  za  xϵ[–0.5,0.5].

k1=PolarPlot[Cos[2u],{u,0,2Pi},PlotStyle->GrayLevel[1]];

k2=ParametricPlot[astroida[1],{t,0,2Pi},PlotStyle->Hue[1]];

k3=ContourPlot[x^2+y^2==0.25,{x,-0.5,0.5},{y,-0.5,0.5}];

Show[k1,k2,k3]

Notebook izradili: Vladimir Benić i Sonja Gorjanc