Constrained tuning/Analytical solution to constrained Euclidean tunings: Difference between revisions

BudjarnLambeth (talk | contribs)
m Categorised this uncategorised page
Replace weight W and skew X with a single transformation X to improve readability
Line 18: Line 18:
<math>\displaystyle PM = O</math>
<math>\displaystyle PM = O</math>


For any Euclidean aka ''L''<sup>2</sup> tuning without constraints, the weight-skewed projection map is
For any Euclidean aka ''L''<sup>2</sup> tuning without constraints, the weighted–skewed projection map is


<math>\displaystyle P_{WX} = V_{WX}^+ V_{WX}</math>
<math>\displaystyle P_X = V_X^+ V_X</math>


where <sup>+</sup> is the [[Wikipedia:Moore–Penrose inverse|pseudoinverse]], and V<sub>WX</sub> = VWX is the weight-skewed val list of the temperament. Removing the transformation, it is
where <sup>+</sup> is the [[Wikipedia:Moore–Penrose inverse|pseudoinverse]], and V<sub>X</sub> = VX is the weighted–skewed val list of the temperament. Removing the transformation, it is


<math>\displaystyle P = WXV_{WX}^+ V_{WX}(WX)^+ = WX(VWX)^+V</math>
<math>\displaystyle P = XV_X^+ V_X X^+ = X(VX)^+V</math>


== CEE tuning ==
== CEE tuning ==
Let us start with CEE tuning (constrained equilateral-Euclidean tuning): both weight and skew are identity matrices, 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>C</sub>. In the case of CEE, it is the octave:  
Denote the constraint by M<sub>C</sub>. In the case of CEE, it is the octave:  
Line 76: Line 76:


== Otherwise normed tuning ==
== Otherwise normed tuning ==
If there is a weight W and/or a skew X, such as CTWE tuning, the weight-skew should be applied to the map and the constraint first:  
If there is a weight–skew transformation X, such as CTWE tuning, the weight–skew should be applied to the map and the constraint first:  


<math>\displaystyle  
<math>\displaystyle  
\begin{align}
\begin{align}
V_{WX} &= VWX \\
V_X &= VX \\
(M_{\rm C})_{WX} &= (WX)^+ M_{\rm C}
(M_{\rm C})_X &= X^+ M_{\rm C}
\end{align}
\end{align}
</math>
</math>


Working from here, we find the weighted projection map (P<sub>C</sub>)<sub>WX</sub>:  
Working from here, we find the weighted projection map (P<sub>C</sub>)<sub>X</sub>:  


<math>\displaystyle  
<math>\displaystyle  
(P_{\rm C})_{WX} =  
(P_{\rm C})_X =  
\begin{bmatrix}  
\begin{bmatrix}  
V_{WX}^+ V_{WX} (M_{\rm C})_{WX} & \begin{matrix} O \\ (V_{WX})_{\rm M}^+ (V_{WX})_{\rm M} \end{matrix}
V_X^+ V_X (M_{\rm C})_X & \begin{matrix} O \\ (V_X)_{\rm M}^+ (V_X)_{\rm M} \end{matrix}
\end{bmatrix}^+
\end{bmatrix}^+
</math>
</math>
Line 96: Line 96:
To reconstruct the original projection map, apply
To reconstruct the original projection map, apply


<math>\displaystyle P_{\rm C} = WX (P_{\rm C})_{WX} (WX)^+</math>
<math>\displaystyle P_{\rm C} = X (P_{\rm C})_X X^+</math>


== 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 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} M_{\rm C} & M_{\rm C}^\perp \end{matrix}] </math>
<math>\displaystyle S = [\begin{matrix} M_{\rm C} & M_{\rm C}^\perp \end{matrix}] </math>
Line 142: Line 142:
<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 W and/or a skew 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_{WX} &= VWX \\
V_X &= VX \\
(M_{\rm C})_{WX} &= (WX)^+ M_{\rm C}
(M_{\rm C})_X &= X^+ M_{\rm C}
\end{align}
\end{align}
</math>
</math>
Line 161: Line 161:
<math>\displaystyle  
<math>\displaystyle  
\begin{align}
\begin{align}
V_{WXS} &= VWXS \\
V_{XS} &= VXS \\
(M_{\rm C})_{WXS} &= (WXS)^+ M_{\rm C}
(M_{\rm C})_{XS} &= (XS)^+ M_{\rm C}
\end{align}
\end{align}
</math>
</math>
Line 168: Line 168:
Proceed as before. The projection map found this way will be weight-skewed and in the working basis. To reconstruct the original projection map, apply
Proceed as before. The projection map found this way will be weight-skewed and in the working basis. To reconstruct the original projection map, apply


<math>\displaystyle P_{\rm C} = WXS (P_{\rm C})_{WXS} (WXS)^+</math>
<math>\displaystyle P_{\rm C} = XS (P_{\rm C})_{XS} (XS)^+</math>


== Example ==
== Example ==