previous next Up Title Contents

BasilarM_DRNLT: Test version of DRNL model


File name
MoBM0DRNL.[ch]


Description
Test module for the DRNL Composite filter, used to model the non-linear response of the Basilar Membrane. This module provides the user with comprehensive control of the model's parameters.


Example parameter file format
4	Total order for the gamma tone filters - BM model.
single	Frequency mode.
8000.0	Centre frequency of gamma-tone filter for basilar membrane.
user	Band width (3 dB down) mode for filters.
1343	Bandwidth (Hz).
1.0	Narrow filter broadening coefficient.
6.0	Threshold above which compression takes place (dB SPL).
0.58	Compression ratio.
5453	Wide filter Centre Frequency (Hz).
1823	Wide filter band width (Hz).
-25.95	Wide filter attenuation (dB SPL).
2.5	Narrow filter low-pass cut-off scale.



Test program directory
Tests/Models/Basilar_M, Tests/SSPrograms

Generic Module Routines

This module has the standard Generic Module Routines (see Basic Module Routines used in Generic Programming, page 52).

The RunModel_BasilarM_DRNL_Test(...) Process Routine

Syntax
BOOLN _BasilarM_DRNL_Test(EarObjectPtr data);


Returns
TRUE if the process is successful, otherwise it returns FALSE.

The GetCFList_BasilarM_DRNL_Test(...) Routine

Syntax
CFListPtr GetCFList_BasilarM_DRNL_Test(void);


Special Values
(The CFList structure is controlled by the UtCFList module routinessee 0 Using the Basilar Membrane Filter Modules.


Returns
Pointer to the modules CFList structure.

The SetBandwidths_BasilarM_DRNL_Test(...) Routine

Syntax
BOOLN SetBandwidths_BasilarM_DRNL_Test(char *theBandwidthMode, double *theBandWidths);


Special Values
(The bandwidth mode is controlled by the UtBandwidth module routines).


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetCFList_BasilarM_DRNL_Test(...) Routine

Syntax
BOOLN SetCFList_BasilarM_DRNL_Test(CFListPtr *theCFList);


Special Values
(The CFList structure is controlled by the UtCFList module routinessee 0 Using the Basilar Membrane Filter Modules.


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetCompressionExponent_BasilarM_DRNL_Test (...) Routine

Syntax
BOOLN SetCompressionExponent_BasilarM(double theCompressionExponent);


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetCompressionThreshold_BasilarM_DRNL_Test(...) Routine

Syntax
BOOLN SetCompressionThreshold_BasilarM_DRNL_Test(double theCompressionThreshold);


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetNarrowBroadeningCoeff_BasilarM_DRNL_Test(...) Routine

Syntax
BOOLN SetNarrowBroadeningCoeff_BasilarM_DRNL_Test(double theNarrowBroadeningCoeff);


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetNarrowFLPCutOffScale_BasilarM_DRNL_Test(...) Routine

Syntax
BOOLN SetNarrowFLPCutOffScale_BasilarM_DRNL_Test(double theNarrowFLPCutOffScale);


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetOrder_BasilarM_DRNL_Test(...) Routine

Syntax
BOOLN SetOrder_BasilarM_DRNL_Test(double theOrder);


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetPars_BasilarM_DRNL_Test(...) Routine

Syntax
BOOLN SetPars_BasilarM_DRNL_Test(int theOrder, double theNarrowBroadeningCoeff, double theCompressionThreshold, double theCompressionExponent, double wideFCentreFreq, double wideFWidth, double wideAttenuation, double narrowFLPCutOffScale, CFListPtr theCFs);


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetWideAttenuation_BasilarM_DRNL_Test(...) Routine

Syntax
BOOLN SetWideAttenuation_BasilarM_DRNL_Test(double theWideAttenuation);


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetWideFWidth_BasilarM_DRNL_Test(...) Routine

Syntax
BOOLN SetWideFWidth_BasilarM_DRNL_Test(double theWideFWidth);


Returns
TRUE if the function is successful, otherwise it returns FALSE.

The SetWideFCentreFreq_BasilarM_DRNL_Test(...) Routine

Syntax
BOOLN SetWideFCentreFreq_BasilarM_DRNL_Test(double theWideFCentreFreq);


Returns
TRUE if the function is successful, otherwise it returns FALSE.

Example: Tests/SSPrograms/FilterShape.c

Parameter file:FilterShape.par:
#
# Main Parameter file
#

output.dat		Name of output file.

# Module specifications.

#Par. file				Name					Description
#---------				-----					-------------
ParFiles/St/PTone5.par		PureTone				Stimulus generation.
SimSpecs/BM/DRNLTInt.sim	Utility_SimulationSpec	Simulation spec.

# Miscellaneous parameters

100.0		Lowest frequency for pure tone probe stimulus (Hz).
1000.0		Highest frequency for pure tone probe stimulus (Hz).
40			No. of frequencies within range (logarithmic).
2.5e-3		Ramp up rise time for signal (s).
Output

Figure [81] Filter function at CF = 300 Hz for the test version of the DRNL BM model.

Example: Tests/SSPrograms/TuningCurve.c

Parameter file:TuningCurve.par:
#
# Main Parameter file
#
output.dat	Name of output file.

#
# Module specifications.
#
#Par. file				Name					Description
#---------				-----					-------------
ParFiles/St/PTone5.par		PureTone				Stimulus generation.
SimSpecs/BM/DRNLTInt.sim	Utility_SimulationSpec	Simulation spec.

# Miscellaneous parameters

100.0	Lowest test centre frequency (Hz).
1000.0	Highest test centre frequency (Hz).
40		The no. of channels within the frequency range.
5000.0	Minimum frequency for sampling interval setting (Hz).
2.5e-3	Ramp up rise time for signal (s).
0		Conversion mode (0 = unity mode, 1 = (mm/s?), 2 = (nm?).
0		Target threshold (?).
0.1	Target accuracy (?).
0.009	Conversion scale factor (? - not used with unity mode).
Output

Figure [82] Tuning Curve at CF = 300 Hz for the test version of the DRNL BM model.

Example: Tests/Model/Basilar_M/InputvsOut.c

Parameter file:InputvsOut.par:
#
# Main Parameter file
#
output.dat	Name of output file.
#
# Module specifications.
#
#Par. file		Name				Description
#---------		-----				-------------
PTone4.par		PureTone			Stimulus generation paradigm.
GPigChinPE.par	PreEmphasis_BandPass	Outer-/middler-ear filter model.
DRNLT18k.par		BasilarM_DRNL_Test	Basilar membrane filter.
#
# Miscellaneous parameters
#
10		No. of intensity level readings calculated.
0		Initial intensity value (dB SPL).
10.0	Incremental change in intensity.
2.5e-3	Ramp up rise time for signal (s).
Output

See figure [59] on page Error! Bookmark not defined.. Note that the input-output function for this filter has a "compression elbow" at ~30 dB SPL..

Example: Tests/Model/Basilar_M/MultiInvsOut.c

Parameter file:MultiInvsOut.par:
#
# Main Parameter file
#
output.dat	Name of output file.
#
# Module specifications.
#
#Par. file		Name				Description
#---------		-----				-------------
PTone4.par		PureTone			Stimulus generation paradigm.
GPigChinPE.par	PreEmphasis_Bandpass	Outer-/middler-ear filter model.
DRNLT18k.par	BasilarM_DRNL_Test		Basilar membrane filter.
#
# Miscellaneous parameters
#
10		No. of intensity level readings calculated.
0		Initial intensity value (dB SPL).
10.0	Incremental change in intensity.
20000.0	Initial stimulus frequency (Hz).
1000.0	Final stimulus frequency (Hz).
2000.0	Stimulus frequency decrement (Hz).
2.5e-3	Ramp up rise time for signal (s).
Output

Figure [83] The input-output functions for the test version of the DRNL BM model. Both on and off CF functions are shown. Note that the off-CF input-output functions show compression at higher intensities.

Example: Tests/Model/Basilar_M/IORatiovsFreq.c

Parameter file:IORatiovsFreq.par:
#
# Main Parameter file
#
output.dat		Name of output file.
#
# Module specifications.
#
#Par. file		Name				Description
#---------		-----				-------------
PTone4.par		PureTone			Stimulus generation paradigm.
DRNLT18k.par		BasilarM_DRNL_Test	Basilar membrane filter.
#
# Miscellaneous parameters
#
100.0		Lowest frequency for pure tone probe stimulus (Hz).
10000.0		Highest frequency for pure tone probe stimulus (Hz).
10			No. of frequencies within range (logarithmic).
2.5e-3		Ramp up rise time for signal (s).
Output

See figure [61] on page Error! Bookmark not defined..


previous next Up Title Contents