8
$\begingroup$

I am trying to linearize a vector expression $$\frac{(\mathbf{u}+d\mathbf{u})\times(\mathbf{v}+d\mathbf{v})}{\vert(\mathbf{u}+d\mathbf{u})\times(\mathbf{v}+d\mathbf{v})\vert}$$ Here is my code

$Assumptions = (u | v | du | dv) ∈ Vectors[3, Reals];
Simplify[Series[
Cross[(u + ϵ*du), (v + ϵ*dv)]/
Sqrt[Dot[Cross[(u + ϵ*du), (v + ϵ*dv)], 
Cross[(u + ϵ*du), (v + ϵ*dv)]]], {ϵ, 
0, 1}]]

And the solution is: enter image description here Two things I don't understand. First, is 1 a vector? 1={1,1,1}? And another thing is the meaning of the space between two vectors, does this means a cross product between two vectors?

$\endgroup$
1
  • 3
    $\begingroup$ You have found a bug acknowledged by Wolfram support and described here. $\endgroup$
    – mikado
    Commented Aug 6, 2018 at 20:30

2 Answers 2

7
$\begingroup$

As mikado pointed out, this is a bug and the return value is complete nonsense. Don't invest any time in interpreting it. Better use the time and send a bug report to Wolfram Support. This appears to be a really old bug and they won't fix it without sufficient peer pressure.

In the meantime, you can go on with

expr = Cross[(u + ϵ*du), (v + ϵ*dv)]/Sqrt[Dot[Cross[(u + ϵ*du), (v + ϵ*dv)]]];
(expr /. ϵ -> 0) + (D[expr, ϵ] /. ϵ -> 0) ϵ

$\frac{\epsilon (\text{du}\times v+u\times \text{dv})}{2 \sqrt{u\times v}}+\sqrt{u\times v}$

With regard to the second question: A space between two vectors is still interpreted as Times, hence as a component-wise multiplication, producing again a vector of same Length (if the two vectors have same Length and an error message otherwise).

$\endgroup$
3
$\begingroup$

Using my answer to the linked question, you can do:

protect = Unprotect[System`Private`InternalSeries];
System`Private`InternalSeries[a_Dot | a_Cross, {x_, x0_, n_Integer?NonNegative}] := Module[
    {d = NestList[D[#, x]&, a, n], res},

    res = Quiet @ Check[d /. x->x0, $Failed];
    SeriesData[x, x0, TensorExpand @ res, 0, n+1, 1] /; res =!= $Failed
]
Protect @@ protect;

Then, your example works as intended:

$Assumptions = (u|v|du|dv) \[Element] Vectors[3,Reals];
Simplify @ Series[
    Cross[u+\[Epsilon]*du,v+\[Epsilon]*dv]/Sqrt[Dot[Cross[u+\[Epsilon]*du,v+\[Epsilon]*dv], Cross[u+\[Epsilon]*du,v+\[Epsilon]*dv]]],
    {\[Epsilon],0,1}
] //TeXForm

$\frac{u\times v}{\sqrt{u.u v.v-(u.v)^2}}-\frac{\epsilon \left(u\times v (-\operatorname{du}.v u.v+v.v \operatorname{du}.u+u.u \operatorname{dv}.v-\operatorname{dv}.u u.v)+\left((u.v)^2-u.u v.v\right) (\operatorname{du}\times v-\operatorname{dv}\times u)\right)}{\left(u.u v.v-(u.v)^2\right)^{3/2}}+O\left(\epsilon ^2\right)$

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.