I would like to solve the system of equations $$\sum\limits_{i \in S_m}{} x_{i} \equiv b_m \quad (\textrm{mod } 2\pi)$$ in $n$ real-valued variables $x_1, \dots, x_n$, where the $S_m$'s are length-$k$ subsets of $\{1,\dots,n\}$ (where $k$ is some fixed integer in $[1,n]$) and the $b_m$'s are real numbers in $[0, 2\pi)$. We assume the system does have a solution (clearly, this means that infinitely many solutions exist, since one could just add arbitrary integer multiples of $2\pi$ to any variable).
Here, $a \equiv b \quad (\textrm{mod } 2\pi)$ means that $a-b$ is an integer multiple of $2\pi$.
I am quite unsure how to approach this, because the real numbers modulo $2\pi$ are not a field ($\frac{1}{2\pi}$ has no multiplicative inverse); on the other hand, the problem intuitively still "feels" like it should be solvable.
(Note that this question is very similar to How do you solve linear least-squares modulo $2 \pi$?, which is unanswered, although I am interested in the specific case of recovering a solution when one exists - not in minimizing the least-squares objective for general problems of this form that may not admit a solution.)
I have the same problem in trying to build a sphere spring embedder for planar graphs (all planar graphs can be embedded onto (unit) sphere because of bijection of plane and unit sphere minus north pole). I have overcome the wrap around with a trick sofar.
First I determine (very slow, $O(|V|⁴)$ runtime) tetrahedron vertices with sum of shortest paths maximal). Then I discard two shortest tetrahedron paths not sharing vertices and a big separating circle remains. I give the $4$ vertices coordinates
Then vertices of tetrahedron shortest paths are evenly placed between those vertex positions:
Visualization of separating circle vertex placements
For all vertices on "left" side of separating circle the horizontal polar angle is in range $0°..270°$, and no wrap around can happen. So I use Tutte's system of linear equations solver with separating circle as "outer face" and get polar coordinate positions for left side vertices.
Then I add 2*Math.PI to all vertices in $0°..90°$ range, resulting in all horizontal coordinates being in range $180°..450°$, allowing to solve system of linear equations without wrap for "right" side of separating circle vertices.
This is an example output (my code creates OpenSCAD file for visualization):
corresponding forum posting
sphere spring embedding of (planar) C60 fullerene
As you can see vertices "left" are numbered "$1$", vertices "right" are numbered "$2$" and vertices on separating circle are numbered "$0$" (edges on separating circle are orange as well).
Now I want to fixate all vtype $1$ and $2$ vertices and determine new coordinates for vtype=$0$ vertices by solving system of linear equations, and have the wrap around problem as well.
Now an idea (not complete yet) on how to solve system of linear equations in case not arbitrary precision is needed. This is $2π$:
I took first $8$ digits $62831853$, but that was no prime. But $62831849$ is a prime. So with $7$ digits past decimal point precision values can be represented in $Z/pZ$ with prime $p=62831849$.
If a solution exists in $Z/pZ$, done.
If not, values have to be changed slightly (eg. by increasing/decreasing last digit) in order to find a solution.
The $4$ missing integers until $2π$ should not be a problem.
Will try Gaussian elminination which works on $Z/pZ$ with some modifications in order to find an approximate solution (which would be perfectly fine for me) now, and update here if successful.