Geom Computationala
Geom Computationala
pentru disciplina
GEOMETRIE COMPUTAȚIONALĂ
CUPRINS
INTRODUCERE 3
4. PROBLEME PROPUSE 53
BIBLIOGRAFIE 57
2
INTRODUCERE
Obiectele geometrice ca punct, linie sau poligon reprezintă baza pentru foarte
multe aplicatii oferindu-ne o gama larga de probleme si algorimti. Termenul de
geometrie ne reaminteşte desigur de cele mai vechi utilizări ale sale: măsurări de
terenuri şi materiale. In zilele noastre, apariţia calculatorului a facilitat rezolvarea
unor probleme geometrice tot mai diverse. Termenul de geometrie computaţională se
datorează lui Shamos (1975) şi s-a dezvoltat considerabil în ultimii ani, cu precădere
din 1985 când au fost realizate prima conferinţă (ACM Symposium on Computational
Geometry ) şi primul jurnal în domeniu (jurnalul Springer-Verlag, “Discret and
Computational Geometry”).
3
CAPITOLUL I
M ( x, y ) E 2 / y f ( x ) I ) .
y f ( x), x I (1.1.1)
4
y
M(x,sinx)
Fig. 1
» xlabel ('x')
» ylabel ('f(x)=sin(x)')
0.8
0.6
0.4
0.2
f(x)=sin(x)
-0.2
-0.4
-0.6
-1
-4 -3 -2 -1 0 1 2 3 4
x
Fig. 2
5
Putem îmbunătăti reprezentarea grafică, adăugând noi parametri funcţiei plot
şi doi dintre aceştia ar fi cei referitori la grosimea liniei de reprezentare , LineWidth
(implicit este 0.5 puncte), iar cel de al doilea la marimea marcatorilor,
MarkerSize(implicit 6 puncte). Un punct reprezinta 1/72 inch. Sa îi utilizam în
exemplul urmator
Pentru vizualizarea mai multor curbe în acelasi sistem de coordonate existǎ comanda
hold on, iar comanda care o anuleazǎ este hold off.
» x=[-pi:.3:pi];
» y=sin(x);
» z=cos(x);
» plot(x,y,'-r');
» hold on
» plot(x,z,'--g');
» hold on
» plot(x,0,'*-b')
» legend ('-sin(x)','-cos(x)','y=0');
1
-sin(x)
0.8 -cos(x)
y=0
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
-4 -3 -2 -1 0 1 2 3
Fig.3
6
1.1.2. Reprezentarea implicită a unei curbe plane
F x, y 0 (1.1.2)
O conică este curba care se obţine prin intersectarea unui plan cu un con (mai
exact este vorba de suprafaţa unui con drept, circular). Conicele dupa cum se stie au
foarte multe aplicatii atat in stiinta cat si in inginerie. In mecanica de exemplu
traiectoria unui proiectil in vid este o parabola. Orbitele planetelor si satelitilor sunt
deasemenea sectiuni conice.
Cerc:
Elipsă:
Parabolă:
7
Hiperbolă:
>> x=linspace(-2,2);
>> plot(x,sqrt(4-x.^2))
>> hold on
>> plot(x,-sqrt(4-x.^2))
Fig.4
1.5
0.5
-0.5
-1
-1.5
>> a=2;
>> x-1:0.01:1;
>> plot(x,-sqrt(4*a*x));
>> hold on
>> plot(x,sqrt(4*a*x))
8
4
-1
-2
-3
-4
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
Fig.5
x x(t )
, tI (1.1.3)
y y (t )
9
conţine un singur element şi punct multiplu de ordin k dacă mulţimea c 1 ( x0 , y 0 )
Exemplu Vom considera în continuare în cazul curbei lui Talbot ale cărei
ecuaţii parametrice sunt
pentru 0 t 2 .
>> t=0:.01:2*pi;
>> x=((sin(t)).^2+1).*cos(t);
>> y=((sin(t)).^2-1).*sin(t);
>> plot(x,y)
0.4
0.3
0.2
0.1
-0.1
-0.2
-0.3
-0.4
-1.5 -1 -0.5 0 0.5 1 1.5
Fig.6
10
1.2. Tangenta şi normala într-un punct al unei curbe plane
1.2.1. Tangenta şi normala într-un punct al unei curbe plane date explicit
y f ( x0 ) f ( x0 )( x x 0 ) (1.2.1)
1
este şi deci ecuaţia normalei este:
f ( x0 )
1
y f ( x0 ) ( x x0 ) (1.2.2)
f ( x0 )
a normalei x x0 .
Vom exemplifica mai jos în Matlab trasarea unei tangente la o curbă într-un punct de
pe curbă.
>> syms x;
>> y=sin(x);
>> ezplot(y,[0,2*pi])
>> dydx=diff(y)
11
dydx =cos(x)
>> m=subs(dydx,x,2)
m = -0.4161
>> y0=subs(y,x,2);
>> ezplot(m*(x-2)+y0,[0,2*pi]);
Fig.7
-...+15686858057262667/9007199254740992
1.5
0.5
-0.5
-1
0 1 2 3 4 5 6
x
1.2.2. Tangenta şi normala într-un punct al unei curbe plane date implicit
F ( x, y ) 0 (1.2.3)
F
F : D R 2 R de clasă C1 pe D şi M 0 ( x0 , y 0 ) astfel încât ( x0 , y 0 ) 0
y
12
a) F ( x, y ( x)) 0, x V
b) y ( x0 ) y 0
F
( x0 , y 0 )
y ( x) x .
F
( x0 , y 0 )
y
F
y ( x0 ) x ( x 0 , y 0 )
F
y
F
y y0 x ( x0 , y0 )( x x0 ) (1.2.4)
F
y
sau
F F
( x0 , y 0 )( x x0 ) ( x0 , y 0 )( y y 0 ) 0 (1.2.4)’
x y
F
( x0 , y 0 )
y
y y0 ( x x0 ) (1.2.5)
F
( x0 , y 0 )
x
sau
13
x x0 y y0
(1.2.5)’
F F
( x0 , y 0 ) ( x0 , y 0 )
x y
M ( x(t ), y (t )) c(t ) .
x x(t 0 ) y y (t 0 )
(1.2.6)
x(t ) x(t 0 ) y (t ) y (t 0 )
x x(t 0 ) y y (t 0 )
x(t ) x(t 0 ) y (t ) y (t 0 )
t t0 t t0
x x(t 0 ) y y (t 0 )
(1.2.7)
x (t 0 ) y (t 0 )
14
Prin urmare dacă vectorul ( x (t 0 ), y (t 0 )) este diferit de vectorul nul, atunci el dă
y (t 0 )
y y (t 0 ) ( x x(t 0 )) (1.2.7)’
x (t 0 )
y (t 0 )
şi deci panta tangentei în M 0 c(t 0 ) la curba Im c este .
x (t 0 )
x' (t 0 )
Panta normalei la curba în M0 este atunci .
y ' (t 0 )
15
3) În cazul a aplicaţia c să fie bijectivă .
Un punct al unei curbe în care nu sunt satisfăcute condiţiile de regularitate se
numeşte punct singular .
1
x sin , dacã x 0
y f x , f x x
0, dacã x 0
1 f x f 0
Funcţia f nu este derivabilă în 0 pentru că nu există lim sin lim .
x 0 x x 0 x
1). Dacă parametrizarea c nu este bijectivă , atuci curba are puncte multiple, care sunt
deci puncte singulare . Dacă M 0 x0 , y 0 este punct dublu , adică există t1 , t 2 I ,
t1 t 2 , astfel încât ct1 ct 2 şi ct1 ct 2 atunci M 0 este punct nod (Fig.16a)
Dacă însă în punctul dublu M 0 , vectorul ct1 este coliniar cu c t 2 atunci M 0 se
numeşte tac nod .
16
Presupunem că parametrizarea c este de clasa C n şi există cel puţin un
cuplu m, n de numere naturale m, n 2 astfel încât vectorul c ( m) b şi c ( n) b să fie
liniar independenţi . Notând cu p cel mai mic număr natural 2 astfel incât
În toate cele patru cazuri tangenta în punctul singular M 0 cb are direcţia
c ( p) b .
F x, y 0
unde F : R 2 , F C m , m 3
dacă derivatele parţiale până la ordinul m 1 inclusiv , ale funcţiei F sunt nule în
x0 , y 0 şi cel puţin una din derivatele de ordin m este nenulă .
În continuare vom studia punctele duble ale unei curbe date prin ecuaţia
implicită .
17
Propoziţia 1.3.2 Dacă M 0 x 0 , y 0 este un punct singular dublu al curbei de
anulează în t :
Definiţia 1.4.1 Fie 1 ,2 două curbe plane având punctul comun M0
nesingular. Curbele au în M0 un contact de ordin mai mare sau egal cu n, dacă există
parametrizările regulate c1 : I R , c2 : J R , respectiv pentru Г1 şi Г2,
2 2
c1 , c2 C P şi
C1 (t 0 ) C2
(K ) (K )
(t 0 ) (1.4.1)
x2
2 {P( x, y ) / y 2 1} au în punctul M0(0,1) un contact mai mare sau egal cu
4
doi pentru că există parametrizările de clasă C2,
t t
c1 : [0,4 ] R 2 , c1 (t ) (4 cos ,3 4 sin ), 1 Im c şi
2 2
c1( k ) ( ) c2( k ) ( ), k 0,1,2, c1 ( ) c2 ( ) M 0 .
2 2
18
Propoziţia 1.4.2 Curbele 1 si 2 definite de parametrizarile regulate C1 ,C2
au un contact de ordin mai mare ca 1 în M 0 c1 0 c 2 0 dacă şi numai dacă
vectorii c1 t 0 si c 2 0 sunt coliniari.
x 2 y 2
x t y t t
x y x y
y t x t x y t
2 2
x y x y
t
x y x y
19
CAPITOLUL 2
20
Nu intră în această categorie o serie de curbe, de exemplu cele care se
autointersectează.
Din acest motiv ne vom ocupa de funcţii r : I E 3 , r (t ) x(t )i y (t ) j z (t )k
care reprezintă arce simple pe porţiuni (adică intervalul I se descompune în reuniune
finită de intervale astfel încât pe fiecare subinterval r să reprezinte un arc simplu).
Studiul acestor curbe se reduce de fapt la studiul arcelor simple r : I E 3 , I [ , ].
Dacă un arc simplu de curbă se da prin
r : I E 3 , r (t ) x(t )i y (t ) j z (t )k
Atunci spunem că s-a dat curba prin ecuaţia sa vectorială.
Această ecuaţie vectorială este complet determinată de funcţiile
x x(t )
y y (t ) tI (2.1.2)
z z (t )
Sistemul de funcţii dat mai sus poartă denumirea de ecuaţiile parametrice ale
curbei.
Ecuaţia vectorială a unei curbe nu este unică. De exemplu:
r 1 : [0, ] E 3 , r1 (t ) cos t i sin t j o k .
r2 : [0, ] E 3 , r 2 (t ) cos 2t i sin 2t j o k .
2
Reprezintă acelaşi semicerc din planul (xoy ) .
21
Presupunem că funcţiile F şi G satisfac condiţiile din teorema funcţiilor implicite.
În astfel de situaţii, local putem alege una din variabile ca parametru, de exemplu
x t şi sistemul de funcţii implicite
F (t , y, z ) 0
G (0, y, z ) 0
ne defineşte funcţiile y y (t ) şi z z (t ) ; deci curba poate fi privită ca fiind
reprezentată local prin ecuaţiile parametrice
x x(t )
y y (t ) t [ , ] .
z z (t )
Reciproc, dacă avem o reprezentare parametrică a curbei C putem găsi una dintre
formele carteziene (2.1.3) sau (2.1.4), eliminând parametrul t între ecuaţiile (2.1.2).
Desenele în 3 dimensiuni se pot reprezenta în mod similar cu cele în doua dimensiuni.
>> t = -2*pi:.001:2*pi;
>> plot3(x,y,z)
10
-5
-10
1
0.5 1
0 0.5
0
-0.5 -0.5
-1 -1
22
Să consideram în continuare curba spaţială data de ecuaţiile parametrice
x = a cos ωt
y = a sin ωt (2.1.5)
z = bt
a=2;
b=0.1;
w=2;
t=linspace(0,12*pi,500);
x=a*cos(w*t);
y=a*sin(w*t);
z=b*t;
comet3(x,y,z).
plot3(x,y,z)
xlabel(’x-axis’)
ylabel(’y-axis’)
zlabel(’z-axis’)
23
title(’x = 2 cos(t), y = 2 sin(t), z = 0.1t.’)
Exemplu Presupunem că o navă calatoreşte de polul sud spre polul nord păstrând un
unghi fix faţă de toate meridianele. Atunci traseul va fi descris de ecuaţiile
cos t
x
1 2t 2
sin t
y
1 2t 2
z t
alpha=0.2;
t=linspace(-12*pi,12*pi,500);
x=cos(t)./sqrt(1+alpha^2*t.^2);
y=sin(t)./sqrt(1+alpha^2*t.^2);
z=alpha*t./sqrt(1+alpha^2*t.^2);
24
plot3(x,y,z).
Multe din curbele spaţiale se află în legătură cu suprafeţele. Astfel în cazul spiralei
sferice putem intui o legătură cu sfera.
x r s in c o s
y r s in s in
z r cos
phi=linspace(0,pi,30);
theta=linspace(0,2*pi,40);
[phi,theta]=meshgrid(phi,theta);
x=r*sin(phi).*cos(theta);
y=r*sin(phi).*sin(theta);
z=r*cos(phi);
mhndl=mesh(x,y,z)
set(lhndl,...
’Color’,[0.625,0,0],...
’LineWidth’,2).
25
Curba lui Viviani
Multe din curbe se pot obţine ca intersecţie a două suprafeţe. De exemplu toate
secţiunile conice (cerc elipsa, parabola şi hiperbola) sunt determinate de modul în care
un plan intersectează un con circular drept.
Această curbă se obţine la intersecţia unei sfere de raza 2r şi a unui cilindru circular
drept de rază r ce este deplasat cu r atât pe direcţia x cât şi pe y. Ecuaţia sferei este
x 2 y 2 z 2 4r 2 . Aceasta sferă este generată de ecuaţiile parametrice
x = 2r sin φ cos θ
y = 2r sin φ sin θ
z = 2r cos φ.
In Matlab :
r=1;
phi=linspace(0,pi,30);
theta=linspace(0,2*pi,40);
[phi,theta]=meshgrid(phi,theta);
x=2*r*sin(phi).*cos(theta);
y=2*r*sin(phi).*sin(theta);
z=2*r*cos(phi);
mhndl1=mesh(x,y,z)
set(mhndl1,...
’EdgeColor’,[0.6,0.6,0.6])
axis equal
axis off
26
2
-1
-2
2
1 2
0 1
0
-1 -1
-2 -2
Ecuaţiile parametrice
x = r cos t
y = r sin t
x = r + r cos t
y = r sin t.
x = r + r cos t
y = r sin t
z = z.
27
x(t, z) = r + r cos t
y(t, z) = r sin t
z(t, z) = z.
t=linspace(0,2*pi,40);
z=linspace(-2*r,2*r,20);
[t,z]=meshgrid(t,z);
x=r+r*cos(t);
y=r*sin(t);
z=z;
hold on
mhndl2=mesh(x,y,z)
set(mhndl2,...
’EdgeColor’,[0.8,0,0])
view(50,20)
Vom exemplifica în continuare câteva din secţiunile conice care reprezintă intersecţia
unui plan cu un con circular drept.
28
Exemplu Să se deseneze conul circular drept dat de ecuaţiile parametrice
x r cos
y r sin
zr
unde 0 2 ,1 r 1, împreună cu secţiunea plana dată de planul z 1 / 2 peste
domeniul D {( x, y ) : 1 x, y 1}.
Soluţie
>> theta=linspace(0,2*pi,40);
>> r=linspace(-1,1,30);
>> [theta,r]=meshgrid(theta,r);
>> x=r.*cos(theta);
>> y=r.*sin(theta);
>> z=r;
>> mhndl=mesh(x,y,z)
>> set(mhndl,...
'EdgeColor',[.6,.6,.6])
>> hold on
>> [x,y]=meshgrid(-1:0.2:1);
>> z=0.5*ones(size(x));
>> phndl=mesh(x,y,z);
>> set(phndl,...
'EdgeColor',[0.625,0,0])
>> view(116,38)
0.5
-0.5 -1
-0.5
-1
-1 0
-0.5
0 0.5
0.5
1 1
29
Să considerăm acum pentru acelaşi con circular drept o secţiune plană dată de ecuaţia
z=y+0.25 peste domeniul D {( x, y ) : 1 x, y 1} .
Soluţie
>> theta=linspace(0,2*pi,40);
>> r=linspace(-1,1,30);
>> [theta,r]=meshgrid(theta,r);
>> x=r.*cos(theta);
>> y=r.*sin(theta);
>> z=r;
>> mhndl=mesh(x,y,z);
>> set(mhndl,...
'EdgeColor',[0.625,0,0])
>> set(mhndl,...
'EdgeColor',[.6,.6,.6])
>> hold on
>> [x,y]=meshgrid(-1:0.1:1);
>> z=y+0.25;
>> phndl=mesh(x,y,z);
>> set(phndl,...
'EdgeColor',[0.625,0,0])
>> view(70,55)
>> axis equal
0.5
-0.5
-1
-1
-0.5
1
0.5 0.5
0
-0.5
1 -1
30
2.2. Triedrul lui Frenet
r ( s) r (s 0 )
ale parametrului). Coarda P0 P este paralelă cu vectorul R ( s )
s s0
dr
Când s s 0 , adică P P0 atunci raportul R (s ) are limita r ' ( s 0 ) ( s0 ) .
ds
Dreapta ( P 0 P) are ca „poziţie limită” tocmai tangenta curbei în punctul P0 . Rezultă
deci că tangenta curbei are direcţie vectorului r ' ( s 0 ) . Vectorul r ' ( s ) are norma egală
d
r ' ' ( s ) este un vector perpendicular pe (s ) pentru orice s . Versorul acestui
ds
r ' ' ( s)
vector n( s ) se numeşte versorul normalei principale. Folosind vectorii (s ) şi
r ' ' ( s)
31
Acest triedru este un triedru mobil ataşat curbei, deoarece atunci când P[r ( s 0 )]
descrie curba, acest triedru alunecă de-a lungul curbei aproape având originea pe
curbă.
Muchiile triedrului Frenet sunt:
Tangenta – dreapta determinată de (s ) şi punctul P0 .
x x( s0 ) y y ( s0 ) z z ( s0 )
ecuaţiile normalei principale
x' ' ( s0 ) y ' ' ( s0 ) z ' ' ( s0 )
32
x x( s0 ) y y( s0 ) z z ( s0 )
ecuaţiile binormalei.
y ' ( s0 ) z ' ( s0 ) z ' ( s 0 ) x' ( s0 ) x' ( s 0 ) y ' ( s0 )
y' ' ( s0 ) z ' ' (s 0 ) z ' ' ( s0 ) x' ' ( s0 ) x' ' ( s0 ) y ' ' ( s 0 )
d r 1 d r dt d r 1 dr
Atunci:
ds dt ds dt r ' (t ) dt
33
d 2 r1 d d r dt 1 d dr 1 d 1 d r
ds2 dt ds ds r' (t ) dt ds r' (t ) dt r' (t ) dt
'
r' (t ) d r 1 d2r dr 1 d2r
2
(t )
r' (t ) dt r' (t) dt
2
dt r' (t ) 2 dt2
Astfel rezultă că tangenta curbei are direcţia r ' (t ) şi planul normal are normala
d r1 d 2 r1 dr d 2r d r1 d 2 r1
este coliniar cu . Deoarece este coliniar cu
ds ds 2 dt dt 2 ds ds 2
r ' (t ) r ' ' (t )
b(t ) rezultă că b(t ) este coliniar cu r ' (t ) r ' ' (t ) adică b(t ) .
r ' (t ) r ' ' (t )
34
x x(t 0 ) y y (t 0 ) z z (t 0 )
y ' (t 0 ) z ' (t 0 ) z ' (t 0 ) x' (t 0 ) x' (t 0 ) y ' (t 0 )
y ' ' (t 0 ) z ' ' (t 0 ) z ' ' (t 0 ) x' ' (t 0 ) x' ' (t 0 ) y ' ' (t 0 )
Ţinând seama că n este coliniar cu r ' (t 0 ) r ' (t 0 ) r ' ' (t 0 ) i j k
x x(t 0 ) y y (t 0 ) z z (t 0 )
rezultă că ecuaţia normalei principale este:
iar ecuaţia planului rectificant devine:
x x(t 0 ) y y (t 0 ) z z (t 0 ) 0 .
Observaţie. În unele situaţii curbele se dau ca intersecţie a două suprafeţe,
suprafeţele fiind date sub formă explicită:
z f ( x, y )
f , g C 2 ( D), D R 2
z g ( x, y )
fie sub formă explicită
F ( x, y , z ) 0
F , G C 2 ( D), D R 3
G ( x, y, z ) 0
Putem presupune că suprafeţele s-au dat sub formă implicită, luând:
F ( x, y, z ) z f ( x, y ) şi G ( x, y, z ) z g ( x, y ) .
În acest caz se alege de exemplu x ca parametru, x t şi sistemul
F ( x, y , z ) 0
G ( x, y, z ) 0
defineşte pe y şi z ca funcţie de x t
Folosind teoremele de derivare ale funcţiilor implicite pentru ecuaţia tangentei în
punctul M 0 ( x0 , y 0 , z 0 ) al curbei se obţine:
x x(t 0 ) y y (t 0 ) z z (t 0 )
D( F , G ) D( F , G ) D( F , G )
(M 0 ) (M 0 ) (M 0 )
D( y, z ) D( z, x) D ( x, y )
Analog se deduc folosind derivatele funcţiilor implicite şi ecuaţiile celorlalte
elemente din triedrul lui Frenet.
35
Observaţie. Planul osculator al curbei este poziţia limită a planului determinat de
trei puncte P0 , P1 , P2 ale curbei când P1 şi P2 tind către P0 . Dacă avem o curbă plană
atunci planul osculator al curbei coincide cu planul curbei şi invers dacă planul
osculator al curbei este acelaşi în orice punct al curbei atunci curba este plană. În
această situaţie nici binormala nu depinde de punctul ales.
Planul osculator poate fi definit ca şi planul ce trece printr-un punct al curbei şi are
contact de ordinul al doilea cu curba dată în punctul lor comun
Deci se caută planul
A x x(t ) B y y (t ) C z z (t ) 0
care în P x(t ), y (t ), z (t ) să aibă contact de ordinul doi cu curba.
Pentru aceasta trebuie să avem:
Ax' (t ) By ' (t ) Cz ' (t ) 0
Ax' ' (t ) By ' ' (t ) Cz ' ' (t ) 0
Cum planul este nedegenerat A, B, C nu pot fi nule, rezultă:
x x(t ) y y (t ) z z (t )
x' (t ) y ' (t ) z ' (t ) 0 .
x' ' (t ) y ' ' (t ) z ' ' (t )
u u (t ), v v(t ), w w(t ) t [ , ]
Fie f : [ , ] R funcţie scalară f f (t ) definim funcţiile vectoriale: fie
( f u )(t ) f (t ) u (t )
u v : [ , ] E 3 prin t [ , ] .
(u v)(t ) u (t ) v(t )
36
Presupunem că funcţia r este de clasă C 3 .
Ne propunem să calculăm derivatele funcţiilor vectoriale
( s ), n n( s ), b b( s ) în raport cu "s" şi să determinăm expresia analitică a
d2r
dr 2
Avem: ' n dr2 , b n .
ds d r
ds 2
d d2r d2r
Se observă că (s) 2 (s) ( s) n( s ) este un vector coliniar cu n(s ) ,
ds ds ds 2
d
deci avem: n - prima formă a lui Frenet.
ds
d d b( s )
Derivând egalitatea ( s ) b( s ) 0 , obţinem: b ( s) 0 adică
ds ds
db
n b 0.
ds
d b( s ) d b( s )
Deoarece n( s ) b( s ) 0 rezultă ( s ) 0 şi deci este perpendicular
ds ds
d b( s )
pe (s ) . Deoarece b(s ) este un vector de normă constantă rezultă că este
ds
perpendicular şi pe b(s ) .
d b( s ) db
În concluzie avem că este coliniar cu n(s ) deci putem scrie n - a
ds ds
treia formulă a lui Frenet.
Cum baza ( s ), n( s ), b( s ) este ortonormată şi pozitiv orientată putem să scriem
d n db d
n b . Deci b
ds ds ds
dn
adică n b n
ds
deoarece n b şi b n obţinem:
dn
b - a doua formulă a lui Frenet.
ds
Astfel formulele lui Frenet sunt:
37
d
n
ds
dn
b
ds
d b n
ds
d
ds 0 0
d n
sau matricial 0 n .
ds
d b 0 0 b
ds
Se observă că matricea coordonatelor este antisimetrică.
Definiţia 2.3.1 Numărul real ( s ) r ' ' ( s ) se numeşte curbura curbei în punctul
1
r ( s) M iar R( s ) se numeşte raza de curbură a curbei în punctul
( s)
considerat.
Definiţia 2.3.2 Numărul real (s ) se numeşte torsiunea curbei în punctul
1
r ( s ) M iar T ( s ) se numeşte raza de torsiune a curbei în punctul considerat.
(s)
38
CAPITOLUL 3
39
x x(u, v)
( S ) y y (u, v) (u , v) D 2 (3.1.1)
z z (u , v)
r r (u , v) (u , v) D 2 (3.1.2)
r v xv i y v j z v k .
r 2 r1 .
40
(S ) F ( x, y, z ) 0; ( x, y, z ) V 3 . (3.1.3)
(S ) z f ( x, y ) ( x, y ) D 2 (3.1.4)
F ( x, y, z ) 0, G ( x, y, z ) 0; ( x, y, z ) V 3 (3.1.5)
r r (u , v)
(C ) (u , v) D 2 (3.1.6)
v g (u )
r r (u , v)
(C ) (u , v) D 2 (3.1.7)
u h (v )
r r (u , v)
(C ) u u (t ) t [ , ] (3.1.8)
v v(t )
sau
41
r r (u , v)
(C ) (u , v) D 2 (3.1.9)
(u )
a) coordonatele carteziene M 0 ( x0 , y 0 , z 0 )
r (u 0 , v0 ) x(u 0 , v0 ), y (u 0 , v 0 ), z (u 0 , v0 ) ( x0 , y 0 , z 0 )
r r (u , v)
(C u ) (u , v) D 2 (3.1.10)
v v0 (constant)
r r (u , v)
(C v ) (u , v) D 2 (3.1.11)
u u 0 (constant)
42
Curbele parametrice pe o suprafaţa se numesc curbe coordonate.
v v0 (Fig. 2).
În cazul particular al planului xOy care este tot o suprafaţa aceste curbe sunt curbele
de coordonate x x0 . y y 0 adică drepte. (Fig. 3).
x r cos
y r sin
z r,
unde 0 r 1 si 0 2 .
43
Soluţie
>> r=linspace(0,1,30);
>> theta=linspace(0,2*pi,30);
Pe aceşti vectori se va creea acum reţeaua de care aspuneam mai sus, cu comanda
meshgrid.
>>[r,theta]=meshgrid(r,theta);
>> x=r.*cos(theta);
>> y=r.*sin(theta);
>> z=r;
>> mesh(x,y,z)
Pentru o vizualizare mai bună a suprafeţei pentru crearea senzaţiei de adâncime vom
folosi comanda box on şi pentru a identifica axele aduagăm desenului etichete pentru
axe cu comanda label.
>> box on
>> xlabel('x-axis')
>> ylabel('y-axis')
>> zlabel('z-axis')
44
1
0.8
0.6
z -ax is
0.4
0.2
0.5 1
0 0.5
0
-0.5 -0.5
y-axis x-axis
v
x 2 1 eu /( 6 ) cos u cos 2
2
v
y 2 1 eu /( 6 ) sin u cos 2
2
z 1 eu /( 3 ) sin v eu /( 6 ) sin v
unde 0 u 6 şi 0 v 2 .
>> u=linspace(0,6*pi,60);
>> v=linspace(0,2*pi,60);
>> [u,v]=meshgrid(u,v);
>> x=2*(1-exp(u/(6*pi))).*cos(u).*cos(v/2).^2;
>> y=2*(-1+exp(u/(6*pi))).*sin(u).*cos(v/2).^2;
>> z=1-exp(u/(3*pi))-sin(v)+exp(u/(6*pi)).*sin(v);
>> mesh(x,y,z)
>> view(160,10)
45
>> box on
-1
-2
-3
-4
-5
-6
-7
-8
-9
-5
0
-2 -3 -4
5 1 0 -1
3 2
>> surf(x,y,z,...
'FaceColor','interp',...
'EdgeColor','none',...
'FaceLighting','phong')
>> view(160,10)
x = a cos u sin v
y = b sin u sin v
z = c cos v,
unde 0 u 2 şi 0 v .
46
Vom experimenta pentru următoarele valori ale parametrilor a=3, b=4, c=5;
>> u=linspace(0,2*pi,30);
>> v=linspace(0,pi,30);
>> [u,v]=meshgrid(u,v);
>> x=a*cos(u).*sin(v);
>> y=b*sin(u).*sin(v);
>> z=c*cos(v);
>> mesh(x,y,z)
>> box on
-5
4
2 4
0 2
0
-2 -2
-4 -4
x yu zu
Fie o suprafaţă (S ) r r (u , v), (u , v) D 2 , r C 1 ( D) şi rang u iar
xv yv z v
47
Teorema 3.2.1. Într-un punct regulat M 0 r 0 r (u 0 , v0 ) al suprafeţei S ,
suprafaţa admite un plan tangent definit de:
r r 0 r u (u 0 , v0 ) r v (u 0 , v 0 ), , (3.2.1)
Demonstraţie.
r r (u , v)
Fie (C ) u u (t ) t [ , ] o curbă pe S , M 0 un punct al acestei curbe (Fig. 4).
v v(t )
sau
48
r r (u , v)
Observaţie. Direcţia tangentei la curba coordonată (C1 )
u u0
'
particularizată prin C 1 (v) r (u 0 , v) este C 1 (v 0 ) r v (u 0 , v0 ) iar direcţia tangentei la
r r (u , v)
curba coordonată (C 2 ) parametrizată prin q(u ) r (u, v0 ) este
v v0
'
q ' (u 0 ) r 0 (u 0 , v 0 ) .
adică de vectorii tangenţi la curbele coordonate care trec prin punctul M 0 , cu condiţia
r r 0
,ru ,rv 0 (3.2.2)
Dacă suprafaţa (S ) este dată parametric sub forma (3.1.1) atunci pentru a scrie
ecuaţia planului tangent la (S ) în punctul M 0 ( x0 , y 0 , z 0 ) se vede că M ( x, y, z ) fiind
punctul curent al acestui plan avem:
r r 0 ( x x0 )i ( y y 0 ) j ( z z 0 )k ,
r u xu i y u j z u k , r v x v i y v j z v k
x x0 y y0 z z0
xu (u 0 , v0 ) y u (u 0 , v 0 ) z u (u 0 , v 0 ) 0 (3.2.3)
xv (u 0 , v 0 ) y v (u 0 , v0 ) z v (u 0 , v0 )
49
D( y, z ) D( z, x) D ( x, y )
( X x0 ) (u 0 , v0 ) (Y y 0 ) (u 0 , v0 ) ( Z z 0 ) (u 0 , v 0 ) 0
D(u, v) D(u, v) D ( v, v )
(3.2.4)
(S ) x u , y v, z f (u , v)
şi se obţine
z z
xu 1, y u 0, z u u x p
z z
folosindu-se notaţiile lui Mange.
xv 0, y v 1, z v q
v y
p0 ( X x0 ) q 0 (Y y 0 ) ( Z z 0 ) 0 (3.2.5)
F ( x, y, z ) 0; ( x, y, z ) V 3 F C 1 (V ) ,
F
atunci dacă ( x 0 , y 0 , z 0 ) 0 ecuaţia F ( x, y, z ) 0 defineşte în mod implicit pe z
z
ca o funcţie de x şi y şi avem:
z F' z F'y
p x ;q
x F 'z y F 'z
(3.2.6)
r r 0 (r u rv ) (3.2.7)
ru rv
Versorul normalei în M 0 la S este r
ru rv
A B C
xu y u z u (3.2.9)
xv y v z v
adică:
D( y, z )
A y u z v y v z u D(u, v)
D( z, x)
B z u xv xu z v (3.2.10)
D(u, v)
C x y x y D( x, y )
u v v u
D(u, v)
51
X x Yy Zz
(3.2.11)
p q 1
X x Yy Zz
(3.2.12)
Fx' Fy' Fz'
52
BIBLIOGRAFIE
2. Karris T.S., Numerical Analysis using Matlab and Excel, Orchard Publications,
2007
10. Oproiu V., Geometrie computationala, Editura Univ [Link], Iasi, 2006
53
RESURSE DISPONIBILE ONLINE
1. [Link]
2. [Link]
3. [Link]
4. [Link]
5. [Link]
[Link]
54