Constrained tuning/Analytical solution to constrained Euclidean tunings: Difference between revisions
m Adopt "just tuning map" |
ArrowHead294 (talk | contribs) mNo edit summary |
||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
{{breadcrumb}} | |||
This article gives an analytical form of Euclidean-normed [[constrained tuning]]s. | This article gives an analytical form of Euclidean-normed [[constrained tuning]]s. | ||
Line 8: | Line 9: | ||
<math>\displaystyle T = JP</math> | <math>\displaystyle T = JP</math> | ||
where T is the tempered tuning map, J the just tuning map, and P the projection map. | where ''T'' is the tempered tuning map, ''J'' the just tuning map, and ''P'' the projection map. | ||
The projection map multipled by a [[ | The projection map multipled by a [[temperament mapping matrix]] on the left yields its [[tmonzos and tvals|tempered monzos]]. In particular, if ''V'' is the temperament mapping matrix of ''P'', then | ||
<math>\displaystyle VP = V</math> | <math>\displaystyle VP = V</math> | ||
Second, the projection map multipled by a monzo list on the right yields the tunings of the list in terms of monzos. In particular, if M is the [[comma list]] of P, then | Second, the projection map multipled by a monzo list on the right yields the tunings of the list in terms of monzos. In particular, if ''M'' is the [[comma list]] of ''P'', then | ||
<math>\displaystyle PM = O</math> | <math>\displaystyle PM = O</math> | ||
For any Euclidean aka ''L''<sup>2</sup> tuning without constraints, the | For any Euclidean aka ''L''<sup>2</sup> tuning without constraints, the weight–skew transformed projection map is | ||
<math>\displaystyle P_X = V_X^+ V_X</math> | <math>\displaystyle P_X = V_X^+ V_X</math> | ||
where <sup>+</sup> is the [[ | where <sup>+</sup> is the [[pseudoinverse]], and ''V''<sub>''X''</sub> = ''VX'' is the weight–skew transformed val list of the temperament. Removing the transformation, it is | ||
<math>\displaystyle P = XV_X^+ V_X X^+ = X(VX)^+V</math> | <math>\displaystyle P = XV_X^+ V_X X^+ = X(VX)^+V</math> | ||
Line 29: | Line 30: | ||
Let us start with CEE tuning (constrained equilateral-Euclidean tuning): the weight–skew transformation is represented by an identity matrix, which will be omitted below, and the constraint is the octave. | Let us start with CEE tuning (constrained equilateral-Euclidean tuning): the weight–skew transformation is represented by an identity matrix, which will be omitted below, and the constraint is the octave. | ||
Denote the constraint by M<sub> | Denote the constraint by ''M''<sub>''I''</sub>. In the case of CEE, it is the octave: | ||
<math>\displaystyle | <math>\displaystyle M_I = [ \begin{matrix} 1 & 0 & \ldots & 0 \end{matrix} \rangle</math> | ||
but it works as long as it is the first ''r'' elements of the [[ | but it works as long as it is the first ''r'' elements of the [[subgroup basis matrix|subgroup basis]]. | ||
We will denote the projection map by P. The goal is to work out the constrained projection map P<sub>C</sub>, which also satisfies | We will denote the projection map by ''P''. The goal is to work out the constrained projection map ''P''<sub>C</sub>, which also satisfies | ||
<math>\displaystyle | <math>\displaystyle | ||
Line 44: | Line 45: | ||
in addition to | in addition to | ||
<math>\displaystyle P_{\rm C} | <math>\displaystyle P_{\rm C} M_I = M_I</math> | ||
Since P is characteristic of the temperament and is independent of the specific tuning, notice | Since ''P'' is characteristic of the temperament and is independent of the specific tuning, notice | ||
<math>\displaystyle P = P_{\rm C}^+P_{\rm C}</math> | <math>\displaystyle P = P_{\rm C}^+P_{\rm C}</math> | ||
That makes the pseudoinverse of P<sub>C</sub> easier to work with than P<sub>C</sub> itself, as | That makes the pseudoinverse of ''P''<sub>C</sub> easier to work with than ''P''<sub>C</sub> itself, as | ||
<math>\displaystyle | <math>\displaystyle | ||
P_{\rm C}^+ | P_{\rm C}^+ M_I | ||
= P_{\rm C}^+P_{\rm C} | = P_{\rm C}^+P_{\rm C} M_I | ||
= P | = P M_I | ||
</math> | </math> | ||
Both P<sub>C</sub><sup>+</sup>M<sub> | Both ''P''<sub>C</sub><sup>+</sup>''M''<sub>''I''</sub> and ''PM''<sub>''I''</sub> are the same slice of the first ''r'' columns of ''P''. | ||
With the first ''r'' rows and columns removed, the remaining part in the mapping will be dubbed the minor matrix, denoted V<sub>M</sub>. The minor matrix of the projection map | With the first ''r'' rows and columns removed, the remaining part in the mapping will be dubbed the minor matrix, denoted ''V''<sub>M</sub>. The minor matrix of the projection map | ||
<math>\displaystyle P_{\rm M} = V_{\rm M}^+ V_{\rm M} </math> | <math>\displaystyle P_{\rm M} = V_{\rm M}^+ V_{\rm M} </math> | ||
forms an orthogonal projection map filling the bottom-right section of P<sub>C</sub><sup>+</sup>. | forms an orthogonal projection map filling the bottom-right section of ''P''<sub>C</sub><sup>+</sup>. | ||
In general, if M<sub> | In general, if ''M''<sub>''I''</sub> is the first ''r'' elements of the subgroup basis, then ''P''<sub>C</sub> is of the form | ||
<math>\displaystyle | <math>\displaystyle | ||
P_{\rm C} = | P_{\rm C} = | ||
\begin{bmatrix} | \begin{bmatrix} | ||
V^+ | V^+VM_I & \begin{matrix} O \\ V_{\rm M}^+V_{\rm M} \end{matrix} | ||
\end{bmatrix}^+ | \end{bmatrix}^+ | ||
</math> | </math> | ||
== Otherwise normed tuning == | == Otherwise normed tuning == | ||
If there is a weight–skew transformation X, such as CTWE tuning, the | If there is a weight–skew transformation ''X'', such as CTWE tuning, the transformation should be applied to the map and the constraint first: | ||
<math>\displaystyle | <math>\displaystyle | ||
\begin{align} | \begin{align} | ||
V_X &= VX \\ | V_X &= VX \\ | ||
( | (M_I)_X &= X^+ M_I | ||
\end{align} | \end{align} | ||
</math> | </math> | ||
Working from here, we find the | Working from here, we find the weight–skew transformed projection map (''P''<sub>C</sub>)<sub>''X''</sub>: | ||
<math>\displaystyle | <math>\displaystyle | ||
(P_{\rm C})_X = | (P_{\rm C})_X = | ||
\begin{bmatrix} | \begin{bmatrix} | ||
V_X^+ V_X ( | V_X^+ V_X (M_I)_X & \begin{matrix} O \\ (V_X)_{\rm M}^+ (V_X)_{\rm M} \end{matrix} | ||
\end{bmatrix}^+ | \end{bmatrix}^+ | ||
</math> | </math> | ||
Line 99: | Line 100: | ||
== Nontrivially constrained tuning == | == Nontrivially constrained tuning == | ||
What if the constraint is something more complex, especially when it is not the first ''r'' elements of the subgroup basis? It turns out we can always transform the subgroup basis to encapsulate the constraint. Such a subgroup basis matrix S is formed by the constraint and its orthonormal complement. | What if the constraint is something more complex, especially when it is not the first ''r'' elements of the subgroup basis? It turns out we can always transform the subgroup basis to encapsulate the constraint. Such a subgroup basis matrix ''S'' is formed by the constraint and its orthonormal complement. | ||
<math>\displaystyle S = [\begin{matrix} | <math>\displaystyle S = [\begin{matrix} M_I & M_I^\perp \end{matrix}] </math> | ||
For example, if the temperament is in the subgroup basis of 2.3.5.7, and if the constraint is 2.5/3, then | For example, if the temperament is in the subgroup basis of 2.3.5.7, and if the constraint is 2.5/3, then | ||
<math>\displaystyle | <math>\displaystyle | ||
M_I = | |||
\begin{bmatrix} | \begin{bmatrix} | ||
1 & 0 \\ | 1 & 0 \\ | ||
Line 113: | Line 114: | ||
0 & 0 | 0 & 0 | ||
\end{bmatrix}, | \end{bmatrix}, | ||
M_I^\perp = | |||
\begin{bmatrix} | \begin{bmatrix} | ||
0 & 0 \\ | 0 & 0 \\ | ||
Line 129: | Line 130: | ||
</math> | </math> | ||
We should apply this S to the map and the constraint to convert them into the working basis: | We should apply this ''S'' to the map and the constraint to convert them into the working basis: | ||
<math>\displaystyle | <math>\displaystyle | ||
\begin{align} | \begin{align} | ||
V_S &= VS \\ | V_S &= VS \\ | ||
( | (M_I)_S &= S^{-1}M_I | ||
\end{align} | \end{align} | ||
</math> | </math> | ||
Line 142: | Line 143: | ||
<math>\displaystyle P_{\rm C} = S (P_{\rm C})_S S^{-1}</math> | <math>\displaystyle P_{\rm C} = S (P_{\rm C})_S S^{-1}</math> | ||
Similarly, if there is a weight–skew transformation X, it should be applied to the map and the constraint first: | Similarly, if there is a weight–skew transformation ''X'', it should be applied to the map and the constraint first: | ||
<math>\displaystyle | <math>\displaystyle | ||
\begin{align} | \begin{align} | ||
V_X &= VX \\ | V_X &= VX \\ | ||
( | (M_I)_X &= X^+ M_I | ||
\end{align} | \end{align} | ||
</math> | </math> | ||
and then the basis transformation matrix should be found out in this | and then the basis transformation matrix should be found out in this weight–skew transformed space: | ||
<math>\displaystyle | <math>\displaystyle | ||
S = [\begin{matrix} | S = [\begin{matrix} M_I & M_I^\perp \end{matrix}] | ||
</math> | </math> | ||
We should apply this S to the | We should apply this ''S'' to the weight–skew transformed map and the weight–skew transformed constraint to convert them into the working basis: | ||
<math>\displaystyle | <math>\displaystyle | ||
\begin{align} | \begin{align} | ||
V_{XS} &= VXS \\ | V_{XS} &= VXS \\ | ||
( | (M_I)_{XS} &= (XS)^+ M_I | ||
\end{align} | \end{align} | ||
</math> | </math> | ||
Proceed as before. The projection map found this way will be | Proceed as before. The projection map found this way will be weight–skew transformed and in the working basis. To reconstruct the original projection map, apply | ||
<math>\displaystyle P_{\rm C} = XS (P_{\rm C})_{XS} (XS)^+</math> | <math>\displaystyle P_{\rm C} = XS (P_{\rm C})_{XS} (XS)^+</math> | ||
Line 240: | Line 241: | ||
</math> | </math> | ||
The tuning map T<sub>C</sub> is | The tuning map ''T''<sub>C</sub> is | ||
<math>\displaystyle | <math>\displaystyle | ||
Line 249: | Line 250: | ||
</math> | </math> | ||
[[ | [[Category:Math]] |