The basic multivariable Taylor expansion formula around a point is as follows:
$$ f(\mathbf r + \mathbf a) = f(\mathbf r) + (\mathbf a \cdot \nabla )f(\mathbf r) + \frac{1}{2!}(\mathbf a \cdot \nabla)^2 f(\mathbf r) + \cdots \tag{1}$$
In Mathematica, as far as I know, there is only one function, Series
that deals with Taylor expansion. And this function surprisingly doesn't expand functions in the way the above multivariable Taylor expansion formula does. What I mean is that the function Series
doesn't produce a Taylor series truncated at the right order.
For example, if I want to expand $f(x,y)$ around $(0,0)$ to order $2$, I think I should evaluate the following Mathematica expression:
Normal[Series[f[x,y],{x,0,2},{y,0,2}]]
But the result also gives order $3$ and order $4$ terms. Of course, I can write the expression in the following way to get a series truncated at order $2$:
Normal[Series[f[x,y],{x,0,1},{y,0,1}]]
but in this way I lose terms like $x^2$ and $y^2$, so it is still not right.
The formula $(1)$ gives each order in each term, so if the function Series
would expand a function in the way formula $(1)$ does, there will be no problem.
I am disappointed that the Mathematica developers designed Series
as they did. Does anyone know how to work around this problem?