Encontrararectatangentea(x^2)/4+(y^2)/9=1quepassamdopeloponto(4,4)
(%i1) c(t):=[2*cos(t),3*sin(t)]/*parametrizao*/
(%i2) define(dc(t),diff(c(t),t))/*derivada*/
(%i3) define(n(t),[dc(t)[2],dc(t)[1]])/*vectornormalacemt(nounitrio)*/
(%i4) P:[4,4]
(%o4) [4, 4]
(%i5) c(t)P/*vectordirectordarectarquepassaporPec(t)*/
(%i6) (c(t)P).n(t)/*queremosrtangenteacortogonalan*/
(%i7) ratsimp(%)
2 2
(%o7) 6 sin (t) 8 sin (t) + 6 cos (t) 12 cos (t)
(%i8) trigsimp(%)
Ocomando`findroot(f(t)=0,t,a,b)`podeserusadoparaencontrarumasoluode`f(t)=0`para`t`nointervalo`[a,b]`
(%i9) t1:find_root(8*sin(t)12*cos(t)+6=0,t,0,%pi)
(%o9) 1.729729080954129
(%i10) t2:find_root(8*sin(t)12*cos(t)+6,t,%pi,0)
(%o10) 0.5537238738589942
(%i11) r1:parametric(P[1]+s*(c(t1)P)[1],P[2]+s*(c(t1)P)[2],s,6,5)
(%i12) r2:parametric(P[1]+s*(c(t2)P)[1],P[2]+s*(c(t2)P)[2],s,5,2)
(%i14) load(draw)$
set_draw_defaults(
dimensions=[500,300],
proportional_axes=xy,
axis_top=false,axis_bottom=false,
axis_left=false,axis_right=false,
grid=false,
xaxis=true,
xaxis_type=solid,
xaxis_width=1,
xaxis_color=black,
xtics_axis=true,
yaxis=true,
yaxis_width=1,
yaxis_type=solid,
yaxis_color=black,
ytics_axis=true,
line_width=2
)$
;; loading \#P"Z:/Users/fsmoreir/maxima/binary/5\_37\_3/sbcl/1\_3\_1/share/draw/grcommon.fasl"
;; loading \#P"Z:/Users/fsmoreir/maxima/binary/5\_37\_3/sbcl/1\_3\_1/share/draw/gnuplot.fasl"
;; loading \#P"Z:/Users/fsmoreir/maxima/binary/5\_37\_3/sbcl/1\_3\_1/share/draw/vtk.fasl"
;; loading \#P"Z:/Users/fsmoreir/maxima/binary/5\_37\_3/sbcl/1\_3\_1/share/draw/picture.fasl"
(%i15) wxdraw2d(
xrange=[3,5],
yrange=[4,5],
parametric(2*cos(t),3*sin(t),t,0,2*%pi),
color=green,
r1,
color=red,
r2,
point_size=2,
point_type=filled_circle,
color=black,
points([P]),
label(["P",4.5,3.5])
)
(%t15)
(%o15)
>
Podemosusarto_poly_solve,paraobterasrazes.
(%i16) to_poly_solve(8*sin(t)12*cos(t)+6=0,t)
2 2
( )
2 2
43 9 3 343
log (( + ) + ( ) ) 343 3
13 26 13 26
26 13
(%o16) %union [t = 2 %z33 i i atan ], [t = 2
2
43 9
+
13 26
(%i18) nicedummies(%)$sol:ratsimp(%)
3 43 6 3 43 + 6
(%o18) %union ([t = 2 %z0 atan ( )], [t = 2 %z1 atan ( ) + ])
2 43 + 9 2 43 9
(%i20) %z0:0$%z1:0/*queremosassoluesentre0e2*%pi*/$
(%i21) float(''sol)
Ocomandoto_poly_solveserabordadonaprximaaula
2Coordenadaspolares
(%i23) load(draw)$
set_draw_defaults(
dimensions=[500,300],
proportional_axes=xy,
axis_top=false,axis_bottom=false,
axis_left=false,axis_right=false,
grid=false,
xaxis=true,
xaxis_type=solid,
xaxis_width=1,
xaxis_color=black,
xtics_axis=true,
yaxis=true,
yaxis_width=1,
yaxis_type=solid,
yaxis_color=black,
ytics_axis=true,
line_width=2
)$
Quandotemosumacurvadadaemcoordenadaspolares`r=f(theta)`usamosoobjectogrfico`polar`:
`polar(f(theta),theta,theta_min,theta_max)`Asintaxamesmade`explicit`,masaquiavarivelindependente`theta`representao
nguloe`f(theta)`oraio.
Ocrculoderaio1,centradonaorigem,podeserobtidopor
(%i24) wxdraw2d(polar(1,theta,0,2*%pi))
(%t24)
(%o24)
(%i25) wxdraw2d(polar(1,t,0,2*%pi))
(%t25)
(%o25)
Umaespiral
(%i26) wxdraw2d(nticks=300,
polar(10/theta,theta,1,15*%pi)
)
(%t26)
(%o26)
Novamenteoparmetro`nticks`essencial,poisovalorpordefito,noproduzosresultadospretndidos
(%i27) wxdraw2d(
polar(10/theta,theta,1,15*%pi)
)
(%t27)
(%o27)
Ainstruo`polar(f(t),t,tmin,tmax)`sempreequivalentea`parametric(f(t)*cos(t),f(t)*sin(t),t,tmin,tmax)`
(%i28) wxdraw2d(nticks=1000,
polar(sin(3*theta),theta,0,2*%pi)
)
(%t28)
(%o28)
(%i29) wxdraw2d(nticks=1000,
polar(sin(3*theta),theta,0,%pi)
)
(%t29)
(%o29)
(%i30) wxdraw2d(nticks=1000,
polar(sin(3*theta),theta,0,2*%pi)
)
(%t30)
(%o30)
(%i31) wxdraw2d(nticks=1000,
parametric(sin(3*theta)*cos(theta),sin(3*theta)*sin(theta),theta,0,2*%pi)
)
(%t31)
(%o31)
Notarquenosesboosgrficosanteriores`r`tomavaloresnegativos
(%i32) wxdraw2d(nticks=1000,
polar(abs(sin(3*theta)),theta,0,%pi)
)
(%t32)
(%o32)
(%i33) wxdraw2d(nticks=1000,
polar(abs(sin(3*theta)),theta,0,2*%pi)
)
(%t33)
(%o33)
Exerccio:FaaoesboogrficoemMaximadedealgumascurvasdoplano(porexemplo
http://curvebank.calstatela.edu/famouscurves/famous.htm
(%i36) a:1$
b:1.2$
r(theta):=b+2*a*cos(theta)
(%o36) r () := b + 2 a cos ()
(%i37) wxdraw2d(nticks=300,
polar(r(theta),theta,0,2*%pi)
)$
(%t37)
(%i39) a:1$
r(theta):=a*(1+2*sin(theta/2))
(%o39) r () := a (1 + 2 sin ( ))
2
(%i40) wxdraw2d(nticks=300,
polar(r(theta),theta,0,4*%pi)
)$
(%t40)
>
CreatedwithwxMaxima.