-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Acoustic parameters (C50,C80, D50 etc.) calculation bug #7
Comments
Thanks for feedback. We have to fix this issue by changing the fromTime value. (without copying array) |
After reading again the code: The implementation follow the The variable |
All this post-processing code will be moved into lib_interface and included into the automated unit test framework. |
The RT calculation is ok. The bug is in energetic parameters calculation (mainly C and D). The integration should start when the impulse arrives to the receiver not from t=0. |
If you look at for example projet_calculation.cpp in C param calculation there is:
The problem is that instead of starting integration from fixed 0 it should start when direct sound approaches the receiver. It can be changed in parameter calculation funcition or GetSumLimit method. |
Yes sorry, I was focused in RT and EDT. I reopen the issue and I will fix it by updating Compute_ST_Param |
I try to validate this modification. However, I obtained NaN or °Inf values for all parameters (except reverberation parameters). Below, a simulation (v1.3.4) for a 10m cubic room, source at the center, receiver at 2m from the source:
|
May be a problem in this function. Is-it for finding the time step of direct field? |
Yes it could be that. GetTimeDecay should return the time before the noise level is decaying . |
Are you sure it finds the time step of the direct field (or a valid change/increasing of energy)? |
With I-Simpa in dev branch I have this: What is the timestep in spps ? |
ok, there is an issue when sound power received is < 0 dB. I will try to fix that |
…ossible in order to not skip first sound wave time
May be that results are correct. I have prepared a I-Simpa project with the possibility to compare results with expected values for C, D... |
I have compared SPPS and expected theoretical results for 100% diffusing room, in many room size (verifying also the effects of the Time Step and distance from source). It seems that the procedure for calculating the clarity C80 within I-Simpa seems correct. It probably needs further validation with measurements or other reference data, but it seems quite acceptable for now. |
Function GetSumLimit() in projet_calculation.cpp calculates from time=0, whereas all parameters should be calculated starting from time when direct wave approaches the receiver.
I've made a temporary solution at:
wbinek@827530d
The text was updated successfully, but these errors were encountered: