How do you recenter a spherical coordinate system. For example, if the center were at $\left (0, 0, 0 \right )$ and I wanted to move the center of the spherical coordinate system to $\left (\rho\_{1}, \Theta\_{1}, \Phi\_{1} \right )$, then what transformation would I apply to $\left (\rho\_{2}, \Theta\_{2}, \Phi\_{2} \right )$?


In cartesian coordinates, you would simply subtract the two vectors.



Recentering a Spherical Coordinate Sytem
This is going to be unsightly...


The following Mathematica code:



```

Needs["VectorAnalysis`"]
Simplify@ CoordinatesFromCartesian[
 CoordinatesToCartesian[{r, theta, phi}, Spherical] 
                     + CoordinatesToCartesian[{r0, theta0, phi0}, Spherical],
 Spherical
 ] 

```

gives the following output (doctored so that it looks nicer):


$$ r' = \sqrt{r^2+2 r\_0 r \left(\sin (\theta ) \sin
 \left(\theta \_0\right) \cos \left(\phi -\phi
 \_0\right)+\cos (\theta ) \cos \left(\theta
 \_0\right)\right)+r\_0^2} $$


$$ \theta' = \cos ^{-1}\left(\frac{r \cos (\theta )+r\_0 \cos
 \left(\theta \_0\right)}{\sqrt{r^2+2 r\_0 r
 \left(\sin (\theta ) \sin \left(\theta
 \_0\right) \cos \left(\phi -\phi
 \_0\right)+\cos (\theta ) \cos \left(\theta
 \_0\right)\right)+r\_0^2}}\right) $$


$$ \phi' = \tan ^{-1}\left(r \sin (\theta ) \cos (\phi
 )+r\_0 \sin \left(\theta \_0\right) \cos
 \left(\phi \_0\right),r \sin (\theta ) \sin
 (\phi )+r\_0 \sin \left(\theta \_0\right) \sin
 \left(\phi \_0\right)\right) $$


In this last line, there is a two-argument variant of arctan, which is explained [here](http://en.wikipedia.org/wiki/Inverse_trigonometric_functions#Two-argument_variant_of_arctangent), for example.


