• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required as is 20 years of participation in forums (not all true). There are daily reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Understanding How the Klippel NFS Works

NTK

Major Contributor
Forum Donor
Joined
Aug 11, 2019
Messages
1,598
Likes
3,252
Location
US East
Questions regarding how the Klippel NFS works are raised in many of Amir's speaker reviews. Thomas has suggested starting a thread on this topics and here I am. I am starting this thread with a brief description of the basic principles behind the NFS. You can find much further details on the theory in the DIY 3D speaker scanner thread.

What the Klippel NFS systems does is to approximate the speaker under test into the sum of a number of spherical wave expansion functions (source):

Login Klippel.PNG


These spherical wave expansion functions are solutions to the Helmholtz equation. They describe the propagation of the sound waves at a single frequency ω. If we know the coefficients C_mn, we can simply plug in the coordinates r, θ, and φ into this equation, and we can obtain the sound pressure magnitude (and phase) p at any point in space for frequency ω. The numbers will be the same as those measured with a microphone at same location inside an anechoic chamber.

The spherical harmonics Y_mn(θ, φ) in these functions define the angular directivity (θ is the vertical/polar angle, φ is the horizontal/azimuthal angle). The radial/distance (r) dependency is defined by the Hankel functions. The cutoff order of the spherical harmonics N will determine the number of terms in the summation, which is equal to (N+1)^2. The more complex the speaker geometry and/or the higher the frequency is, the larger N is needed to give an accurate approximation.

Conceptually, what these spherical wave expansion functions do is to mathematically transform a speaker into a sound radiating sphere. Picture a spherical surface that entirely encloses the speaker. All sound radiated from the speaker will have to travel through this spherical surface to reach the outside. If we can produce a sound source in the shape of a ball that has the exact sound radiating pattern as on that spherical surface, then this ball shaped sound source can perfectly replicate or replace the speaker, and a listener (or microphone) on the outside will not be able to tell any difference.

The NFS system measures at a number of points around the speaker. The coefficients (C_mn) are determined using the measured data. For every measurement point, we know p, ω, r, θ and φ. (We also know k, which is called the acoustic wave number, and it is equal to ω divided by the speed of sound.) For a chosen N, we have to solve for (N+1)^2 coefficients. The Klippel NFS measures at more than (N+1)^2 points and uses linear regression to calculate the coefficients C_mn and estimate the errors. The process is for a single frequency, and it needs to be replicated for every frequency of interest (e.g. 20 - 20 kHz at X frequencies per octave).

Once we have obtained the coefficients, we can use the equation and plug-in new coordinates to predict the sound pressures anywhere in space. Reconstructions are not limited to the far field. They are also valid for near field (but with limitations which I will not get into in this post).

path8.jpg


Some may be aware of discussions about the measurement axis. For the NFS, since we approximate the sound source as a sphere, we want the center of this sphere (expansion center) to be close to the actual acoustic center of the speaker, which is the center point of the driver generating the sound. Since sound wave radiations are much more complex at high frequencies, matching the two is far more important for high frequencies. The expansion center is unrelated to the listening axis, as the equation allows us to reconstruct at any arbitrary points in 3D space. We can point the listening axis to anywhere we desire, and adjust our reconstruction points coordinates accordingly.

This concludes this first post. Further discussions are welcomed.

[Edit:] Post #10 gives an explanation of sound field separation (the method of extracting anechoic data from measurements made in a normal reflective room).
 
Last edited:

ferrellms

Active Member
Joined
Mar 24, 2019
Messages
129
Likes
123
This is a bit over my heado_O, but the gist is there. Keep it coming!
 

RayDunzl

Grand Contributor
Central Scrutinizer
Joined
Mar 9, 2016
Messages
11,901
Likes
13,382
Location
Riverview FL

Thomas savage

Grand Contributor
The Watchman
Forum Donor
Joined
Feb 24, 2016
Messages
10,114
Likes
15,547
Location
uk, taunton
Questions regarding how the Klippel NFS works are raised in many of Amir's speaker reviews. Thomas has suggested starting a thread on this topics and here I am. I am starting this thread with a brief description of the basic principles behind the NFS. You can find much further details on the theory in the DIY 3D speaker scanner thread.

What the Klippel NFS systems does is to approximate the speaker under test into the sum of a number of spherical wave expansion functions (source):

View attachment 62347

These spherical wave expansion functions are solutions to the Helmholtz equation. They describe the propagation of the sound waves at a single frequency ω. If we know the coefficients C_mn, we can simply plug in the coordinates r, θ, and φ into this equation, and we can obtain the sound pressure magnitude (and phase) p at any point in space for frequency ω. The numbers will be the same as those measured with a microphone at same location inside an anechoic chamber.

The spherical harmonics Y_mn(θ, φ) in these functions define the angular directivity (θ is the vertical/polar angle, φ is the horizontal/azimuthal angle). The radial/distance (r) dependency is defined by the Hankel functions. The cutoff order of the spherical harmonics N will determine the number of terms in the summation, which is equal to (N+1)^2. The more complex the speaker geometry and/or the higher the frequency is, the larger N is needed to give an accurate approximation.

Conceptually, what these spherical wave expansion functions do is to mathematically transform a speaker into a sound radiating sphere. Picture a spherical surface that entirely encloses the speaker. All sound radiated from the speaker will have to travel through this spherical surface to reach the outside. If we can produce a sound source in the shape of a ball that has the exact sound radiating pattern as on that spherical surface, then this ball shaped sound source can perfectly replicate or replace the speaker, and a listener (or microphone) on the outside will not be able to tell any difference.

The NFS system measures at a number of points around the speaker. The coefficients (C_mn) are determined using the measured data. For every measurement point, we know p, ω, r, θ and φ. (We also know k, which is called the acoustic wave number, and it is equal to ω divided by the speed of sound.) For a chosen N, we have to solve for (N+1)^2 coefficients. The Klippel NFS measures at more than (N+1)^2 points and uses linear regression to calculate the coefficients C_mn and estimate the errors. The process is for a single frequency, and it needs to be replicated for every frequency of interest (e.g. 20 - 20 kHz at X frequencies per octave).

Once we have obtained the coefficients, we can use the equation and plug-in new coordinates to predict the sound pressures anywhere in space. Reconstructions are not limited to the far field. They are also valid for near field (but with limitations which I will not get into in this post).

View attachment 62350

Some may be aware of discussions about the measurement axis. For the NFS, since we approximate the sound source as a sphere, we want the center of this sphere (expansion center) to be close to the actual acoustic center of the speaker, which is the center point of the driver generating the sound. Since sound wave radiations are much more complex at high frequencies, matching the two is far more important for high frequencies. The expansion center is unrelated to the listening axis, as the equation allows us to reconstruct at any arbitrary points in 3D space. We can point the listening axis to anywhere we desire, and adjust our reconstruction points coordinates accordingly.

This concludes this first post. Further discussions are welcomed.
Vital discussion, hope many knowing members contribute as the shared understanding will help us going forward.

Thanks for starting this thread. Iv made it a sticky , please those posting make this a good decision for all our sakes .
 

ctrl

Major Contributor
Forum Donor
Joined
Jan 24, 2020
Messages
1,151
Likes
3,829
Location
.de, DE, DEU
I do not understand the mathematics behind it, so please excuse my naive question.

If I was only interested in the frequency response along one axis (e.g. the x-axis) and the measurement of e.g. two measuring points on the axis was possible, would that be enough to calculate the x-axis frequency response?

With the measuring points the change of the room resonances and the change of the frequency response and phase relations along the axis would be available for the evaluation.

1588957054685.png
 
Last edited:

dc655321

Major Contributor
Joined
Mar 4, 2018
Messages
1,432
Likes
1,839
If I was only interested in the frequency response along one axis (e.g. the x-axis) and the measurement of any number of measuring points on the axis was possible, would that be enough to calculate the x-axis frequency response?

I may be misunderstanding the question, so sorry in advance, but if you're measuring "any number of points" along your axis of interest what and why would you need to calculate anything?
 

ctrl

Major Contributor
Forum Donor
Joined
Jan 24, 2020
Messages
1,151
Likes
3,829
Location
.de, DE, DEU
I may be misunderstanding the question, so sorry in advance, but if you're measuring "any number of points" along your axis of interest what and why would you need to calculate anything?

Of course not all possible points - my mistake :facepalm: Ideally at two positions along the x-axis.
Would this be sufficient to calculate all other points along the axis?
 

dc655321

Major Contributor
Joined
Mar 4, 2018
Messages
1,432
Likes
1,839
Of course not all possible points - my mistake :facepalm: Ideally at two positions along the x-axis.
Would this be sufficient to calculate all other points along the axis?

I can't give you a definitive answer, but this scheme is similar to how the Klippel NFS works (sample points on two concentric surfaces).
I would think the answer is highly dependent on where your two points (r0, r1) are taken, relative to the source.
You may want to check out the above-referenced discussion starting here.
 
OP
NTK

NTK

Major Contributor
Forum Donor
Joined
Aug 11, 2019
Messages
1,598
Likes
3,252
Location
US East
This post is my attempt to explain the method of sound field separation (SFS). This is the secret sauce that makes the Klippel NFS such an uniquely useful tool. As many already know, we need anechoic (or, to be technically correct, free field) data from speakers. For those poor souls without an anechoic chamber, they'll have to contend with quasi-anechoic measurements. Time gated measurements have limited frequency resolutions and they are of limited use at low frequencies. Ground plane and near-field methods, on the other hand, can provide good low frequency data. (Note: @ hardisj is (was?) hard at work figuring out how to get full frequency data from ground plane measurements.) Very often these two measurements are spliced together to provide the full range data. This is very time consuming and splicing together measurements can be error-prone.

When we measure speakers in a reflective room, the measurements are contaminated by sound reflections from walls, ceiling, floor, and other objects in the room. SFS is a mathematical technique to separate the sound waves traveling outward through the measurement zone (i.e. those produced by the speaker) from the sound waves coming in from the outside (i.e. those from reflections). Klippel is pretty quiet about how they do it. I can find little information on this subject in what they have published. This is understandable as it is what makes their NFS special and they have no incentive to let their secrets out.

Thus, I don't know exactly how Klippel performs SFS. However, other researchers have published multiple methods, some requiring special instruments (e.g. acoustic particle velocity probe). I'll describe two that only use microphone, but first some mathematics.

Let's go back to post 1 and look at picture with the spherical wave expansion equation. Notice that the coefficient C_mn has 'out' as the superscript and is described as "coefficients — outgoing wave". This equation is applicable only to the "interior source" case, which is what happens in an anechoic chamber — the only sources of sound are interior to the measurement zone and there is no sound source from the outside (i.e. reflection free/anechoic).
Login Klippel.PNG

Similarly, there exists another equation for the "exterior source" case, where all sound sources are outside the measurement zone. "j_n(kr)" in the equation is the spherical Bessel function of the first kind.
equation1.PNG

When we add the two equations together, we get the equation for the general case of the "mixed source" case, where we have sound generating sources both inside and outside of the measurement zone.
equation.PNG

Note that the equation is applicable only when there is no sound source within the measurement zone, only inside to it and outside of it. The measurement zone has the shape of a spherical shell.

Notice the mathematical magic here. When we are in a mixed source situation, the spherical wave expansion functions automatically separate out the outgoing waves from those waves originated externally. The coefficients C_mn represent the outgoing wave from the interior sources whereas the coefficients D_mn represent the standing waves from the exterior sources. We have twice the number of coefficients to solve, and will therefore require twice the measurement points. This is the price to pay for not having an anechoic chamber. To reconstruct the wave field with only the interior sources, we take measurements (in a normally reflective room), solve for both C_mn and D_mn, and then we discard the D_mn terms.

The "aspherical measurement" SFS method (reference)
Note that in order to obtain information regarding the influences of distance (r) on the sound field, we must have measurement data at different distances. In the aspherical measurement method, measurements are taken within the measurement zone around the speaker at different distances and different angles, r, θ, φ (this is why the method is called aspherical). Linear regression is used to solve for the coefficients C_mn and D_mn. Use only the terms associated with C_mn coefficients for the free field reconstructions.

The "double concentric spherical measurement" SFS method (reference)
In the double concentric spherical measurement method, measurements are made at two different distances but at the exact same angles θ and φ. We then compute C_mn and D_mn using the two sets of measurements (for details please see this post). Again, we can use the C_mn terms to reconstruct the free field sound pressures.

My own numerical simulations suggested that the double concentric spherical measurement method gives better results than the aspherical measurement method. However, the Klippel NFS measures in concentric cylinders instead of spherical shells and therefore cannot be using the concentric spherical method as I described here. It is possible that Klippel has developed their own secret method.
 
Last edited:

Blumlein 88

Grand Contributor
Forum Donor
Joined
Feb 23, 2016
Messages
14,605
Likes
23,664
Last edited:

Dave Zan

Active Member
Joined
Nov 19, 2019
Messages
161
Likes
454
Location
Canberra, Australia
Boy this acoustic particle velocity sensor looks like it would be a nifty toy to have.
https://www.microflown.com/products/sound-localization-systems/scan-paint-3d/

Yes. the possibility to use this sensor rather than measure at two radii was discussed seriously in the DIY Klippel thread over at DIYaudio, prior to NTK's nice work here.
I checked the price and they are, as expected, expensive.
It's patented so they have a monopoly, and they sell into the aerospace and vehicle manufacturer markets.
So a $10k or $100k system is petty cash to Ford or Airbus but it killed the idea as far as DIY.
The concept is actually pretty simple, once the patent expires they could be a commodity item, maybe $10.
I expect we will then see a rash of "acoustic cameras" and suchlike neat toys based on Microflown tech.

Best wishes
David
 
OP
NTK

NTK

Major Contributor
Forum Donor
Joined
Aug 11, 2019
Messages
1,598
Likes
3,252
Location
US East
Of course not all possible points - my mistake :facepalm: Ideally at two positions along the x-axis.
Would this be sufficient to calculate all other points along the axis?
I don't know the answer to your question for sure, but I suspect not.

What the mic picks up is the complex summation of the direct and reflected sound. The direct sound pressure will follow the standard distance decay rule. The reflected sound, however, will be different (in phase and magnitude) at different locations on you measurement axis, which I don't think is easy to predict. So I don't think simple interpolation of 2 measurements will work.
 
OP
NTK

NTK

Major Contributor
Forum Donor
Joined
Aug 11, 2019
Messages
1,598
Likes
3,252
Location
US East
PS if you feel like I'm polluting your thread, just let me know, and I'll delete it.
Not at all. We are discussing measurements, and the Microflown sensor certainly opens up some new interesting possibilities.

It measures the speed and direction of the oscillations of the air "particles". An example use is in structural vibration. When you put it near a structure, such as a speaker cabinet, it can tell the local vibration motions of the cabinet wall. The structural movements of the cabinet wall displace the air around it. The Microflown sensor senses the air motions, and they approximate the cabinet wall motions. Since you can move around the sensor quickly, you can make measurements faster than using accelerometers or lasers.
 

dc655321

Major Contributor
Joined
Mar 4, 2018
Messages
1,432
Likes
1,839
My own numerical simulations suggested that the double concentric spherical measurement method gives better results than the aspherical measurement method.

Which of your notes/tutorials covers this comparison?
I would have naively expected the more general, aspherical method to be the more powerful and practical means.

However, the Klippel NFS measures in concentric cylinders instead of spherical shells and therefore cannot be using the concentric spherical method as I described here. It is possible that Klippel has developed their own secret method.

Have you explored solutions in cylindrical coordinates?

Been a (very!) long time since I was immersed PDE solving - my layer of rust is thick!
It's been fun following your explorations though. so thank you for your efforts.
 
  • Like
Reactions: NTK
OP
NTK

NTK

Major Contributor
Forum Donor
Joined
Aug 11, 2019
Messages
1,598
Likes
3,252
Location
US East
Which of your notes/tutorials covers this comparison?
I would have naively expected the more general, aspherical method to be the more powerful and practical means.
Sorry, the comparison I showed weren't exactly apple to apple. You can compare Part 3 fig 6 to part 5 fig 2. The aspheric one (part 3) was done with 7k measurement points and the double concentric one (part 5) was done with 2k points. I changed the test grid between the two simulations because the earlier one didn't test for variations in the radial (distance) direction. I don't know why either. Anyway, with the same number of measurement points, it is faster solving two MxN least squares (double concentric) than one 2MxN least squares (aspherical) regressions.
Have you explored solutions in cylindrical coordinates?
No, I haven't. I am pretty sure Klippel uses spherical wave expansions in their calculations too, but they measure in cylinders. I don't know why and how they do it. [Edit: I believe Klippel did it for logistical reasons because most speakers are tall and slim.]
 

Pio2001

Senior Member
Joined
May 15, 2018
Messages
315
Likes
485
Location
Neuville-sur-Saône, France
I don't know the answer to your question for sure, but I suspect not.

What the mic picks up is the complex summation of the direct and reflected sound. The direct sound pressure will follow the standard distance decay rule. The reflected sound, however, will be different (in phase and magnitude) at different locations on you measurement axis, which I don't think is easy to predict. So I don't think simple interpolation of 2 measurements will work.

And there is also the fusion of the various drivers. You can't tell the decay according to distance if you don't know where the driver is located.
I think that the analysis of the whole soundfield is necessary.
 

Jukka

Active Member
Joined
Apr 24, 2019
Messages
147
Likes
87
I don't have time to read all posts, but is IMD or power compression measured and why not? There has to be good metrics that set the $36 Sony and k$2 Revel apart. Distortion didn't seem to be one for the scale.
 
OP
NTK

NTK

Major Contributor
Forum Donor
Joined
Aug 11, 2019
Messages
1,598
Likes
3,252
Location
US East
The primary purpose of the Klippel NFS is for the "spinorama" tests. The spinorama test (part 5 of ANSI/CTA-2034-A) only addresses the frequency response and directivity of the speaker. Output capabilities are covered in part 8 (on-axis maximum usable sound pressure level). The max SPL rating is determined by a combination of compression and THD tests. Please refer to the document for details of these tests.

The "example report" as presented in the CTA-2034-A includes, in addition to the spinorama plot and the predicted in-room response plot, the following:

CTA_2034p37.PNG


Although very rarely, I've seen speaker manufacturers provided spinorama plots. But I've never seen any test report that includes these remaining parts of the CTA-2034-A — neither in reviews nor from manufacturers. So much for a supposedly industry standard that no one seems to observe :(
 

hardisj

Major Contributor
Reviewer
Joined
Jul 18, 2019
Messages
2,907
Likes
13,596
Location
North Alabama
The primary purpose of the Klippel NFS is for the "spinorama" tests. The spinorama test (part 5 of ANSI/CTA-2034-A) only addresses the frequency response and directivity of the speaker. Output capabilities are covered in part 8 (on-axis maximum usable sound pressure level). The max SPL rating is determined by a combination of compression and THD tests. Please refer to the document for details of these tests.

The "example report" as presented in the CTA-2034-A includes, in addition to the spinorama plot and the predicted in-room response plot, the following:

View attachment 65192

Although very rarely, I've seen speaker manufacturers provided spinorama plots. But I've never seen any test report that includes these remaining parts of the CTA-2034-A — neither in reviews nor from manufacturers. So much for a supposedly industry standard that no one seems to observe :(


Here's the rub: Obtaining this data is hard. I believe that's why you don't see it. Certainly from a third-party.

I've spent a few days studying documents and modules available from Klippel to determine how I can *reliably and accurately* provide distortion-related information. The issue comes in to play when you're using a non-anechoic environment. Klippel does have some modules that permit the use of a regular room (office space, garage, etc) to obtain HD related data. Here's their Application Note. Klippel also has the Multi-Tone module (link) which enables the ability to gather max SPL per CEA-2034 (not sure which Rev) but I don't know how or if it can be used in my garage to get useful results. Similar for their TBM module.

With a single drive unit mounted to an "infinite" baffle you'd just measure nearfield and call it a day. All the noise would be substantially lower than the input signal and would not effect the result. But testing loudspeakers, as I've come to find out is a major, major chore. You can't just put the mic at the woofer and measure nearfield. Even the CEA-2034 spec itself states:
"The measurement microphone does not have to be in the far-field of the DUT. However, the distance from the DUT to the measurement microphone should be sufficient so that the magnitude of the radiation from one area of the DUT is not overly emphasized compared to the other areas. In no case shall the measurement microphone be less than 2 m from the DUT." (emphasis added)

One might say "I can adjust the SPL for 2m equivalent" but I'm not sure that's the point for this. A standard bookshelf is certainly "farfield" at 1 meter but without knowing for sure why they stress the 2 meter rule, I wouldn't want to abstain from that and just stick the mic at 1 meter to help lower the "noise floor" (reflections, external noises)... not that it would really help that much anyway. Measuring at 2 meters distance in a typical environment means frequency response no lower than 200-300 Hz. And even then it's pretty abysmal. The spec does, however, offer guidance on measuring in a non-anechoic environment. Furthermore, when you start talking about large floorstanding speakers, using the 3-5*Height rule would mean you'd need to test a 3 foot tall speaker at 9-15 feet away. No wonder we don't see much testing of these (and the reviews I do see are taken with a grain of salt as the frequency lowers; especially at woofer-to-mid crossover regions).

I have even been testing out the TBM module using the 2034 standard. Luckily one can use the ISC module to create a room correction curve to feed in to the TBM module and offset any of the room effects. However, thanks to the 1/3 octave steps (38 points, IIRC) and varying levels of voltage input, the approximate run time is 2.5 hours. I may be able to guarantee a quiet environment for 30 minutes... but 2.5 hours is a different story altogether. Especially now that my kid is out of school and her neighborhood friends have deemed my garage as the best place to play when the weather doesn't permit them playing outside. That, and the constant "Mr. Erin, will you play kickball with us"... LOL. So, yea... that's gonna require some thinking...


So, that's my $0.02 on SPL testing. The bottom line is that it's just tough to do. Especially for us hobbyists. At any rate, I have reached out to Klippel for advice here because I believe I can use one of their modules to do what I need. Hopefully I can provide this kind of information in my reviews.
 
Last edited:
Top Bottom