I hope I have understood you question correctly.
The constriction onto those circles means that your vector R
(I will call it below vR
) lives on a sphere with radius r
with the constrains x==0
or y==0
or z==0
. Therefore it make sense to change to cartesian coordinates first. My short code should be self-explanatory:
vR[\[Phi]_, \[Theta]_] := CoordinateTransform["Spherical" -> "Cartesian", {r, \[Phi], \[Theta]}]
vF[\[Phi]_, \[Theta]_] := CoordinateTransform["Spherical" -> "Cartesian", {1, \[Phi], \[Theta]}]
constrains = ConstantArray[1, {3, 3}] - IdentityMatrix[3];
vF[\[Phi]1, \[Theta]1].(vR[\[Phi], \[Theta]] #) & /@ constrains
The result are three solutions, one for each constraint.
Hope that helps, regards -- Henrik