I took the time to measure in Matlab, starting with C8 and working down, the precise center of the 3rd harmonic of the 12th below and comparing the difference with the 1st harmonic (fundamental) of the 12th above. I did this for most of the range of the piano (my Fazioli F308). I used a PianoSens sensor to take the readings of IH using the Pianoscope app. The frequencies lined up across the piano within a fraction of cent across the board. I stopped at C2 and the app predicted the curves would switch to more weight on the 6:2 and 9:3. I didn't (yet) record the 6:2 and 9:3 in Matlab… an exercise for later!
The dots on the curve are as measured in Pianoscope using a PianoSens sensor produced a very tight fit on the ideal tuning curve. Every time I used the mic in the past, small movements of the mic would change the dot locations until I got above C3. Moving the mic produced a few outliers above C3 and below C3 the outliers with a changing mic position were noticeably varying and therefore 'hard to trust'. The sensor measurements are quite invariant with small changes of location above the string, in the outcome, since the sensor has no acoustic artifacts and has linear phase among the partials. Subjectively, the piano did sound cleaner from tuning with these sensor-based IH curves. Hard to quantify the subjective statement, but it comes from having a more predictable and invariant point from which to tune.
Great job on the IH algorithm, Frank! Cheers!
Best regards,
Steve
Steven Norsworthy
http://PianoSens.com
http://RF2BITS.com
steven@rf2bits.com
619-964-0101 cell/text