Escolar Documentos
Profissional Documentos
Cultura Documentos
wxmx 1 / 19
Exercício 21
(%i1) load(draw)$
set_draw_defaults(
dimensions =[500,300],
proportional_axes = xy,
axis_top=false,axis_bottom=false,
axis_left=false, axis_right=false,
grid =true,
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"/Users/zeliarocha/.maxima/binary/binary-sbcl/share/draw/grcommon.fasl"
;; loading #P"/Users/zeliarocha/.maxima/binary/binary-sbcl/share/draw/gnuplot.fasl"
;; loading #P"/Users/zeliarocha/.maxima/binary/binary-sbcl/share/draw/vtk.fasl"
;; loading #P"/Users/zeliarocha/.maxima/binary/binary-sbcl/share/draw/picture.fasl"
Dada uma curva `gamma:[a,b]:-->R^2`, para esboçarmos o seu traço temos a opção gráfica parametric.
(%i3) wxdraw2d(parametric(1+t,3-t,t,-5,5));
(%t3)
(%o3)
1.2 a)
Definição da curva a)
(%i4) C_a(t):=[1+t,3-t];
(%o4) C_a t := [ 1 + t , 3 − t ]
CC_Curvas_Praticas_Ex21_2014.wxmx 2 / 19
(%i5) C_a(t)[1];C_a(t)[2];
(%o5) t + 1
(%o6) 3 − t
Representação da curva
(%i10) wxdraw2d(parametric(1+t,3-t,t,-5,5));
(%t10)
(%o10)
(%i11) wxdraw2d(
parametric(C_a(t)[1],C_a(t)[2],t,-5,5));
(%t11)
(%o11)
(%i12) wxdraw2d(
implicit(x+y=4,x,-4,6,y,-2,8));
(%t12)
(%o12)
(%i13) tmin:-5$
tmax:5$
numt:10$
lista_tempos:makelist(tmin+k*(tmax-tmin)/numt, k, 0, numt)$
/* Cmin:C_a(tmin)$ */
/* Cmax:C_a(tmax)$ */
with_slider_draw(
u, lista_tempos,
/* xrange = [-5,5], yrange = [-2,8], */
parametric(C_a(t)[1],C_a(t)[2], t , tmin, tmax),
point_size = 2, point_type=filled_circle, color=red,
points([C_a(u)])
);
(%t17)
(%o17)
1.3 b)
b)
CC_Curvas_Praticas_Ex21_2014.wxmx 4 / 19
(%i18) C_b(t):=[1+t^2,3-t]$
C_b(-5);C_b(5);
(%o19) [ 26 , 8 ]
(%o20) [ 26 , − 2 ]
(%i21) wxdraw2d(
parametric(C_b(t)[1],C_b(t)[2],t,-5,5));
(%t21)
(%o21)
(%i22) tmin:-5$
tmax:5$
numt:10$
lista_tempos:makelist(tmin+k*(tmax-tmin)/numt, k, 0, numt)$
with_slider_draw(
u, lista_tempos,
parametric(C_b(t)[1],C_b(t)[2], t , tmin, tmax),
point_size = 2, point_type=filled_circle, color=red,
points([C_b(u)])
);
(%t26)
(%o26)
A velocidade da curva num instante `t` é o vector `V(t)` em que `V`é a derivada de `C`.
Ao `v_esc(t)`chama-se a velocidade escalar (ou rapidez) da curva `C`.
`v_esc(t) not=0` é equivalente a dizer que no instante `t, `C(t)` é um ponto regular.
Neste caso, podemos definir
`T(t) - vector unitário tangente
N(t) - vector unitário normal `dT/dt=v_esc^2 k N` `dT/ds=k N`
k(t) - curvatura `k = ||dT/ds|| = (1/v_esc)||dT/dt||`
`s(t1)´ - comprimento do arco em `t1`, contado partir de `t=t0` - espaço percorrido
pelo ponto `C(t)`entre os instantes `t0`e `t1`
CC_Curvas_Praticas_Ex21_2014.wxmx 5 / 19
(%i27) vetor_unit(u):=(1/(sqrt(u.u)))*u;
define(V_b(t),diff(C_b(t), t));
define(v_esc_b(t), sqrt(V_b(t).V_b(t)));
define(T_b(t),vetor_unit(V_b(t)));
define(dT_b(t), diff(T_b(t), t));
define(N_b(t),ratsimp(vetor_unit(dT_b(t))));
define(k_b(t),ratsimp((1/(v_esc_b(t)))*(sqrt(dT_b(t).dT_b(t)))));
1
(%o27) vetor_unit u := u
u . u
(%o28) V_b t := [ 2 t , − 1 ]
2
(%o29) v_esc_b t := 4 t +1
2t 1
(%o30) T_b t := [ ,− ]
2 2
4 t +1 4 t +1
2
2 8t 4t
(%o31) dT_b t := [ − , ]
2 3/2 3/2
4 t +1 2 2
4 t +1 4 t +1
2 4 2
4 t +1 2t 16 t + 8 t + 1
(%o32) N_b t := [ , ]
4 2 3/2
16 t + 8 t + 1 2
4 t +1
2
(%o33) k_b t :=
2 4 2
4 t +1 16 t + 8 t + 1
Notemos que:
- a rapidez não se anula, logo não existem pontos singulares.
(%i34) solve(v_esc_b(t)=0,t);
%i %i
(%o34) [ t = − ,t= ]
2 2
(%i35) tmin:-10$
tmax:10$
numt:30$
lista_tempos:makelist(tmin+k*(tmax-tmin)/numt, k, 0, numt)$
with_slider_draw(
u, lista_tempos,
point_size = 2,
point_type=filled_circle,
color=red,
points([C_b(u)]),
color=green,
head_length = .2,
head_angle = 12, /* em graus */
vector(C_b(u),T_b(u)),
color=black,
vector(C_b(u),N_b(u))
);
(%t39)
(%o39)
`s(t1)´ - comprimento do arco em `t1`, contado partir de `t=t0` - comprimento do traço percorrido
pelo ponto `C(t)`entre os instantes `t0`e `t1`
(%i41) s_b(0,5);
asinh 10 + 10 101
(%o41)
4
1.4 c)
CC_Curvas_Praticas_Ex21_2014.wxmx 7 / 19
c)
Definição da curva e calculo de alguns pontos da curva: ponto inicial, ponto final, etc.
(%i43) C_c(t):=[(1-t^2)/(1+t^2),2*t/(1+t^2)];
C_c(-5);C_c(5);C_c(0);
2
1−t 2t
(%o43) C_c t := [ , ]
2 2
1+t 1+t
12 5
(%o44) [ − ,− ]
13 13
12 5
(%o45) [ − , ]
13 13
(%o46) [ 1 , 0 ]
Representação da curva
(%i47) wxdraw2d(
parametric(C_c(t)[1],C_c(t)[2],t,0,1));
(%t47)
(%o47)
(%i48) wxdraw2d(
parametric(C_c(t)[1],C_c(t)[2],t,-1,1));
(%t48)
(%o48)
CC_Curvas_Praticas_Ex21_2014.wxmx 8 / 19
(%i49) wxdraw2d(
parametric(C_c(t)[1],C_c(t)[2],t,-2,2));
(%t49)
(%o49)
(%i50) wxdraw2d(
parametric(C_c(t)[1],C_c(t)[2],t,-5,5));
(%t50)
(%o50)
(%t51)
(%o51)
CC_Curvas_Praticas_Ex21_2014.wxmx 9 / 19
(%t52)
(%o52)
O lugar geométrico dos pontos da curva está contido na circunferência centrada na origem de raio 1.
(%i53) C_c(t)[1]^2+C_c(t)[2]^2;
2
2 2
1−t 4t
(%o53) +
2 2
2 2
t +1 t +1
(%i54) ratsimp(C_c(t)[1]^2+C_c(t)[2]^2);
(%o54) 1
(%i55) tmin:-2$
tmax:2$
numt:30$
lista_tempos:makelist(tmin+k*(tmax-tmin)/numt, k, 0, numt)$
with_slider_draw(
u, lista_tempos,
nticks = 500,
parametric(C_c(t)[1],C_c(t)[2], t, tmin, tmax),
point_size = 2, point_type=filled_circle, color=red,
points([C_c(u)])
);
(%t59)
(%o59)
CC_Curvas_Praticas_Ex21_2014.wxmx 10 / 19
(%i60) C_c(t);
2
1−t 2t
(%o60) [ , ]
2 2
t +1 t +1
A velocidade da curva num instante `t` é o vector `V(t)` em que `V`é a derivada de `C`.
Ao `v_esc(t)`chama-se a velocidade escalar (ou rapidez) da curva `C`.
`v_esc(t) not=0` é equivalente a dizer que no instante `t, `C(t)` é um ponto regular.
Neste caso, podemos definir
`T(t) - vector unitário tangente
N(t) - vector unitário normal `dT/dt=v_esc^2 k N` `dT/ds=k N`
k(t) - curvatura `k = ||dT/ds|| = (1/v_esc)||dT/dt||`
`s(t1)´ - comprimento do arco em `t1`, contado partir de `t=t0` - espaço percorrido
pelo ponto `C(t)`entre os instantes `t0`e `t1`
(%i65) vetor_unit(u):=(1/(sqrt(u.u)))*u;
define(V_c(t),ratsimp(diff(C_c(t), t)));
define(v_esc_c(t), ratsimp(sqrt(V_c(t).V_c(t))));
define(T_c(t),ratsimp(vetor_unit(V_c(t))));
define(dT_c(t), ratsimp(diff(T_c(t), t)));
define(N_c(t),ratsimp(vetor_unit(dT_c(t))));
define(k_c(t),ratsimp((1/(v_esc_c(t)))*(sqrt(dT_c(t).dT_c(t)))));
1
(%o65) vetor_unit u := u
u . u
2
4t 2 t −2
(%o66) V_c t := [ − ,− ]
4 2 4 2
t +2 t +1 t +2 t +1
2
(%o67) v_esc_c t :=
4 2
t +2 t +1
2
2t t −1
(%o68) T_c t := [ − ,− ]
4 2 4 2
t +2 t +1 t +2 t +1
2 4 2 4 2
2 t −2 t +2 t +1 4t t +2 t +1
(%o69) dT_c t := [ ,− ]
6 4 2 6 4 2
t +3 t +3 t +1 t +3 t +3 t +1
2
t −1 2t
(%o70) N_c t := [ ,− ]
2 2
t +1 t +1
(%o71) k_c t := 1
A velocidade escalar ou rapidez não se anula, logo todos os pontos da curva são regulares.
(%i72) tmin:-10$
tmax:10$
numt:20$
lista_tempos:makelist(tmin+k*(tmax-tmin)/numt, k, 0, numt)$
with_slider_draw(
u, lista_tempos,
nticks = 500,
xrange = [-2,2], yrange = [-2,2],
(%t76)
(%o76)
`s(t1)´ - comprimento do arco em `t1`, contado partir de `t=t0` - comprimento do traço percorrido
pelo ponto `C(t)`entre os instantes `t0`e `t1`
(%i78) float(s_c(0,1));
(%o78) 1.570796326794897
O resultado está correcto, pois entre 0 e 1 a curva é um quarto de circunferência: 2*%pi*r/4 = %pi/4
(%i79) float(%pi/2);
(%o79) 1.570796326794897
(%i80) float(s_c(-10,10));
(%o80) 5.884510697214939
Os resultado estão coerentes, pois á medida que t aumenta a curva é quase uma circunferência de perímetro: 2*%pi.
CC_Curvas_Praticas_Ex21_2014.wxmx 12 / 19
(%i82) float(2*%pi);
(%o82) 6.283185307179586
1.5 d)
d)
(%i83) C_d(t):=[t-sin(t),1-cos(t)]$
C_d(0);C_d(2*%pi);C_d(4*%pi);C_d(6*%pi);C_d(8*%pi);
(%o84) [ 0 , 0 ]
(%o85) [ 2 π , 0 ]
(%o86) [ 4 π , 0 ]
(%o87) [ 6 π , 0 ]
(%o88) [ 8 π , 0 ]
Representação da curva
(%i89) wxdraw2d(
nticks = 500,
xrange = [0,8*%pi], yrange = [0,2],
parametric(C_d(t)[1],C_d(t)[2],t,0,8*%pi));
(%t89)
(%o89)
(%i90) wxdraw2d(
parametric(C_d(t)[1],C_d(t)[2],t,0,2*%pi));
(%t90)
(%o90)
CC_Curvas_Praticas_Ex21_2014.wxmx 13 / 19
(%i91) wxdraw2d(
parametric(2*C_d(t)[1],2*C_d(t)[2],t,0,2*%pi));
(%t91)
(%o91)
(%i92) tmin:0$
tmax:8*%pi$
numt:50$
lista_tempos:makelist(tmin+k*(tmax-tmin)/numt, k, 0, numt)$
with_slider_draw(
u, lista_tempos,
nticks = 500,
parametric(C_d(t)[1],C_d(t)[2], t , tmin, tmax),
point_size = 2, point_type=filled_circle, color=red,
points([C_d(u)])
);
(%t96)
(%o96)
A velocidade da curva num instante `t` é o vector `V(t)` em que `V`é a derivada de `C`.
Ao `v_esc(t)`chama-se a velocidade escalar (ou rapidez) da curva `C`.
`v_esc(t) not=0` é equivalente a dizer que no instante `t, `C(t)` é um ponto regular.
Neste caso, podemos definir
`T(t) - vector unitário tangente
N(t) - vector unitário normal `dT/dt=v_esc^2 k N` `dT/ds=k N`
k(t) - curvatura `k = ||dT/ds|| = (1/v_esc)||dT/dt||`
`s(t1)´ - comprimento do arco em `t1`, contado partir de `t=t0` - espaço percorrido
pelo ponto `C(t)`entre os instantes `t0`e `t1`
CC_Curvas_Praticas_Ex21_2014.wxmx 14 / 19
(%i97) vetor_unit(u):=(1/(sqrt(u.u)))*u;
define(V_d(t),trigsimp(diff(C_d(t), t)));
define(v_esc_d(t), trigsimp(sqrt(V_d(t).V_d(t))));
define(T_d(t),trigsimp(vetor_unit(V_d(t))));
define(dT_d(t), trigsimp(diff(T_d(t), t)));
define(N_d(t),trigsimp(vetor_unit(dT_d(t))));
define(k_d(t),trigsimp((1/(v_esc_d(t)))*(sqrt(dT_d(t).dT_d(t)))));
1
(%o97) vetor_unit u := u
u . u
(%o98) V_d t := [ 1 − cos t , sin t ]
(%i104) solve(v_esc_d(t)=0,t);
solve: using arc-trig functions to get a solution.
Some solutions will be lost.
(%o104) [ t = 0 ]
(%i106) load(newton1);
(%o106) /Applications/Maxima.app/Contents/Resources/maxima/share/maxima/5.30.0/share/numeric/newton1.mac
(%i107) newton(v_esc_d(t),t,0,1/10000);
(%o107) 0
(%i108) newton(v_esc_d(t),t,2,1/10000);
−12
(%o108) 1.022035185432521 10
(%i109) newton(v_esc_d(t),t,6,1/10000);
(%o109) 6.283185306600995
(%i110) newton(v_esc_d(t),t,4,1/10000);
(%o110) 6.283185307361586
(%i111) newton(v_esc_d(t),t,8,1/10000);
(%o111) 6.283184774326122
CC_Curvas_Praticas_Ex21_2014.wxmx 15 / 19
(%i112) wxdraw2d(
explicit(v_esc_d(t),t,0,8*%pi));
(%t112)
(%o112)
`s(t1)´ - comprimento do arco em `t1`, contado partir de `t=t0` - comprimento do traço percorrido
pelo ponto `C(t)`entre os instantes `t0`e `t1`
(%i114) float(2*%pi);
(%o114) 6.283185307179586
1.6 e)
(%i115) load(draw)$
set_draw_defaults(
dimensions =[500,300],
/* proportional_axes = xy, */
axis_top=false,axis_bottom=false,
axis_left=false, axis_right=false,
grid =true,
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
)$
Definição da curva e calculo de alguns pontos da curva: ponto inicial, ponto final, etc.
(%i117) C_e(t):=[sec(t),tan(t)]$
C_e(0);C_e(%pi/2);
(%o118)[1,0]
expt: undefined: 0 to a negative exponent.
#0: C_e(t=%pi/2)
-- an error. To debug this try: debugmode(true);
CC_Curvas_Praticas_Ex21_2014.wxmx 16 / 19
(%i120) sec(0);
(%o120) 1
Representação da curva
(%i121) wxdraw2d(
parametric(C_e(t)[1],C_e(t)[2],t,0,%pi/10));
(%t121)
(%o121)
(%i122) tmin:0$
tmax:%pi/10$
numt:10$
lista_tempos:makelist(tmin+k*(tmax-tmin)/numt, k, 0, numt)$
with_slider_draw(
u, lista_tempos,
parametric(C_e(t)[1],C_e(t)[2], t , tmin, tmax),
point_size = 2, point_type=filled_circle, color=red,
points([C_e(u)])
);
(%t126)
(%o126)
A velocidade da curva num instante `t` é o vector `V(t)` em que `V`é a derivada de `C`.
Ao `v_esc(t)`chama-se a velocidade escalar (ou rapidez) da curva `C`.
`v_esc(t) not=0` é equivalente a dizer que no instante `t, `C(t)` é um ponto regular.
Neste caso, podemos definir
`T(t) - vector unitário tangente
N(t) - vector unitário normal `dT/dt=v_esc^2 k N` `dT/ds=k N`
k(t) - curvatura `k = ||dT/ds|| = (1/v_esc)||dT/dt||`
`s(t1)´ - comprimento do arco em `t1`, contado partir de `t=t0` - espaço percorrido
pelo ponto `C(t)`entre os instantes `t0`e `t1`
CC_Curvas_Praticas_Ex21_2014.wxmx 17 / 19
(%i127) vetor_unit(u):=(1/(sqrt(u.u)))*u;
define(V_e(t),ratsimp(diff(C_e(t), t)));
define(v_esc_e(t), ratsimp(sqrt(V_e(t).V_e(t))));
define(T_e(t),ratsimp(vetor_unit(V_e(t))));
define(dT_e(t), ratsimp(diff(T_e(t), t)));
define(N_e(t),ratsimp(vetor_unit(dT_e(t))));
define(k_e(t),ratsimp((1/(v_esc_e(t)))*(sqrt(dT_e(t).dT_e(t)))));
1
(%o127) vetor_unit u := u
u . u
2
(%o128) V_e t := [ sec t tan t , sec t ]
2 2 4
(%o129) v_esc_e t := sec t tan t + sec t
2
sec t tan t sec t
(%o130) T_e t := [ , ]
2 2 4 2 2 4
sec t tan t + sec t sec t tan t + sec t
3 2 5 2 2 4 3 2
sec t tan t − sec t sec t tan t + sec t tan t − sec t tan t
(%o131) dT_e t := [ − , ]
2 2 2 2 4 4 2 2 4
tan t + sec t sec t tan t + sec t tan t + 2 sec t tan t + sec t
3 2 5 4 2 2 4
sec t tan t − sec t tan t + 2 sec t tan t + sec t
(%o132) N_e t := [ − ,
2 2 2 2 4 2 4 4 2 6
tan t + sec t sec t tan t + sec t sec t tan t − 2 sec t tan t + sec t
2 2 4 3 2
sec t tan t + sec t tan t − sec t tan t
]
4 2 2 4 2 4 4 2 6
tan t + 2 sec t tan t + sec t sec t tan t − 2 sec t tan t + sec t
2 4 4 2 6
sec t tan t − 2 sec t tan t + sec t
(%o133) k_e t :=
2 2 4 4 2 2 4
sec t tan t + sec t tan t + 2 sec t tan t + sec t
(%i134) trigreduce(v_esc_e(t));
2 2 4
(%o134) sec t tan t + sec t
2 2 4
(%o135) find_root sec t tan t + sec t , x , 0.0 , 1.047197551196598
(%i136) wxdraw2d(
explicit(v_esc_e(t),t,0,%pi/3));
(%t136)
(%o136)
(%i137) tmin:0$
tmax:%pi/2.1$
numt:30$
lista_tempos:makelist(tmin+k*(tmax-tmin)/numt, k, 0, numt)$
with_slider_draw(
u, lista_tempos,
nticks = 500,
xrange = [1,6], yrange = [0,5],
parametric(C_e(t)[1],C_e(t)[2], t , tmin, tmax),
point_size = 2,
point_type=filled_circle,
color=red,
points([C_e(u)]),
color=green,
head_length = .2,
head_angle = 12, /* em graus */
vector(C_e(u),T_e(u)),
color=black,
vector(C_e(u),N_e(u))
);
(%t141)
(%o141)
`s(t1)´ - comprimento do arco em `t1`, contado partir de `t=t0` - comprimento do traço percorrido
pelo ponto `C(t)`entre os instantes `t0`e `t1`
(%i143) s_e(0,%pi/2);
π
2
2 2 4
(%o143) sec t tan t + sec t dt
0