Macaulay2 » Documentation
Packages » Oscillators :: oscSystem
next | previous | forward | backward | up | index | toc

oscSystem -- the ideal of the reduced equilibrium points of a dynamical system of oscillators

Description

$R$ should be a ring created with oscRing. The dynamical system involved is the oscillator system associated to $G$: one angle per vertex. If $a_{ij} = 1$ if $(i,j)$ is an edge of the undirected graph $G$, and is zero otherwise, then the system is $d\theta_i/dt = \sum_j a_{ij} \sin(\theta_j - \theta_i)$ where we consider only reduced equilibrium solutions $\theta_0 = 0$.

This function returns the ideal of equilibrium points, where angles $(0, \theta_1, ..., \theta_{n-1})$ are represented via cosines and sines of the angles.

i1 : G = graph({0,1,2,3}, {{0,1},{1,2},{2,3},{0,3}})

o1 = Graph{0 => {1, 3}}
           1 => {0, 2}
           2 => {1, 3}
           3 => {0, 2}

o1 : Graph
i2 : oscRing(G, CoefficientRing => CC)

o2 = CC  [x ..y ]
       53  0   3

o2 : PolynomialRing
i3 : R = oo

o3 = R

o3 : PolynomialRing
i4 : I = oscSystem(G,R)

                                                                            
o4 = ideal (x y  + x y  - x y  - x y , - x y  + x y  + x y  - x y , - x y  +
             1 0    3 0    0 1    0 3     1 0    0 1    2 1    1 2     2 1  
     ------------------------------------------------------------------------
                                                       2    2       2    2  
     x y  + x y  - x y , - x y  - x y  + x y  + x y , x  + y  - 1, x  + y  -
      1 2    3 2    2 3     3 0    3 2    0 3    2 3   0    0       1    1  
     ------------------------------------------------------------------------
         2    2       2    2
     1, x  + y  - 1, x  + y  - 1)
         2    2       3    3

o4 : Ideal of R
i5 : netList I_*

     +---------------------------+
o5 = |x y  + x y  - x y  - x y   |
     | 1 0    3 0    0 1    0 3  |
     +---------------------------+
     |- x y  + x y  + x y  - x y |
     |   1 0    0 1    2 1    1 2|
     +---------------------------+
     |- x y  + x y  + x y  - x y |
     |   2 1    1 2    3 2    2 3|
     +---------------------------+
     |- x y  - x y  + x y  + x y |
     |   3 0    3 2    0 3    2 3|
     +---------------------------+
     | 2    2                    |
     |x  + y  - 1                |
     | 0    0                    |
     +---------------------------+
     | 2    2                    |
     |x  + y  - 1                |
     | 1    1                    |
     +---------------------------+
     | 2    2                    |
     |x  + y  - 1                |
     | 2    2                    |
     +---------------------------+
     | 2    2                    |
     |x  + y  - 1                |
     | 3    3                    |
     +---------------------------+

We can find approximations to the 26 complex solutions to this system. If the system has positive dimension (not the case here), the idea is that this set of points should contain at least one on each component.

i6 : solveSystem I_*

o6 = {{.998764+.000577*ii, .998764+.000577*ii, .998764+.000577*ii,
     ------------------------------------------------------------------------
     .998764+.000577*ii, .0509835-.0112947*ii, .0509835-.0112947*ii,
     ------------------------------------------------------------------------
     .0509835-.0112947*ii, .0509835-.0112947*ii}, {-.998764-.000577*ii,
     ------------------------------------------------------------------------
     .998764+.000577*ii, -.998764-.000577*ii, .998764+.000577*ii,
     ------------------------------------------------------------------------
     .0509835-.0112947*ii, -.0509835+.0112947*ii, .0509835-.0112947*ii,
     ------------------------------------------------------------------------
     -.0509835+.0112947*ii}, {.998764+.000577*ii, -.998764-.000577*ii,
     ------------------------------------------------------------------------
     .998764+.000577*ii, -.998764-.000577*ii, -.0509835+.0112947*ii,
     ------------------------------------------------------------------------
     .0509835-.0112947*ii, -.0509835+.0112947*ii, .0509835-.0112947*ii},
     ------------------------------------------------------------------------
     {-.998764-.000577*ii, -.998764-.000577*ii, -.998764-.000577*ii,
     ------------------------------------------------------------------------
     -.998764-.000577*ii, -.0509835+.0112947*ii, -.0509835+.0112947*ii,
     ------------------------------------------------------------------------
     -.0509835+.0112947*ii, -.0509835+.0112947*ii}, (1, -1, -1, -1,
     ------------------------------------------------------------------------
     6.91782e-14+4.45095e-14*ii, -6.91747e-14-4.451e-14*ii,
     ------------------------------------------------------------------------
     -6.91782e-14-4.45095e-14*ii, -6.91738e-14-4.45024e-14*ii), (-1, 1, 1, 1,
     ------------------------------------------------------------------------
     1.18307e-12-1.29024e-12*ii, -1.21431e-17-6.07153e-18*ii,
     ------------------------------------------------------------------------
     1.18306e-12-1.29024e-12*ii, -1.73472e-18+3.29597e-17*ii), (1, 1, -1, 1,
     ------------------------------------------------------------------------
     1.18307e-12-1.29024e-12*ii, 1.21431e-17+6.07153e-18*ii,
     ------------------------------------------------------------------------
     1.18306e-12-1.29024e-12*ii, 1.73472e-18-3.29597e-17*ii), (1, 1, -1, 1,
     ------------------------------------------------------------------------
     -6.91973e-14-4.44991e-14*ii, -6.91973e-14-4.44993e-14*ii,
     ------------------------------------------------------------------------
     6.91973e-14+4.44991e-14*ii, -6.91981e-14-4.44993e-14*ii), (-1, -1, -1,
     ------------------------------------------------------------------------
     1, 6.91114e-14+4.44493e-14*ii, 6.9107e-14+4.44493e-14*ii,
     ------------------------------------------------------------------------
     6.91123e-14+4.44488e-14*ii, -6.9107e-14-4.44493e-14*ii), (1, -1, 1, 1,
     ------------------------------------------------------------------------
     -5.20417e-18-1.97325e-17*ii, 5.20417e-18+1.95156e-17*ii,
     ------------------------------------------------------------------------
     -1.21431e-17-1.97325e-17*ii, -6.07153e-18-1.99493e-17*ii), (1, -1, -1,
     ------------------------------------------------------------------------
     -1, -1.18307e-12+1.29024e-12*ii, 1.21431e-17+6.07153e-18*ii,
     ------------------------------------------------------------------------
     -1.18306e-12+1.29024e-12*ii, 1.73472e-18-3.29597e-17*ii), (-1, -1, 1,
     ------------------------------------------------------------------------
     -1, -1.18307e-12+1.29024e-12*ii, -1.21431e-17-6.07153e-18*ii,
     ------------------------------------------------------------------------
     -1.18306e-12+1.29024e-12*ii, -1.73472e-18+3.29597e-17*ii), (-1, 1, 1, 1,
     ------------------------------------------------------------------------
     -4.98056e-14-3.04075e-14*ii, 4.98026e-14+3.04078e-14*ii,
     ------------------------------------------------------------------------
     4.98056e-14+3.04078e-14*ii, 4.98056e-14+3.04153e-14*ii),
     ------------------------------------------------------------------------
     {-5.80794e-13+6.76896e-12*ii, -1.41421, 5.80785e-13-6.76896e-12*ii,
     ------------------------------------------------------------------------
     1.41421, -1, ii, 1, ii}, {-1.41421, 1.46259e-16+1.3977e-15*ii, 1.41421,
     ------------------------------------------------------------------------
     -1.37368e-16-1.41318e-15*ii, -ii, -1, -ii, 1}, (-1, -1, -1, 1,
     ------------------------------------------------------------------------
     -3.54669e-14-2.06987e-14*ii, -3.54669e-14-2.06983e-14*ii,
     ------------------------------------------------------------------------
     -3.54669e-14-2.06988e-14*ii, 3.54669e-14+2.0698e-14*ii), (1, 1, -1, 1,
     ------------------------------------------------------------------------
     1.58627e-14-1.66889e-14*ii, 4.69156e-15-1.03765e-14*ii,
     ------------------------------------------------------------------------
     -1.58627e-14+1.66889e-14*ii, 2.70314e-14-2.2997e-14*ii), (1, 1, 1, -1,
     ------------------------------------------------------------------------
     4.16334e-17+4.25007e-17*ii, 1.18308e-12-1.29022e-12*ii,
     ------------------------------------------------------------------------
     -1.73472e-18-3.98986e-17*ii, 1.18304e-12-1.29026e-12*ii), (-1, 1, -1, 1,
     ------------------------------------------------------------------------
     1.38778e-17+8.6736e-19*ii, -1.38778e-17-8.6736e-19*ii,
     ------------------------------------------------------------------------
     1.38778e-17+8.6736e-19*ii, -1.38778e-17-1.30104e-18*ii), (-1, 1, -1, -1,
     ------------------------------------------------------------------------
     4.16334e-17+4.25007e-17*ii, -1.18308e-12+1.29022e-12*ii,
     ------------------------------------------------------------------------
     -1.73472e-18-3.98986e-17*ii, -1.18304e-12+1.29026e-12*ii), (1, -1, -1,
     ------------------------------------------------------------------------
     -1, -1.58627e-14+1.66889e-14*ii, 4.69156e-15-1.03765e-14*ii,
     ------------------------------------------------------------------------
     1.58627e-14-1.66889e-14*ii, 2.70314e-14-2.2997e-14*ii),
     ------------------------------------------------------------------------
     {-4.02478e-12+9.23398e-12*ii, -1.41421, 4.02477e-12-9.23396e-12*ii,
     ------------------------------------------------------------------------
     1.41421, 1, ii, -1, ii}, {1.41421, 1.77228e-12+2.85777e-12*ii, -1.41421,
     ------------------------------------------------------------------------
     -1.77227e-12-2.85778e-12*ii, -ii, -1, -ii, 1},
     ------------------------------------------------------------------------
     {5.80794e-13-6.76896e-12*ii, -1.41421, -5.80785e-13+6.76896e-12*ii,
     ------------------------------------------------------------------------
     1.41421, -1, -ii, 1, -ii}, {-1.41421, 1.77228e-12+2.85777e-12*ii,
     ------------------------------------------------------------------------
     1.41421, -1.77227e-12-2.85778e-12*ii, -ii, 1, -ii, -1}, {-1.41421,
     ------------------------------------------------------------------------
     -3.00216e-16+3.05528e-16*ii, 1.41421, 2.91434e-16-2.99348e-16*ii, ii,
     ------------------------------------------------------------------------
     -1, ii, 1}, {-4.02478e-12+9.23398e-12*ii, 1.41421,
     ------------------------------------------------------------------------
     4.02477e-12-9.23396e-12*ii, -1.41421, -1, ii, 1, ii}, (1, 1, 1, 1,
     ------------------------------------------------------------------------
     1.38778e-17+8.6736e-19*ii, 1.38778e-17+8.6736e-19*ii,
     ------------------------------------------------------------------------
     1.38778e-17+8.6736e-19*ii, 1.38778e-17+1.30104e-18*ii), (-1, -1, -1, -1,
     ------------------------------------------------------------------------
     -1.38778e-17-8.6736e-19*ii, -1.38778e-17-8.6736e-19*ii,
     ------------------------------------------------------------------------
     -1.38778e-17-8.6736e-19*ii, -1.38778e-17-1.30104e-18*ii),
     ------------------------------------------------------------------------
     {-3.68614e-12-1.21065e-12*ii, 1.41421, 3.68614e-12+1.21066e-12*ii,
     ------------------------------------------------------------------------
     -1.41421, 1, ii, -1, ii}, {1.41421, -1.77228e-12-2.85777e-12*ii,
     ------------------------------------------------------------------------
     -1.41421, 1.77227e-12+2.85778e-12*ii, ii, -1, ii, 1}, {1.41421,
     ------------------------------------------------------------------------
     3.00216e-16-3.05528e-16*ii, -1.41421, -2.91434e-16+2.99348e-16*ii, -ii,
     ------------------------------------------------------------------------
     1, -ii, -1}, {4.02478e-12-9.23398e-12*ii, -1.41421,
     ------------------------------------------------------------------------
     -4.02477e-12+9.23396e-12*ii, 1.41421, 1, -ii, -1, -ii},
     ------------------------------------------------------------------------
     {4.02478e-12-9.23398e-12*ii, 1.41421, -4.02477e-12+9.23396e-12*ii,
     ------------------------------------------------------------------------
     -1.41421, -1, -ii, 1, -ii}, {-1.41421, -1.77228e-12-2.85777e-12*ii,
     ------------------------------------------------------------------------
     1.41421, 1.77227e-12+2.85778e-12*ii, ii, 1, ii, -1}, (-1, 1, -1, -1,
     ------------------------------------------------------------------------
     -4.9581e-14-3.04743e-14*ii, 4.95806e-14+3.04739e-14*ii,
     ------------------------------------------------------------------------
     -4.95771e-14-3.04739e-14*ii, -4.95806e-14-3.04739e-14*ii), (-1, 1, 1, 1,
     ------------------------------------------------------------------------
     1.58627e-14-1.66889e-14*ii, -4.69156e-15+1.03765e-14*ii,
     ------------------------------------------------------------------------
     -1.58627e-14+1.66889e-14*ii, -2.70314e-14+2.2997e-14*ii), (1, -1, 1, 1,
     ------------------------------------------------------------------------
     -4.16334e-17-4.25007e-17*ii, 1.18308e-12-1.29022e-12*ii,
     ------------------------------------------------------------------------
     1.73472e-18+3.98986e-17*ii, 1.18304e-12-1.29026e-12*ii), (1, -1, 1, -1,
     ------------------------------------------------------------------------
     -1.38778e-17-8.6736e-19*ii, 1.38778e-17+8.6736e-19*ii,
     ------------------------------------------------------------------------
     -1.38778e-17-8.6736e-19*ii, 1.38778e-17+1.30104e-18*ii), (-1, -1, 1, -1,
     ------------------------------------------------------------------------
     -1.58627e-14+1.66889e-14*ii, -4.69156e-15+1.03765e-14*ii,
     ------------------------------------------------------------------------
     1.58627e-14-1.66889e-14*ii, -2.70314e-14+2.2997e-14*ii), (-1, -1, -1, 1,
     ------------------------------------------------------------------------
     -4.16334e-17-4.25007e-17*ii, -1.18308e-12+1.29022e-12*ii,
     ------------------------------------------------------------------------
     1.73472e-18+3.98986e-17*ii, -1.18304e-12+1.29026e-12*ii), (1, 1, 1, -1,
     ------------------------------------------------------------------------
     1.30104e-17-1.40946e-17*ii, 1.30104e-17-1.36609e-17*ii,
     ------------------------------------------------------------------------
     1.99493e-17-1.56125e-17*ii, -1.30104e-17+1.38778e-17*ii), {1.41421,
     ------------------------------------------------------------------------
     -1.46259e-16-1.3977e-15*ii, -1.41421, 1.37368e-16+1.41318e-15*ii, ii, 1,
     ------------------------------------------------------------------------
     ii, -1}, {5.80794e-13-6.76896e-12*ii, 1.41421,
     ------------------------------------------------------------------------
     -5.80785e-13+6.76896e-12*ii, -1.41421, 1, -ii, -1, -ii}}

o6 : List
i7 : #oo

o7 = 44

We can find approximations to the 6 real solutions to this system.

i8 : findRealSolutions I
warning: some solutions are not regular: {4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 18, 19, 20, 27, 28, 29, 30, 31, 38, 39, 40}

o8 = {{-1, 1, 1, 1, 0, 0, 0, 0}, {1, 1, -1, 1, 0, 0, 0, 0}, {1, -1, 1, 1, 0,
     ------------------------------------------------------------------------
     0, 0, 0}, {1, 1, 1, -1, 0, 0, 0, 0}, {-1, 1, 1, 1, 0, 0, 0, 0}, {1, 1,
     ------------------------------------------------------------------------
     -1, -1, 0, 0, 0, 0}, {1, -1, -1, -1, 0, 0, 0, 0}, {-1, -1, 1, 1, 0, 0,
     ------------------------------------------------------------------------
     0, 0}, {1, -1, -1, -1, 0, 0, 0, 0}, {-1, -1, -1, 1, 0, 0, 0, 0}, {-1,
     ------------------------------------------------------------------------
     -1, 1, -1, 0, 0, 0, 0}, {-1, 1, -1, -1, 0, 0, 0, 0}, {1, 1, -1, 1, 0, 0,
     ------------------------------------------------------------------------
     0, 0}, {1, -1, -1, -1, 0, 0, 0, 0}, {-1, -1, 1, -1, 0, 0, 0, 0}, {1, -1,
     ------------------------------------------------------------------------
     -1, 1, 0, 0, 0, 0}, {-1, 1, 1, -1, 0, 0, 0, 0}, {-1, 1, 1, 1, 0, 0, 0,
     ------------------------------------------------------------------------
     0}, {-1, -1, 1, -1, 0, 0, 0, 0}}

o8 : List
i9 : #oo

o9 = 19

The angles of these solutions (in degrees, not radians, and the 3 refers to the numbner of oscillators).

i10 : netList getAngles(3, findRealSolutions I, Radians=>false)
warning: some solutions are not regular: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 18, 19, 20, 27, 28, 29, 30, 37, 38, 39, 40, 41}

      +---+---+---+
o10 = |315|180|180|
      +---+---+---+
      |135|0  |0  |
      +---+---+---+
      |45 |0  |180|
      +---+---+---+
      |45 |180|0  |
      +---+---+---+
      |315|0  |0  |
      +---+---+---+
      |45 |0  |180|
      +---+---+---+
      |135|0  |0  |
      +---+---+---+
      |45 |180|0  |
      +---+---+---+
      |315|0  |180|
      +---+---+---+
      |225|180|0  |
      +---+---+---+
      |315|180|180|
      +---+---+---+
      |315|180|180|
      +---+---+---+
      |135|180|180|
      +---+---+---+
      |225|180|0  |
      +---+---+---+
      |225|0  |180|
      +---+---+---+
      |135|180|180|
      +---+---+---+
      |45 |0  |180|
      +---+---+---+
      |315|0  |0  |
      +---+---+---+
      |315|180|180|
      +---+---+---+
      |225|180|0  |
      +---+---+---+
      |45 |180|180|
      +---+---+---+
      |225|0  |0  |
      +---+---+---+
      |45 |0  |180|
      +---+---+---+
      |135|0  |0  |
      +---+---+---+
      |45 |180|0  |
      +---+---+---+
      |225|180|0  |
      +---+---+---+
      |135|180|180|
      +---+---+---+
      |315|0  |0  |
      +---+---+---+

See also

Ways to use oscSystem:

  • oscSystem(Graph)
  • oscSystem(Graph,Ring)

For the programmer

The object oscSystem is a method function with options.


The source of this document is in Oscillators/Documentation.m2:263:0.