Mehanika_1-11_Ravninske_rešetke_(v0.3)

2557 days ago by fresl

Crtanje ploha 


Crtanje eksplicitno zadanih ploha


1. zadatak

Nacrtajte plohu zadanu jednadžbom  $\displaystyle f(x, y) = \frac{\sin\,(x^2 + y^2)}{\sqrt{x^2 + y^2 + 0,\!001}}$  za  $(x, y)\in[-3, 3]^2$.

       


2. zadatak

Nacrtajte istu plohu kao i u 1. zadatku tako da je svaka točka obojana bojom proporcionalnoj svojoj visini, to jest vrijednosti svoje $z$–koordinate  (opcija adaptive = True).

Neka budu prikazane i koordinatne osi duljine $4$ i radijusa $2$. Za kvalitetan prikaz osi treba naredbom

from sage.plot.plot3d.plot3d import axes

omogućiti pristup funkciji axes() koja omogućava definiranje duljine i debljine osi. Ta funkcija ima oblik

axes (scale = 1, radius = None, **kwds) 

pri čemu su 

  • scale — duljine osî (sve tri osi su iste duljine);
  • radius — radijusi osî.

Za crtanje plohe s osima koordinatnoga sustava treba

  1. definirati varijablu koja sadrži sliku osi, npr.  p1 = axes (scale = 3, radius = 1, color = 'red'),
  2. definirati varijablu koja sadrži sliku plohe, npr.  p2 = plot3d ( ... ),
  3. prikazati zajedničku sliku naredbom p1 + p2 ili show (p1 + p2) ili (p1 + p2).show().

Funkciji show() dodajte još dvije opcije:

  1. nije prikazan okvir (kvadar) u kojem se ploha nalazi  (opcija frame = False),
  2. duljine jediničnih dužina na osima neka se odnose u omjeru $2:2:1,\!5$  (opcija aspect_ratio = [2, 2, 1.5]).
       
       


3. zadatak

Na istoj slici, nad područjem $[-1,1]^2$, nacrtajte kružni i hiperbolički paraboloid (njihove su jednadžbe  $z=x^2+y^2$  i  $z=x^2-y^2$).

Pomoću odgovarajućih opcija učinite da:

  1. kružni paraboloid bude crven, a hiperbolički zelen  (opcija color = 'red' ili 'green'),
  2. prikazi ploha imaju 30% prozirnosti  (opcija opacity = 0.7),
  3. jedinice na osima budu jednake duljine  (opcija aspect_ratio = (1, 1, 1)),
  4. kvaliteta crteža bude povećana povećanjem upotrijebljenih točaka pri crtanju na 200 u svakom od smjerova  (opcija plot_points = 200 ili plot_points = [200, 200]).
       



1. zadatak za zadaću

Na istoj slici, nad područjem $[0, 4\pi]^2$, prikažite  plohe zadane eksplicitnim jednadžbama  $z=\cos x \cdot \cos y$  i  $z=\sin x \cdot \sin y$.  Prvu obojite žutom (yellow), a drugu narančastom (orange) bojom.

       

 

Crtanje ploha zadanih parametarskim jednadžbama

 

4. zadatak

Nacrtajte plohu kojoj su parametarske jednadžbe

       $x(u,v) = \sin u$,   $y(u,v) = \cos u + \sin v$,   $z(u,v) = \cos v$   za  $(u,v)\in [0, 2\pi]^2$.

Plohu prikažite sa 40% prozirnošću.

       


5. zadatak

Torus je ploha koja nastaje rotacijom kružnice polumjera $r_1$ oko osi koja je od njezinoga središta udaljena za $r_2$.

Ako je kružnica koja rotira okomita na ravninu $(x,\,y)$ i ako rotira oko osi $z$, parametarske su jednadžbe torusa

       $x(u,v)=(r_2+r_1\cos v)\cos u$,   $y(u,v)=(r_2+r_1\cos v)\sin u$,   $z(u,v)=r_1\sin v$   za  $(u,v)\in [0, 2\pi]^2$.

  1. Definirajte funkciju torus koja ovisi o vrijednostima $r_1$ i $r_2$ i ima vrijednost koja je lista navedenih parametarskih jednadžbi  $[x(u,v),\, y(u,v),\, z(u, v)]$.
  2. Za $r_1=3$ nacrtajte tri takve plohe ($r_2=5,\;3,\;1$)  za $\displaystyle (u, \, v) \in \biggl[0, \frac{3\pi}{2}\biggl]\times\, [0,\, 2\pi]$  i za  $\displaystyle (u, \, v) \in [0, \pi]\times [\pi,\, 2\pi]$.  Upotrijebite opciju aspect_ratio=(1,1,1).
  • Definicija funkcije:
       
  • Slika za $r_1 = 3$,  $r_2 = 5$.

Međusobni položaj kružnice koja rotira i osi rotacije:

       
       
       
  • Slika za $r_1 = 3$,  $r_2 = 3$:

Međusobni položaj kružnice koja rotira i osi rotacije:

       
       
       
  • Slika za $r_1 = 3$,  $r_2 = 1$:

Međusobni položaj kružnice koja rotira i osi rotacije:

       
       
       


2. zadatak za zadaću

Plückerovi konoidi su zadani parametarskim jednadžbama

       $\begin{align}x(u, v) &= v\cos u \\y(u, v) &= v\sin u \\z(u, v) &= \sin k\,u\end{align}$

za $k \in \mathbb{N}$  i  $(u, v) \in [0, 2\pi]^2$.

Nacrtajte Plückerove konoide za $k=2$, $k=3$ i $k=6$.  Povećajte broj upotrijebljenih točaka opcijom  plot_points = 200,  a omjer duljina jediničnih dužina na osima zadajte opcijom  aspect_ratio = (1, 1, 2).

       

 

Crtanje implicitno zadanih ploha

 

6. zadatak

Nacrtajte plohu zadanu implicitnom jednadžbom  $x^2 + y^2 - z^2 = 1$  za  $(x, y) \in [-3, 3]^2$  i  $z \in [-2, 2]$  te za  $x \in [-3, 3]$,   $y \in [0, 3]$  i  $z \in [-2, 2]$

       
       


7. zadatak

Nacrtajte plohu zadanu implicitnom jednadžbom  $x^4 - x^2 + y^4 - y^2 + z^4 - z^2 + 0.5 = 0$  za  $(x, y, z) \in [-1, 1]^3$.  Nemojte prikazati okvir (opcija frame = False), a plohu obojite grimiznom bojom (opcija color = 'crimson').

       


3. zadatak za zadaću

Nacrtajte plohu zadanu impicitnom jednadžbom  $x^2 + y^2 - z^2 = 0$  za  $(x, y, z) \in [-1, 1]^3$.

       


4. zadatak za zadaću

Ploha je zadana implicitnom jednadžbom  $16x^3 - 48x^2\,y + 24x^2\,z - 48x\,y^2 + 16y^3 + 24y^2\,z - 31z^3 - 93,\!5307z^2 -72z = 0$.

Prikažite je za  $(x, y, z) \in [-5, 4]\times[-5, 4]\times[-4, 7]$.  Nemojte crtati okvir.

       

 

Crtanje nivo–krivulja


6. zadatak

  1. Nacrtajte plohu zadanu eksplicitnom jednadžbom  $z=x^4-2x^2y+2y^3$  za $(x,y) \in [-1, 1]^2$.  Neka su točke različite visine različito obojane (opcija adaptive=True).
  2. Nacrtajte nivo–linije ove plohe. Crtež linija umjesto obojenih područja možete dobiti opcijom  fill = False.
  3. Nacrtajte novi prikaz nivo–linija primjenom opcije cmap='rainbow'

Ako želite prikaz slike nekim drugim bojama, a ne nijansama sive, upotrijebite opciju cmap, kao npr. cmap='rainbow'. Popis svih mogućih paleta za cmap može se dobiti naredbom

sorted (colormaps)


  • crtanje plohe:
       
  • crtanje nivo–krivulja:
       
  • crtanje nivo–krivulja uporabom boja:
       


5. zadatak za zadaću

  1. Nacrtajte plohu koja je zadana jednadžbom $z = (x^2 - 3^2)(x - 3)^2 + (y^2 - 3^2)^2 $  za  $(x,y) \in [-3,3]\times [-5, 5]$. Neka su točke različite visine različito obojane  (opcija adaptive = True).
  2. Nacrtajte njezinih 12 nivo–krivulja (opcija contours = 12, podrazumijevani broj je oko 5).
  3. Na novoj slici nivo–krivulja prikažite u boji primjenom opcije cmap = 'Set1'.