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

oscRing -- create a polynomial ring for a given graph or number of oscillators

Description

This function returns a polynomial ring in $2n$ variables representing the cosine and the sine of $n$ angles. Inputting a number assumes that the vertices are labeled $0, \ldots, n$.

i1 : oscRing(3, CoefficientRing => CC)

o1 = CC  [x ..y ]
       53  0   2

o1 : PolynomialRing
i2 : oscRing(3, CoefficientRing => CC, Symbols=>{c, s})

o2 = CC  [c ..c , s ..s ]
       53  0   2   0   2

o2 : PolynomialRing

If one gives a graph with Reduced => true, then the number of angles considered is one less than the number of vertices of the graph.

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

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

o3 : Graph
i4 : oscRing G

o4 = QQ[x ..y ]
         0   3

o4 : PolynomialRing
i5 : oscRing(G, CoefficientRing => CC, Reduced => true)

o5 = CC  [x ..y ]
       53  1   3

o5 : PolynomialRing

See also

Ways to use oscRing:

  • oscRing(Graph)
  • oscRing(ZZ)

For the programmer

The object oscRing is a method function with options.


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