More about Problems with Module
- To: mathgroup at smc.vnet.net
- Subject: [mg112076] More about Problems with Module
- From: Docente Sergio Miguel Terrazas Porras <sterraza at uacj.mx>
- Date: Sun, 29 Aug 2010 02:49:58 -0400 (EDT)
Hi again Sjoerd,
The point of the program is this.
It is easily proven mathematically that the derivative of a vector of constant magnitude is a vector perpendicular to the first one (this is what I am trying to ilustrate).
By replacing du[t_] = acel'[t] // Normalize, for du[t_] = unitario'[t]// Normalize, the resulting vector is not perpendicular to acel[t], because acel'[t] is not of constant length.
So the problem seems to come at taking de derivative of acel[t]/Norm[acel[t]].
By the way, I was not aware of the Normalize command.
Thanks any way, my code does work as expected, as long as I leave empty the list of local variables in Module.
Thanks
Sergio
________________________________________
De: Sjoerd C. de Vries [sjoerd.c.devries at gmail.com]
Enviado el: s=E1bado, 28 de agosto de 2010 04:28 p.m.
Para: Docente Sergio Miguel Terrazas Porras
Asunto: Re: Problems with Module
This slight modification of your code seems to work (even though it
shouldn't according to John).
f[t_] := 4 Sin[t]; g[t_] := 2 Cos[t]; a = 0; b = 2 \[Pi];
DerVectConst[f_, g_, a_, b_] :=
Module[{r, vel, acel, unitario, derivadadeu, du},
r[t_] = {f[t], g[t]};
vel[t_] = r'[t];
acel[t_] = r''[t];
unitario[t_] = acel[t] // Normalize;
du[t_] = acel'[t] // Normalize;
Manipulate[f1 = Graphics[{Thick, Blue, Arrow[{r[t], r[t] +
du[t]}]}];
f2 = Graphics[{Thick, Green, Arrow[{r[t], r[t] + unitario[t]}]}];
g1 = ParametricPlot[r[t], {t, a, b}, AspectRatio -> Automatic,
PlotStyle -> {Thick, Red}];
txt = Graphics[{Text[
Style["\!\(\*OverscriptBox[\"u\", \"^\"]\)", 18,
Bold], (r[t] + 1.1 unitario[t])],
Text[Style[
"\!\(\*SuperscriptBox[OverscriptBox[\"u\", \"^\"], \"\[Prime]\
\"]\)", 18, Bold], (r[t] + 1.1 du[t])]}];
punto = Graphics[{PointSize[.02], Point[r[t]]}];
Show[g1, f1, f2, txt, punto, PlotRange -> All], {t, a, b}]]
DerVectConst[f, g, a, b]
Cheers -- Sjoerd