You are on page 1of 343

CATT-Acoustic v8

g

Room Acoustics Prediction and Walkthrough Auralization
Users Manual
Copyright CATT 2007







CATT-Acoustic v8.0
- up to and including v8.0g build 2 -

For additions after v8.0g build 2 see
Help|View Manual Addendum
or the help-file

Users Manual
Copyright CATT 2007













CATT
Mariagatan 16A
SE-41471 Gothenburg
Sweden

Phone/Fax: +46 31 145154
E-mail: info@catt.se
WWW: http://www.catt.se


























Front page pictures and model from
Javier Barros Sierra Auditorium
at Facultad de Ingenieria, UNAM, Mexico
Courtesy of Juan Carlos Andrews Gonzalez from
his thesis on the acoustic analysis of this hall.
Printed in Gothenburg Sweden, Aug 2007
CONTENTS

1. INTRODUCTION .......................................................................1
1.1 Installation............................................................................................ 1
Optional user-supplied info included in license..........................................................6
1.2 Typical session.................................................................................... 6
Audience area mapping...............................................................................................10
Early part detailed ISM.................................................................................................10
Full detailed calculation...............................................................................................10
1.3 Common user interface elements.................................................... 11
Menus.............................................................................................................................11
Dialogs...........................................................................................................................19
Toolbars.........................................................................................................................19
Hidden options..............................................................................................................20
Miscellaneous ...............................................................................................................23
1.4 Input/output files overview............................................................... 25
Source directivity module............................................................................................26
Surface properties module..........................................................................................26
Prediction module ........................................................................................................26
Source addition module...............................................................................................27
Post-processing module..............................................................................................28
Plot-file viewer module.................................................................................................29
Sequence processing module.....................................................................................29
1.5 Software overview............................................................................. 29
Hardware requirements................................................................................................29
Hall geometry and absorption.....................................................................................30
Coordinate system.......................................................................................................31
Frequency range...........................................................................................................32
Source directivity..........................................................................................................32
Data output....................................................................................................................32
1.6 How to get started ............................................................................. 34
CONTENTS

1.7 About CATT........................................................................................ 34
2. PREDICTION MODULE.......................................................... 37
2.1 Menus ................................................................................................. 37
2.2 Dialogs................................................................................................ 43
General settings........................................................................................................... 44
Geometry view/check .................................................................................................. 48
Audience area mapping............................................................................................... 53
Early part detailed ISM................................................................................................. 60
Full detailed calculation .............................................................................................. 63
Interactive RT estimate................................................................................................ 69
Pixel rendering ............................................................................................................. 72
2.3 Input-files ........................................................................................... 76
Common features......................................................................................................... 76
Geometry-files.............................................................................................................. 78
Source-file................................................................................................................... 110
Receiver-file................................................................................................................ 115
2.4 Output-files ...................................................................................... 121
General ........................................................................................................................ 121
Geometry view/check results.................................................................................... 121
Audience area mapping results................................................................................ 123
Early part detailed ISM results.................................................................................. 125
Full detailed calculation results................................................................................ 127
2.5 Theory............................................................................................... 132
Prediction methods.................................................................................................... 132
Automatic edge diffusion.......................................................................................... 136
Reverberant decay and reverberation time estimation.......................................... 137
Room acoustic parameters....................................................................................... 138
Echogram calculation................................................................................................ 143
Directivity handling.................................................................................................... 144
Semi-transparency..................................................................................................... 145
CONTENTS

Calculation recommendations ..................................................................................146
2.6 Tips and Tricks ................................................................................ 147
2.7 Trouble-shooting ............................................................................. 150
Geometrical errors......................................................................................................150
Audience area mapping problems............................................................................151
Early part calculation problems................................................................................151
Full detailed calculation problems............................................................................151
3. SURFACE PROPERTIES MODULE .....................................153
3.1 Menus ............................................................................................... 153
3.2 Dialogs.............................................................................................. 157
4. DIRECTIVITY MODULE........................................................159
4.1 Menus ............................................................................................... 159
4.2 Dialogs.............................................................................................. 170
15-degree interpolated format (SD0) ........................................................................170
10-degree measured format (SD1, CF1, CF2) ..........................................................171
DLL-format (SD2) ........................................................................................................172
Elements common to SD0, SD1, CF1, CF2 (and SD2) formats...............................173
4.3 Theory............................................................................................... 176
The 15-degree interpolated format (SD0) .................................................................176
The 10-degree measured format (SD1).....................................................................176
The any-degree measured, interpolated or simulated format (SD2) .....................177
Directivity Index..........................................................................................................178
Directivity Contours ...................................................................................................178
Caching of DI and contours.......................................................................................178
5. PLOT-FILE VIEW/PRINT MODULE ......................................179
5.1 Menus ............................................................................................... 179
5.2 Dialogs.............................................................................................. 184
Plot-file control ...........................................................................................................184
6. SOURCE ADDITION MODULE.............................................187
6.1 Menus ............................................................................................... 188
CONTENTS

6.2 Dialogs.............................................................................................. 189
6.3 Output-files ...................................................................................... 192
General ........................................................................................................................ 192
Single receiver result-files......................................................................................... 192
Multiple receiver result-files...................................................................................... 194
7. POST-PROCESSING MODULE........................................... 197
7.1 Menus ............................................................................................... 198
7.2 Dialogs.............................................................................................. 224
General settings......................................................................................................... 225
Output-files................................................................................................................. 229
Early part response.................................................................................................... 231
Late part response..................................................................................................... 232
Create files for head-tracking ................................................................................... 232
Create CWI-file for CATT-Walker .............................................................................. 233
Convolution ................................................................................................................ 234
Walkthrough convolution.......................................................................................... 236
Convolution (WAV impulse responses)................................................................... 240
7.3 Theory............................................................................................... 242
7.3 Theory............................................................................................... 242
Impulse response scale and calibration.................................................................. 242
Reflection path (RP) transfer function..................................................................... 243
Receiver model........................................................................................................... 245
Late part generation................................................................................................... 247
Inter-Aural Cross Correlation Coefficient ................................................................ 248
Crosstalk canceling filters ........................................................................................ 248
8. SEQUENCE PROCESSING MODULE................................. 253
9. CATT EDITOR...................................................................... 263
9.1 Non-standard menus....................................................................... 263
10. AUTOCAD INTERFACE..................................................... 265
10.1 Introduction.................................................................................... 265
CONTENTS

Direct creation of a model in AutoCAD....................................................................265
Modification of an existing drawing in AutoCAD format ........................................266
Import of an existing model in the CATT format .....................................................266
Basic interface concepts ...........................................................................................268
10.2 Installation...................................................................................... 268
10.3 AutoLISP commands..................................................................... 268
10.4 Modeling tips.................................................................................. 271
11. TUTORIAL...........................................................................273
11.1 Preparation..................................................................................... 273
11.2 Modeling......................................................................................... 273
Step 1, the audience and floor surfaces...................................................................275
Step 2, walls and ceiling ............................................................................................277
Step 3, entrance wall and door..................................................................................278
Step 4, the stage .........................................................................................................279
Step 5, source/receiver locations..............................................................................280
Step 6, side wall reflectors.........................................................................................282
11.3 Prediction....................................................................................... 283
Interactive RT estimate ..............................................................................................283
Audience area mapping.............................................................................................284
Early part detailed ISM...............................................................................................284
Full detailed calculation.............................................................................................285
11.4 Source addition.............................................................................. 286
11.5 Post-processing - Auralization..................................................... 288
11.6 Sequence processing.................................................................... 289
12. REFERENCES ....................................................................291
APPENDIX A TUTORIAL FILES
INDEX
CONTENTS

1. INTRODUCTION

1
1. INTRODUCTION
The Introduction describes how CATT-Acoustic is installed, an example of how it is run,
common user interface elements, an overview of input/output-files used, a general overview of
what the software can do, and a CATT background.
Manual conventions:
File-names, folder-names, text to be entered and text-file contents are set in COURIER
like in C:\CATT.
Menu selections are set in bold as in File|Preferences.
Dialog names are set in bold italics as in General settings.
Dialog items are set in italics as in General settings/Input folder.
Dialog groups are set in italics within brackets as in General settings/(Plane use) .
Menus and dialogs belonging to specific programs or program modules are sometimes
written prefixed with the module name and a colon as in Prediction:General settings.
Product, organization and company names are set in italics as in CATT-Acoustic.
Items in square brackets as in [Dalenbck-95] refer to References, Section 12.
All products mentioned in this manual are trademarks of their respective owners.
1.1 Installation
CATT-Acoustic is installed from CD by inserting the CD (in say G:) and Run
G:\install.exe. The installation program will then perform all necessary steps (for licenses
including hardware locks, and when running under Windows NT, 2000, XP and Vista some
further short separately described steps are required after installation, see README.TXT).
All CATT programs are normally kept in a single folder selected at installation, this folder will
hereafter be called the "CATT-folder".
All CATT data-libraries, settings-files and the DLL Directivity Interface are kept in a separate
folder. This folder will hereafter be called the "CATTDATA-folder" and "CATTDATA-folder
ANECHOIC" means the ANECHOIC sub-folder. This folder is at initial installation suggested to
be:
XP: C:\Documents and Settings\[user]\Application Data\CATT *)
Vista: C:\Users\[user]\AppData\Roaming\CATT *)
If more than one logged-on user will be using the software, and want to share the library data,
it can be more practical to install in
XP: C:\Documents and Settings\All Users\Application Data\CATT *)
Vista: C:\ProgramData\CATT *)
*) or corresponding name on a non-English Windows
1. INTRODUCTION

2
On older installations updated to v8.0g or higher the CATT-folder and the CATTDATA-folder
may remain the same but if necessary (due to folder access rights) or desired, the data can be
copied to another folder or even another drive (for that to work the drive must be mapped so it
gets a drive letter). The items to copy are:
Folders (including all sub-folders) for all versions:
[Abslibs]
[Anechoic]
[HRTFs]
[Headphones]
[SD]
[SD2Data]
If exists:
hiddenoptions.txt
Template.PRD
Template.PST
Startup.PLT
Startup.OGL
CATT32.DAT
For full versions with The FIReverb Suite :
[pv_mics]
[pv_halls]
[mv_mics]
FIReverb.DAT
For full versions with CATT-Walker:
BinDec.DAT
Walker.CFG
Multiple data-folders can exist and the one to use can be selected by File|Preferences.
No files are installed in the WINDOWS folder and no system files other than the Registry are
altered. The Registry is used for Preferences settings and file types/icons.
After installation, the files and folders below are present in the CATT-folder and CATTDATA-
folder. Files marked "internal" may only be changed, removed or updated after instructions
from CATT or by CATT software.

CATT programs (internal, (f) = full auralization version), some of these can be loaded from
within CATT-Acoustic via File|CATT External Tool:

CATT32.EXE CATT-Acoustic main program
CATTED32.EXE CATT-Edit (Notepad-like customized editor)
CATTOGL32.EXE CATT 3D-viewer based on OpenGL (documented by its own
help-file)
CATTPLT32.EXE CATT PLT-viewer (standalone version)
DXF2GEO.EXE DXF2GEO DXF converter (documented only by its own help
PDF)
MAKEWALKERBINDEC.EXE (f)
MakeWalkerBinDec support tool for CATT-Walker (see CATT-
Walker help PDF)
UNCTT.EXE program used for extracting software updates and additions
downloaded over the internet from the CATT users www.
1. INTRODUCTION

3
WALKDECIM.EXE (f) WalkDecim, support tool for making use of exported camera
paths with the Walkthrough convolver (documented by its own
help PDF).
WALKER.EXE (f) CATT-Walker for real time walkthrough auralization (documented
by its own help PDF)
PureVerb32.EXE (f) The FIReverb Suite PureVerb application
MltVlv32.EXE (f) The FIReverb Suite MultiVolver application
PvxViewer.EXE (f) The FIReverb Suite PvxViewer application
CATTxxxx_data.EXE An installation program that installs the library data and
establishes the CATTDATA folder when the program is first run
or when run by a new user. xxxx is either demo, pred or full
depending on version.

Supporting Dynamic Link Libraries (internal):

ACLIB.DLL (f)
DATA32.DLL
ERRORS32.DLL
GENLOCK.DLL
METER32.DLL
OGLSWITCH32.DLL
STRNGS32.DLL
SWITCH32.DLL

License-file:

XTRA32.DAT (licenses before v8.0g use an XTRA32.DLL)

Windows Help (.HLP), HTML Help (.CHM) or Adobe Acrobat (.PDF) (internal):

programname.CHM Compiled HTML help-file
programname.HLP Windows help-file
programname.PDF PDF help
addendum.HTM/.PDF Manual addendum (additions since this manual)

Surface properties (absorption and scattering coefficients) library files to be selected in
Preferences:

CATTDATA-folder ABSLIBS (folder, internal)

*.DAT

Source directivity library-files:
CATTDATA-folder SD or SD sub-folder (folder, internal):

*.SD0 (15 format )
*.SD1 (10 format)
*.SD2 (DDI format)
*.CF1 (Common Loudspeaker Format [CLF] 10)
*.CF2 (Common Loudspeaker Format [CLF] 5)
*.COL (directivity collection files)
*.MRK (loudspeaker visuals)
DLL Directivity Interface (DDI) folders used by the SD2 directivity format:
1. INTRODUCTION

4
CATTDATA-folder SD2DATA (folder, internal)
CATTDATA-folder SD2DATA\CATT_Generic (folder, internal):

CATT_Generic.DLL
CATT_Generic.HLP
CATTDATA-folder SD2DATA\ further DDI folders/modules

Headphone equalization filters to be selected in Preferences :

CATTDATA-folder HEADPHONES (folder, internal):

*.DAT
Note: For limited versions only one headphone filter is provided: "Generic" (file-
name GENERIC_v8_plain_44.MAT. To use the correct headphone filter is very
important. The generic filter may result in severe coloration with some head-
phones.

Head-Related Transfer Functions (HRTFs) for binaural post-processing to be selected in
Preferences:

CATTDATA-folder HRTFS (folder, internal):

*.DAT
Note: for limited versions only an HRTF library based on analytical sphere ex-
pressions is provided: SPHERE_plain_44.DAT.

Mono WAV-files with anechoically recorded material to be used with the software convolver in
the Post-processing module. Further samples can be taken from the accompanying CD (full
version):

CATTDATA-folder ANECHOIC (folder):

????_44_AN.WAV a number of anechoic 44100 Hz WAV-files
Note: these files are short samples from the accompanying CD from Bang &
Olufsen (B&O). CATT has, as a service to users, been granted permission to
include short samples from this CD provided that the full CD also is included with
the software. Copyright remains with B&O and must be carefully considered if
samples from the CD are to be used in any context covered by copyright laws
such as e.g. broadcasting or internet presentation. For limited versions only a
single - a bit noisy - 22050 Hz file is provided: DEMO_22_AN.WAV.

*.AWI anechoic WAV-file info files that contain level and directivity infor-
mation associated with an anechoic WAV-file.
WAVLIST.TXT a list and a short description of the anechoically recorded samples
provided (full version).

Simple shoebox used for typical session in Section 1.2:

CATTDATA-folder MODELS\SHOEBOX (folder):

MASTER.GEO
SRC.LOC, REC.LOC
1. INTRODUCTION

5
GEO.PRD, PROJECT.TXT

Manual example hall used in Section 2.3:

CATTDATA-folder MODELS\EXAMPLE (folder):

MASTER.GEO, SIDES.GEO, ACROSS.GEO, AUDIENCE.GEO,
REFL.GEO, MARKERS.GEO
SRC.LOC, REC.LOC
GEO.PRD, PROJECT.TXT

Tutorial hall files used in Section 11:

CATTDATA-folder MODELS\TUTORIAL (folder):

MASTSTEP.GEO, MASTFULL.GEO, REFLECT.GEO
SRC.LOC, REC.LOC
GEO.PRD, PROJECT.TXT

Marker files (illustrating the use of markers for non-acoustical visual elements and
loudspeaker visuals):

CATTDATA-folder MARKERS (folder):

*.GEO (NOROOM GEO-files to be exported as markers)
*.MRK (sample marker-file exported from corresponding GEO-files)

AutoCAD interface files (internal):

CATT-folder ACAD (folder)

Various AutoLISP files (*.LSP) and predefined symbols (*.DWG).
The CATT AutoLISP AutoCAD interface is documented in Section 10.
For full auralization licenses, The FIReverb Suite is included containing the FIR reverberation
creator PureVerb and the 8x8 multi-channel convolver MultiVolver. The FIReverb Suite comes
with its own help-files but no printed documentation. The FIReverb Suite consists of the
following main files in the CATT-folder (for further details consult the FIReverb help-files):

PUREVERB32.EXE (f) PureVerb (+ help-file PUREVERB32.CHM)
MLTVLV32.EXE (f) MultiVolver (+ help-file MLTVLV32.CHM)

Other files in the CATT-folder:

*.MANIFEST these files are included for each CATT application are included that
makes them use the XP interface (color scheme, mouse-over highlight
etc.) assuming the classical theme has not been selected in Control
panel. If this look is not desired, remove or rename the manifest files.

README.TXT Important information about e.g. updates.

SAMPLE_PATH.TXT (f)
Sample camera path for WalkDecim.

Other files in the CATTDATA-folder:

HIDDENOPTIONS.TXT
Hidden options settings (see Section 1-3).

1. INTRODUCTION

6
WALKER.CFG (f) Settings for CATT-Walker.
BINDEC.DAT (f) HRTF and headphone settings for CATT-Walker.
Optional user-supplied info included in license
The license-file mechanism can handle optional user-supplied information. A license can be
tagged so that the information must be included and displayed (if it is tampered with, the
program will not run). The information is displayed in a "splash" dialog when the program
starts that has to be OK-ed by the user. Similarly, each time Help|About is selected the
special dialog is displayed together with the normal About dialog. This addition was triggered
by one case where an acoustical consultant sponsored a CATT-Acoustic license to a uni-
versity and wished for the donation to be clearly visible. This information can also be
requested by other users, it involves only a replacement of the license DAT.
1.2 Typical session
Below are shown typical steps predicting the acoustics of a simple shoebox-shaped hall with
one source and one receiver to give you a feeling of what it is all about. This example is a
"mini tutorial" and is kept as clean as possible avoiding many of the more advanced features
that are used in the example hall in Section 2.3 and in the dedicated Tutorial in Section 11.
This simple examples also only specifies values for 125 Hz to 4k Hz (8k and 16k Hz values
are extrapolated).
Note: the procedure here uses direct GEO modeling but import via an AutoCAD interface, via
DXF or a modeling plugin is also possible, see Section 10. However, even when most
modeling is done via file import the GEO has many options that can be beneficial to use after
import so at least a basic understanding of the GEO is necessary.
Start CATT-Acoustic, the Prediction module and the Plot-file viewer module opens up directly.
Create a new project by selecting Utilities|Create Project. The appearing dialog expects you
to enter a project name and select a folder for the hall you are going to work with (say
C:\SHOEBOX). The Browse folder button in the dialog also allows you to create a new folder.
When OK is clicked all basic files are created automatically, ready to be filled in:

MASTER.GEO master geometry-file template
REC.LOC receiver positions (a generic position inserted)
SRC.LOC source positions and data (a generic source inserted)
GEO.PRD prediction settings-file prepared for geometry check
PROJECT.TXT a text-file for notes about the project (optional use)
Select (Edit) Geo-file and MASTER.GEO and CATT-Edit loads with the file. Enter the geometry
data as shown below (the files can also be found in the CATTDATA-folder
MODELS\SHOEBOX). Data items in the geometry-file are constant and absorption declarations,
corner ids and coordinates (x, y, z) and, finally, plane definitions. Comments are introduced by
a semicolon ";" and blank lines are allowed.

;MASTER.GEO
;constant declarations
LOCAL h = 8 ;hall height
LOCAL w = 10 ;hall width
GLOBAL d = 24 ;hall depth

;absorption and scattering coeff. 125Hz to 4kHz [%], RGB-color
ABS audience = <40 50 60 70 80 80> L <30 40 50 60 70 80> {255 0 0}
1. INTRODUCTION

7
ABS wood = <15 13 10 9 8 7> L <30 30 30 30 30 30> {255 255 0}
;- if 8k and 16k values are known they can be given after
; a colon as in <15 13 10 9 8 7 : 7 8 > otherwise they
; are extrapolated from 2k and 4k values.
;- color is optional, one will be auto generated if not given.
;- scattering coefficients are optional (but strongly recommended)
; if not given the default values in General settings will be used

CORNERS
;floor corners
1 -w/2 0 0
2 -w/2 d 0
3 w/2 d 0
4 w/2 0 0
;ceiling corners
11 -w/2 0 h
12 -w/2 d h
13 w/2 d h
14 w/2 0 h

PLANES
[1 floor / 4 3 2 1 / audience ]
[2 ceiling / 11 12 13 14 / wood ]
[3 stage wall / 1 11 14 4 / wood ]
[4 rear wall / 3 13 12 2 / wood ]
[5 left wall / 2 12 11 1 / wood ]
[6 right wall / 4 14 13 3 / wood ]
The absorption/scattering coefficient data can either be entered directly in a geometry-file, as
above, or already be defined in a library maintained by the Surface properties module, see
Section 3.
Save MASTER.GEO.
Select (Edit) Receiver-file and REC.LOC and enter the receiver data. Data items in the
receiver-file are the receiver ids (00..99) and the corresponding positions (x, y, z).

;REC.LOC
RECEIVERS
1 -3 d-4 1.3
Note that global constants defined in GEO-files, in this case d, can also be used in source-
and receiver-files.
Save REC.LOC.
Select (Edit) Source-file and SRC.LOC and enter the source data. Data items in the source-file
are source ids (A0..A9, ... , to Z0..Z9), source positions (x, y, z), source directivities, source
aim points (x, y, z) (or an aim() function specifying angles) and finally sound pressure levels
for the six (or eight) octave bands at 1 meter distance from the source on the source axis.
Optionally a source roll angle can be added, see Section 2.3.

;SRC.LOC
LOCAL src_z = 1.7
SOURCEDEFS
A0 1.0 1.7 src_z OMNI 1.0 3.7 src_z
Lp1m_a = <70 73 76 79 82 85>

1. INTRODUCTION

8
;an electrocacoustic source, using the aim() function
A1 2.0 1.7 src_z CATT.SD1 aim(-20,10)
Lp1m_a = <70 73 76 79 82 95> ;the acoustic input to the system
Gain_a = < 5 10 20 20 20 20> ;how much to amplify Lp1m_a, in dB
Delay_e = 0 ;delay in ms

;same type of source as A1 but uses some shortcuts and a different aim
A2 -1.0 1.7 src_z CATT.SD1 1.0 3.7 src_z
Lp1m_a = lp_white 79 ;the acoustic input to the system,
;white spectrum with 79 dB at 1k
Gain_a = < 5 10 20 20 20 20> ;how much to amplify Lp1m_a, in dB
Delay_e = 0
Source directivities are managed by the Directivity module, see Section 4. Note how a local
constant, src_z, is used to ensure that the source is aimed in the horizontal plane (aim has
no practical consequence for the OMNI source used for A0).
Save SRC.LOC.
The Create project utility also created a basic settings-file GEO.PRD loaded when the project
was created. Select General settings and browse through the various settings and then do the
same with Geometry view/check.
View the created geometry by clicking Save and Run. This will create basic geometry plot-
files. The current settings-file is also saved so the next time you run it will contain the same
settings. Settings-files can be used later on for sequence (batch) processing, see Section 8.
If an input-file has been edited and changed without having been saved afterwards, the editor
containing the file is moved to the front and a prompt is displayed asking if the file should be
saved before continuing.
The Prediction module reads the created geometry-file, source- and receiver-files in the
project folder (i.e. the Input folder in the General settings dialog) and creates files in the
Output folder.
5m
Y
Z
X
Y
X
Z
A0
01
Volume:1921m

Fig. 1.1 Sample shoebox plot-file VIEW4.PLT
One created file, named PLT_GEO.TXT contains all created plot-file names and the View
module automatically displays all files created (such plot-file lists can also be customized
using the View module or a text editor to show an arbitrary assembly of results for
presentations). The VIEW4.PLT file is shown in Fig. 1.1.
1. INTRODUCTION

9
Next/Previous file can either be selected on the optional Plot-file control floating dialog
(Ctrl+R), by pressing the PgDn/PgUp keys, or via the toolbar double-arrow buttons. The View
module is described in Section 5.
Pay special attention to the PLINFO.PLT plot-file that contains plot sub-frames. Next/
Previous frame can be selected on the Plot-file control where all planes can be stepped
through and should have their front (reflecting side) colored with the assigned or auto-
generated color and the back (non-reflecting) side with black (you can also use right and left
arrow keys if the dialog is closed or inactive, the toolbar single-arrow buttons, click-drag the
mouse on the yellow title bar or Options|Select Frame or using a scroll wheel on the mouse,
or by direct mouse selection toggled by the F key see status bar). If the color is not on the
reflecting side, the plane corner entering order in the GEO-file has to be reversed. This can
either be done by reversing the sequence of corner ids or simply by changing / to \ in the
plane definition.
The COLORED.PLT file shows a colored version of the hall where only planes viewed from
their reflecting side are colored. By rotating the hall (click and drag the left mouse button) it is
easy to detect if any planes are forgotten or have been entered reversed (e.g. a reversed
ceiling will be shaded on the outside).
Similarly, the SHADED.PLT file shows a shaded version of the hall where only planes viewed
from their reflecting side are shaded (in an angle dependent manner).
A file SHADED.OGL for the standalone OpenGL-based CATT 3D-Viewer was also created and
loaded into the viewer. This viewer has many options and can be e.g. used to create
presentations. The viewer is documented separately in its help-file.
Select the Prediction module again (by clicking on its title or on the toolbar Prediction icon).
If the geometry needs to be adjusted edit the geometry-file MASTER.GEO again by (Edit) Geo-
file (or simply Alt-TAB to the editor if it is still open) and repeat Save and Run.
For a bit of experimenting change the line

LOCAL h = 8 ;hall height
to
GETLOCAL h = 8 ;hall height
and you will be able to enter the height at a screen prompt while the file is being read after
Save and Run has been clicked.
Let us assume that the geometry now looks OK. It is then time for some predictions of the
acoustics in the hall.
The software offers three different main kinds of predictions:
Audience area mapping: color mapping of parameters and/or the direct sound over
selected audience planes based on ray-tracing;
Early part detailed ISM: detailed early reflections for qualitative reflection path studies
based on the Image Source Model (ISM);
Full detailed calculation: full detailed echograms that can be used for auralization and
parameter estimation - based on the unique Randomized Tail-
corrected Cone-tracing (RTC).
1. INTRODUCTION

10
Audience area mapping
Select (Audience area mapping) Direct + reflected sound and in the Audience area mapping
- direct+reflected dialog select No of rays/octave 10000, Ray truncation time 1000 ms. Click
the Audience planes button and select plane 1 (the floor) as the audience plane (enter 1 in
only the first or both edit boxes and press the Add button). Leave the remaining settings at
their default values. Click Save and Run again.
The settings-file now instructs the Prediction module to perform ray-tracing with 1 m diameter
receivers placed at the Map height (0.5 m) over the audience surface and for each of these
receivers to calculate various room acoustic parameters. The result-files created are with
sound pressure level in four time-windows (SPL_1K.PLT), Later Energy Fractions in four
time-windows (LF_1K.PLT) and D-50, C-80, SPL, G, Ts and LF parameters (PAR1_1K.PLT
and PAR2_1K.PLT). For those parameters selected for 3D display separate 3D plot-files (e.g.
D-50_1k.PLT will be created). Mapping is only performed for the octave-bands selected (in
this case the 1 kHz band) and all defined sources that are selected in General settings are
added together taking electrical delays into account if defined (in the source-file).
Early part detailed ISM
Switch off Audience area mapping and select Early part detailed ISM and in the Early part
detailed ISM dialog select Specular refl. order 3 and I.S. truncation time 100 ms, a Refl.
history, and an I.S. space plot-file (I.S. = Image Source). Click Save and Run again.
The settings-file now instructs the Prediction module to calculate image sources for the early
part of the echogram and create a plot-file for the early part reflections History
(H_A0_01_1K.PLT) and an image source Space file (S_A0_01_1K.PLT) for source A0 and
receiver 01 @1 kHz. Early part detailed ISM only gives plot-files for the octaves selected and
no parameters other than SPL are estimated. This calculation type is to be used for qualitative
early specular reflection path analysis or for creating files for the Post-processing and Source
addition modules for special cases.
Full detailed calculation
Finally, for the full calculation switch off Early part detailed ISM and select Full detailed
calculation and in the Full detailed calculation dialog select No of rays/octave 10000, Ray
truncation time 1000 ms. Then click Save and Run again.
The settings-file now instructs the Prediction module to perform a thorough prediction using
randomized tail-corrected cone-tracing (RTC). To preserve high early part detail direct sound,
first order diffuse and specular reflections, and second order specular reflections are handled
deterministically by the ISM. A plot-file containing a lot of useful information is created
(E_A0_01_1K.PLT) (Echogram source A0 receiver 01 @1 kHz). The plot shows full echo-
gram with backward integrated decay, reverberation time regression lines and coefficients,
early part discrete reflections, early part smoothed echogram, backward and forward
integrated, cos
2
-weighted X (front-back), Y (left-right) and Z (up-down) smoothed echograms.
In addition are shown a small hall plan with source- and receiver locations, a dimension scale,
source data plus estimated major parameters. Full detailed calculation gives plot-files only for
the octaves selected but always calculates for all octaves so that even if an octave-band or
specific parameter plot-file is forgotten numbers predicted can always be found in
PARAM_ss.TXT (PARAM_A0.TXT in this case) and any selected post-processing files always
contain full information for the octave-bands 125 Hz and 16 kHz. This calculation type is to be
used for detailed quantitative analysis of an echogram and the results can be used by the
Source addition and Post-processing modules (requires selecting the (Save data for) options.
1. INTRODUCTION

11
Although, in this example, the three different calculation types were run one by one they can
be run in any combination and it is good to always have Geometry view/check selected so that
with any changes the latest geometry plot-files always correspond to the latest calculation
results. If the hall geometry needs to be changed, the geometry-file must again be edited and
the geometry has to be viewed/checked.
These were the basic steps running CATT-Acoustic in its most generic form. The Example
Hall in Section 2.3 and the Tutorial in Section 11 give more realistic examples. Note that the
Tutorial can first be run through directly in the help-file since many created plots are shown.
1.3 Common user interface elements
This section describes user interface elements (menus, dialogs, toolbars etc.) that are
common to all seven modules in CATT-Acoustic.
Menus
When a menu item is high-lighted a description is displayed in the left status-bar field of the
main window. Common menu items are found in the File, the Window, and the Help menus.
File|Open Recent file-type | file-names
All modules, except Surface properties, have a menu item where the ten most recent settings-
files etc. are stored for direct selection.
External CATT Tool|
CATT tools that are external to CATT-Acoustic (OpenGL 3D-Viewer, PLT-Viewer, DXF2GEO,
CATT-Walker etc.) can be loaded from this menu. At program startup the CATT folder is
searched for available tools and those found are added (original file names only, any renamed
tools will not be added). Also the free GratisVolver and GratisWavPlayer will be listed here if
found.
File|Preferences
Displays the Preferences settings dialog. Before displaying the dialog the current
CATTDATA-folder can be confirmed or changed. The Preferences settings applies to the
current CATTDATA-folder. Note: Hidden options, documented further below in this section, act
as another set of preferences for less common options.
1. INTRODUCTION

12


Projects folder Preferences
The parent folder under which you wish to place your projects. This folder is then the startup
folder for folder-selection with e.g. Utilities|Create a New Project and initial browsing for
input folder in General settings (when the Input folder field is empty).
1. INTRODUCTION

13
Surface properties Preferences
Library used in the Surface properties module and when geometry is read. Libraries are
placed in the CATT-folder ABSLIBS.
Default anechoic WAV-file Preferences
Used for convolution. If a favorite file is used it is convenient to enter it here since it will be pre-
selected in the Convolution dialog. Anechoic WAV-files are placed in the CATTDATA-folder
ANECHOIC.
HRTF library Preferences
HRTF library used for binaural post-processing at each samplerate. Demo auralization HRTFs
for 44.1 kHz, based on a rigid sphere approximation, are named SPHERE_plain_44.DAT.
For HRTFs other than those originally provided check the CATT users www page. HRTF
library-files are placed in the CATTDATA-folder HRTFS.
Headphone filter Preferences
Headphone filter used for binaural post-processing at each samplerate. Demo auralization
filters for 44.1 kHz are named GENERIC_V8_plain_44.DAT. For filters other than those
originally provided check the CATT users www page. Headphone filters are placed in the
CATTDATA-folder HEADPHONES.
CATT-Edit font Preferences
The font used by CATT-Edit when it is loaded from the main application. Don't pay any
attention to the actual font-size number selected, just select a font size that works well. When
CATT-Edit is loaded from e.g. the Windows Explorer, a default font is used.
Warn if settings may be inappropriate Preferences
If potentially inappropriate settings have been se-
lected, warnings will be issued and an option to abort
the action is presented. With sequence (batch) runs
warnings are temporarily switched off. Experienced
users may want to set some warnings off.
No direct sound (Prediction) Warning options
Warning if for some source-receiver combinations
the direct sound is blocked. Note that most measures
loose their meaning if the direct sound is not present
and predictions will be less accurate.
Too few rays used (Prediction) Warning options
Warning if the selected number of rays is less than
half the number of rays estimated by "auto number".
Too short echogram (Prediction) Warning options
Warning if the ray truncation time is selected too
short. If so T-30 will not be correctly estimated.
1. INTRODUCTION

14
Head direction source (> 1 source) (Prediction) Warning options
Warning if more than one source is used and the head direction in Prediction:General
settings is set as "source". This is not a meaningful setting except when several sources are
calculated as independent cases and the sum of the results at each receiver is never con-
sidered.
Overwriting old output results (Prediction) Warning options
Warning if the output folder already contains such files that the current calculation will create.
Diffuse reflections off (Prediction) Warning options
Warning if diffuse reflection is switched off in Prediction:General settings. Diffuse reflection
should normally always be on and surface properties should include scattering coefficients.
Default diffusion off (Prediction) Warning options
Warning if the default diffusion is switched off in Prediction:General settings. Default
scattering coefficients are assigned to all surfaces that are not given specific coefficients.
ISM diffuse reflection order = 0 (Prediction) Warning options
Warning if diffusion is on but in Early part detailed ISM the diffuse reflection order is set to 0.
Too short impulse response (Post-proc. related) Warning options
Warning if the impulse response in Post-processing:General settings is too short in relation
to the estimated RT.
Some early reflections excluded (Post-proc. related) Warning options
Warning if the early part reflection min order is > 0 (full Huron version only).
Post-processing based on ISM (Post-proc. related) Warning options
Warning if post-processing files are created using Early part detailed ISM, normally they
should only be created by Full detailed calculation.
Long calc. no post-processing files (Post-proc. related) Warning options
Warning if a long prediction is started and some of the post-processing options are not
selected.
Use a small Plot-file control Preferences
Uses a small plot-file control (instead of a bigger one) for navigating 3D views etc. in the View-
module. Most controlling functions can be reached via the toolbar or via direct mouse
operations.
Show Plot-file control Preferences
Opens the plot-file control when the first plot-file after startup is viewed. Most controlling fun-
ctions can be reached via the toolbar or by direct mouse click-drag on the window so the
control is rarely needed.
1. INTRODUCTION

15
Auto minimize View-module Preferences
Causes the View-module to minimize as soon as another module is activated. Useful if run in
low screen resolutions such as 640x480 VGA (at least 800x600 is recommended).
Disable screensaver while calculating Preferences
Some screensavers take a lot of CPU time and can slow down the calculations by almost an
order of magnitude and therefore often have to be disabled. This option disables any
screensaver only during calculation and is best kept selected on at all times.
2DA ISM History plot (instead of 3DA) Preferences
The Early part detailed ISM reflection history plot (H_ss_rr_oct.PLT) is normally made as a
3DA plot but the older 2DA version can be switched on (e.g. so that big complex rooms can be
zoomed). Thus, either 2DA or 3DA can be selected but not both.
Calculate C-50/dB (instead of D-50/%) Preferences
Some users prefer C-50 in dB rather than D-50 in % (C-50 is calculated the same way as C-
80 but with a 50 ms limit instead of 80 ms). This is how the two measures (that express the
same thing) map to each other for every 10% in D-50 (values < 0.1 and > 99.9 will in the table
below be mapped to -30 and 30 dB respectively).

D-50 0 10 20 30 40 50 60 70 80 90 100 %
C-50 -30 -9.5 -6.0 -3.7 -1.8 0 1.8 3.7 6.0 9.5 30 dB
Thus, either C-50 or D-50 can be used but not both. Depending on the type of calculations
there are some differences:
Full detailed calculation: The type of values displayed cannot be changed after-
wards by changing the Preferences option. Note: the RASTI_ss.PLT file always
shows D-50 since the main reason is to show that the much (much) simpler measure
D-50 gives just about the same numbers as the more complex RASTI does.
Audience area mapping: The type of values displayed can be changed afterwards
by changing the Preferences option and adjusting the Options|Map Scale in the Plot-
file viewer. However, the stand-alone PLT-viewer always shows D-50 in maps (this
may change later by adding a special D-50/C-50 option to the viewer).
Source addition: The type of values displayed cannot be changed afterwards by
changing the Preferences option.
Create 32-bit SIM-files (not for Lake h/w) Preferences
With this option off (default) created SIM-files are scaled optimally for use with Lake's 24-bit
convolvers. However, with the CATT-Acoustic convolver and The FIReverb Suite MultiVolver
full 32-bit coefficients may be used. This is mostly interesting if filters are created in CATT-
Acoustic (e.g. for a 5-channel to binaural down-mix) but will be used in the MultiVolver that
also can use and create 24- and 32-bit WAV-files since for 16-bit WAVs the current SIM-file
scaling is well sufficient.
Use CATT syntax for HeadScape SIM-files Preferences
Only shown for full version with Lake Huron add-ons. With v7, the only application of
HeadScape files was with Lake DSP hardware. With v8 they can also be used with the
Walkthrough Convolver. With this option selected, the files name syntax of HeadScape files
1. INTRODUCTION

16
will be E_ss_rr_hhhvvv_c.SIM rather than Hhhhvvvc.SIM where c is "L" or "R", hhh the
horizontal angle and vvv the vertical angle.
Graph color Preferences
Sets the background graph color. The selections are quite few (only light colors will work). One
use of this could be to change color for a new hall version (as well as a new output folder) to
make comparisons clearer. Note that the selection affects only graphs created after a change.
Default time-constants Preferences
Default time-constants for echogram smoothing. The values entered here will be set for any
Prediction:File|New Settings and also for the initial setting when the Prediction module is
opened. The default values apply both to Full detailed calculation echograms and Early part
detailed ISM Sone-scale echograms. Note: for "sum" echograms the 1k Hz value is used.
STI weights Preferences

Selection of bands and weights for STI (STI = Speech Transmission Index):

Original Normal classical STI weights [Steeneken-67]

STI modified Weights and bands according to Floyd & Steinberg and as measured by
MLSSA [MLSSA] (in addition to original STI and RASTI), see Prediction
Theory 2.5. These values are based on the Articulation Index (AI) weights
from F&S (AI is a predecessor to STI but took into account only the S/N
ratio in each band and no modulation, see e.g. [Steeneken-67]). It appears
that MLSSA is the only measurement system where these weights are
used as an option.

User user settings: sum of weights for all used bands most be 1.0.
IECmale/female STI for male or female voice according to CEI/IEC 60286-16, 2003-05 [IEC
2068-16]. Includes the redundancy correction factors, level dependent
masking and absolute threshold. For experimental purposes, the latter two
can be disabled via a not official hidden option, contact CATT for the code.
1. INTRODUCTION

17
Include in overview text-files (8 and 16 kHz options) Preferences
If 8k and 16k Hz results should be given in output text-files such as PARAM_ss.TXT. This
setting also controls if 8k and 16k Hz are shown in the Prediction:Interactive RT estimate
dialog.
Include in overview plot-files (8 and 16 kHz options) Preferences
If 8k and 16k Hz results should be given in output plot-files such as E_ss_RR_INT.PLT and
RT_A0.PLT.
Include in map 'sum' (8 and 16 kHz options) Preferences
If audience area mapping 'sum' is selected, all bands 125 - 16k Hz will be calculated. With
this option off, only 125 - 4k Hz will be calculated and the sum is not affected by results at 8k
and 16k Hz. Which bands are used is indicated on map sum plot-files.
Initial view angles (3D-balloon) Preferences
The initial view angles for directivity balloon plots in the Directivity module can be selected.
The horizontal angle goes from 0 to 360 where 0 is at the front and 90 is from the loud-
speaker's left. The vertical angle goes from -90 to 90 where 0 is in the horizontal plane and
90 is from above.
SD2 2 (3D-balloon) Preferences
Will plot SD2 balloons with a 2 resolution, else 5.
Shade (3D-balloon) Preferences
Will color-shade 3D-balloons.
Lines (3D-balloon) Preferences
Will include grid lines on color-shaded 3D-balloons.
SPL range for map statistics Preferences
The default SPL range for MAPSTAT.TXT (and MAPSTATx.TXT) is 20 dB (corresponding to
max..max-20 dB), the range is here selectable between 5..60 dB.
File|New This menu has a toolbar equivalent where applicable
Creates a new settings file (e.g. a new Prediction settings-file in the Prediction module).
File|Open... This menu has a toolbar equivalent where applicable
Opens an existing settings file (e.g. a Prediction settings-file in the Prediction module).
File|Save... This menu has a toolbar equivalent where applicable
Save the current settings file (e.g. a Prediction settings-file in the Prediction module).
File|Save As...
Save the current settings file (e.g. a Prediction settings-file) under a new name.
1. INTRODUCTION

18
File|Edit Text-file...
Loads a selected text-file into CATT-Edit for general purpose editing or print-out. The
Prediction module has (Edit) buttons on its main dialog and in General settings for faster
access to project files. Note: the External CATT Tool menu can start CATT-Edit with a new
empty file.
File|View Text-file...
Loads a text-file into CATT-Edit in read-only (view) mode.
File|Close Module
Closes the active module. Prompts for saving data if required.
File|Exit
Terminates CATT-Acoustic. Prompts for saving data if required.
Window|Available Modules list
Lists all modules and check-marks those currently open. By selecting an unchecked item the
module is opened and by selecting a checked item, the corresponding module is closed.
Prompts for saving data if required.
Window|Cascade
Lines up the modules from the upper left corner of the main window.
Window|Arrange Icons
Arranges minimized module icons (may be required if the main window size has been
changed).
Window|Close All
Closes all open modules but does not exit the program. Prompts for saving data if required.
Window|Open Modules list
Lists currently open modules. By selecting an item the corresponding module is activated.
This menu has a toolbar equivalent since open modules are shown as toolbar buttons.
Help|Help on Current Module
Displays the first help-file page on the currently active module. F1 gives context sensitive help.
Help|Contents
Displays the help-file Contents topic.
Help|Search for Help on...
Displays the help-file keyword search engine.
Help|View Manual Addendum
1. INTRODUCTION

19
A direct link to an addendum file in the CATT-folder. This file in included in all updates and
documents additions and changes. The help-file is always up to date, only the manual needs
the addendum.
Help|About CATT-Acoustic...
Presents an "about box" with copyright, license name, license expiry date, current operating
system notices and a direct link to the users web page.
Dialogs
In many dialogs, small square push-buttons without labels appear when an item is
selected. These are used for editing or specifying the item further.
Dialog Help button or F1 give context sensitive help (also if a dialog has no Help button).
Toolbars
Many basic menu functions can be controlled via the toolbar:

New Prediction
Open Post-processing
Save Source addition
Surface properties
Directivity
Sequence processing
Plot-file viewer
At the left side of the toolbar the standard "New", "Open", "Save", and "Print" buttons (when
applicable) are shown.
In addition, currently open modules have a button each making it easy to switch between open
modules. To open or close a module the Window menu is used. The same image is used for
each module's window title icon as well as for file-types belonging to the module.
The Plot-file viewer module has an extensive toolbar duplicating most controls on the optional
floating Plot-file control (Ctrl+R) dialog:


The toolbar tooltips displays the current value for a 3D setting (the current camera position
and target for camera mode, i.e. the aim line end-points as seen in the Camera Set mode).
The Post-processing module has further toolbar icons for the most commonly used Utilities
menu items:

1. INTRODUCTION

20
Hidden options
To be able to meet special requests without generating many special software versions, (hard
to keep track of, support and update) a feature called "hidden options" was introduced with v8.
Many times a special request may be easy to meet and may take up little space in the EXE
but may be of interest to only one or a few users. Rather than to clutter the interface with
options very seldom used, these are added as hidden options that can be unlocked or
switched on/off with unique code keys. It may also happen that a hidden option will be
converted to an open option and be included in the normal interface and it can therefore also
serve as a way to test new things in an orderly fashion. Similarly, a little used option may be
moved to be hidden for those that still want to use it. Note that these are typically not "secret"
options but just very unusual options like e.g. special export files needed for a particular
project only. There is no practical limit to the number of options that can be handled this way.
The procedure is simple: When CATT32.EXE is started it looks in the CATTDATA-folder for a
file called HIDDENOPTIONS.TXT, if it exists it reads codes from it (one per line) and if these
codes are valid codes the corresponding hidden options are enabled. Codes can be disabled
by commenting them out (with a semicolon) but for the change to take effect the program has
to be restarted.
The first two open codes correspond to removed v7 features:
Include a map of all planes: 45BCE-72843-0537E-98977
Causes a map of all planes used to be included in output text files (E_ss_rr.TXT,
PARAM_ss.TXT). Planes with some diffusing properties are marked by an asterisk.
Create an ISM text history file: F210A-C20D6-A4EBB-C0493
Causes a text history file (I_ss_rr.TXT) to be created with Early part detailed ISM. This
file is documented in the Prediction output files section (2-4).
Show all defined corners: 71E2E-5CBA4-1F06C-133DA
Normally in COINFO.PLT only corners actually used in a plane are shown, this code will
instead allow all defined corners to be shown. Corners not used in any plane definition are
shown in red.
Switch off contours: AC5D6-3EC76-0A444-9B627
When using SD2 array sources that do not have the main lobe on the source axis,
contours are not so meaningful and take time to calculate. This code switches off all
contours no matter if functions with contours are selected or not.
STI/RASTI even with direct sound only: 249BB-4604A-DF146-07BD8
For an outdoor arena such as a football stadium the STI/RASTI of the PA systems is often
determined by late arrivals from neighboring speakers and background noise and not to
such a high degree by reflected sound. For cases where the user judges this to be the
case, a hidden option enables mapping of STI and/or RASTI using only the direct sound.
This option must be used with caution but can potentially speed up initial system design
considerably.
Do not plot high plane edges in maps: 07D55-F67D8-3515B-957E9
Normally in audience area mapping, all edge lines are drawn but if a very detailed ceiling is
used the maps can be too cluttered with lines and hard to read. This hidden option will
cause lines that have both ends above the map not to be drawn.
1. INTRODUCTION

21
Option to plot only the audience planes in audience area mapping: DA756-28EF0-
FA33B-083D5
In rooms where the actual audience area surface is much smaller than the room, this hidden
option can be used to plot only the audience surfaces thus giving a higher graphical resolution.
Option for finer RASTI/STI map statistics ranges: 4825C-27E27-A141D-284B6
The MAPSTAT.TXT file normally shows RASTI and STI values in ranges corresponding to
"GOOD", "FAIR" etc. This option will instead use finer 5% ranges.
Option for mapping of closest source group: CF553-70024-CF5D7-9D8A3
The "Closest" audience area mapping plot (direct sound mapping only), previously
(< v8.0e) indicated the letter of the source group with the shortest delay instead of a color
as indicated in a color scale. The old group letter map is available via this hidden option.
Option to show even very low STI values: FEA33-0CCB5-A8D9A-1663D
From v8.0c Build 6, very low STI with noise values (BAD,POOR) were not shown since it
sometimes gave problems. This hidden option allows all STI to be shown.
Options to calculate U50, AI, PI, SII
A number of less usual measures are calculated by Full detailed calculation only and given
in result text-files when selected. Before using any of these options it is strongly advised to
read the papers and standards cited to judge their applicability. In most cases STI will work
as well or better.
U50: 1938B-AFFA4-2C280-F2F0E
I.e. C50 with background noise taken into account, see [Bradley-96:2].
AI, Articulation Index: B506E-AE71E-A447B-DECD0
See e.g. ASTM E 1130.
PI, Speech Privacy Index: B58F0-2CA5C-FA209-808C8
Calculated as 100 (1 - AI) [%], see e.g. ASTM E 1130 for an application in open offices.
SII, Speech Intelligibility Index: B33E1-779A1-BE75E-A0F79
See ANSI S3.5-1969. This is a very complex measure and only the version that does not
take into account room reverberation has been implemented (standard section 5.1).
Option to show helper curves on echograms: C56DF-2DB1E-234B6-74F60
On the early Full detailed echogram in E_ss_rr_oct.PLT and in the Early part detailed
ISM history plot H_ss_rr_oct.PLT three curves can optionally be displayed to help
evaluate the importance and audibility of reflections in some contexts (such as small
rooms). The curves used come from Fig 24 in [Toole-90].
The upper curve is related to the audibility of a "Separate Echo" (Lochner & Burger) .
The middle curve is related to "Image Shift or Spreading" (Olive & Toole)
The lower curve is related to "Absolute Threshold" (Olive & Toole)
Before using this option it is strongly advised to read the paper to judge the applicability.
1. INTRODUCTION

22
Create MATLAB output from Full detailed calculation: A677D-603DB-876F8-56C5D
This option will create a [MATLAB] v4 format version of the PARAM_ss.TXT result file
called PARAM_ss.MAT. The variables can optionally be prefixed with the string catt_ as
selected via another hidden option, see below. The reason for this option is that with later
MATLAB versions, all variables can be read into a struct e.g. like this: catt =
load(['c:\temp\out\param_a0.mat']); where a variable can then be referred to
as catt.variable with no need for a prefix, the variables (the struct field-names) can if
needed be read via fieldnames(catt). One of several uses for a MATLAB output is
with the Exec command interface of the Sequence processing Prediction step that can run
a MATLAB script afterward completed prediction. Below are listed the saved variables in
alphabetical order as when using the whos command with variables starting with a capital
listed first and shown without the optional prefix. Most names are obvious and the same as
in PARAM_ss.TXT. nrec is not an actual created variable but must be calculated using
nrec = length(rec_ids). Arrays with x 8 format give values for 125..16kHz, x 9
also gives the sum for all octaves, x ? is case dependent.
AI 1 x 1 Articulation Index *)
AbsC 1 x 8 %
AbsCg 1 x 8 %
Background 1 x 8 Background SPL, dB
C50 nrec x 9 dB (if not D50 is chosen in Preferences)
C80 nrec x 9 dB
D50 nrec x 9 % (if not C50 is chosen in Preferences)
EDT nrec x 8 s
EyrT 1 x 8 s
EyrTg 1 x 8 s
G nrec x 9 dB
LF nrec x 9 %
LFC nrec x 9 %
PI nrec x 8 Privacy Index *)
RASTI nrec x 2 (:,1) is without noise, (:,2) with noise, %
ResidBackground 1 x 8 Residual background SPL, dB
S 1 x 1 Surface area, estimated by rays, m
2
SII nrec x 1 Speech Intelligibility Index *)
SPL nrec x 9 dB
STI nrec x 2 (:,1) is without noise, (:,2) with noise, %
STI_name 1 x 10 STI type name **)
SabT nrec x 8 s
Sact 1 x 1 Surface area, geometrically calculated, m
2
T15 nrec x 8 s
T30 nrec x 8 s
TI_nn nrec x 7 Transmission Indices without noise, %
TI_wn nrec x 7 Transmission Indices with noise, %
Ts nrec x 9 ms
U50 nrec x 9 dB *)
V 1 x 1 Volume, geometrically calculated, m
3

Vact 1 x 1 Volume, calculated by rays, m
3

air_density 1 x 1 kg/m
3
air_dissipation 1 x 8 m
-1

air_humidity 1 x 1 %
air_temperature 1 x 1 C
build 1 x 1 CATT-Acoustic build number: build*100 + subbuild
diffs 1 x 8 Mean scattering coefficient, %
mfp 1 x 8 Mean free path, m
orig_filename 1 x ? Original file-name **)
orig_savetime 1 x 19 Original file save date and time **)
project 1 x ? Project name **)
rec_ids nrec x 1 Receiver ids
1. INTRODUCTION

23
rec_ids_ST ? x 1 Ids of the receivers with Stage Support values
rec_loc nrec x 3 Receiver coordinates, m
soundvelocity 1 x 1 m/s
src_aim 1 x 3 Source aim coordinates, m
src_delay 1 x 1 Source delay, s
src_directivity 1 x ? Source directivity name **)
src_dirindex 1 x 8 Source directivity Index, dB
src_id 1 x 2 Source id **)
src_loc 1 x 3 Source coordinates, m
src_lp1m 1 x 8 Source level at 1m on axis, dB
src_roll 1 x 1 Source roll angle,
version 1 x 19 CATT-Acoustic version **)
*) if the corresponding hidden option is selected
**) strings are stored as character ASCII values, use char(variable) to convert to a
string variable
Note: if a parameter value could not be calculated (say C80 if no sound exists after 80 ms)
the value will be -1000.0 (no parameter will take that value).
Prefix variables in MATLAB output: AC8D1-BD42D-4B048-7856C
See discussion above about prefixing variables with catt_ (option on) or not.
Automatically run a sequence : 9B237-61F2C-499B9-82935
With this option a Sequence-file (.SEQ), given on the command-line to catt32.exe
(enclosed in " " if the path contains spaces) or double-clicked in Explorer, will
automatically run the sequence and after completion close down CATT-Acoustic. The
purpose of this option is to be able to run several independent sequences in batch:
c:\catt\catt32 c:\hall1\full.seq
c:\catt\catt32 c:\hall2\full.seq
c:\catt\catt32 "c:\new hall\full.seq"
Miscellaneous
If the Plot-file Viewer module is open, plot-files created are shown automatically after e.g. a
prediction. If it is closed, the same results are created but the Viewer module first has to be
opened to be able to see created plot-files. After the module is opened select List|Open List-
file and load either PLT_GEO.TXT, PLT_GEO_FULL.TXT, etc. depending on Prediction
combination, or MULTPLT.TXT or POSTPLT.TXT depending on viewing result from the
Source addition or Post-processing module. When the Sequence module is used plot-files are
not shown automatically, even if the View module is open but can be viewed afterwards, see
Section 8.
The progression bar shown in the Processing dialog, while performing e.g. a prediction,
displays the estimated remaining processing time for each processing step. Note that the
image source calculation in Early part detailed ISM is a non-linear process and the estimated
remaining time estimate may fluctuate considerably.
The main application window can be minimized, moved or resized during calculation to allow
e.g. for background calculation as an icon.
When result text-files are created their names show up in a small list-box and can be selected
for viewing. The files are then loaded into CATT-Edit in view-only mode, with some menus
1. INTRODUCTION

24
disabled, so that results are not accidentally altered. Text can still be printed out and copied to
the clipboard. In view-only mode the editor window title displays "CATT-Edit (view)".
The current settings-file name for a module is shown with full path in the left statusbar when
the module is active.
CATT-Acoustic uses the Windows ANSI character set exclusively so if e.g. a GEO-file has
been edited in a DOS editor care must be taken when using upper-ASCII characters. CATT-
Edit has an option to convert from the MS-DOS OEM to the Windows ANSI set if required.
The interface uses the decimal character selected in the Control Panel:Regional settings so
that if e.g. decimal comma is selected it must be used in all edit boxes in the interface and it is
used for all displayed decimal values and for all created results (with the exception of CAD-
files for the AutoCAD export and WRL-files for VRML export that always use decimal point).
Input text-files may use either decimal point or decimal comma independent of the settings in
Control Panel (except CATT-SD0 and CATT-SD1 directivity import-files and HTR-files for
head-tracking that may be comma-delimited and thus only can use decimal point).
All files used by CATT-Acoustic can have long filenames except source directivity files
(*.SD0, *.SD1, *.SD2, *.CF1, *.CF2) that can be max 15 characters and no spaces
(including a sub-folder name and \) plus extension and HRTF libraries and headphone eq
filters (*.DAT) that can be max 40 characters long plus extension.
Dialog Help buttons and F1 give context sensitive help (also if a dialog has no Help button).
CATT32.EXE is registered as the "Open" application in Explorer for CATT-registered files
when double-clicked (Explorer:View|Options... menu). File extensions handled by
CATT32.EXE are:
PRD loads the PRD-file for the Prediction module
PST loads the PST-file for the Post-processing module
PLT loads the PLT-file for viewing in the Viewer module
SEQ loads the SEQ-file for the Sequence processing module
Note: a hidden option allows for an automatic run of a sequence
SD0, SD1, SD2 loads the SDx file for the Directivity module
GEO, LOC, CAD, HTR loads CATT-Edit. Note: Do not assign CATT-Edit for this task.
UNCTT.EXE is registered to automatically load CTT-files. CATTOGL32.EXE is registered to
automatically load OGL-files.
Remaining CATT-registered file-types have to be loaded within a CATT program and are
ignored if double-clicked. If a processing is currently under way a double-click is also ignored.
Because of the way Win32 handles file types (relying only on the extension) it may happen
that an extension used by CATT clashes with an extension used by another software.
Because of the primitive mechanism used by Win32 it is the latest installed program that
controls the file type. If you have any problems with any of the file-types being assigned to
CATT-Acoustic, contact CATT for details on how to change the reference.
Temporary files are created in the folder for temporary files as (if) given by Windows. Big
temp-files are used mostly by the convolver and for WAV- and SIM-file additions, scaling and
calibration. The CATTDATA-folder ANECHOIC stores temporary PPW-files used by the
convolver for speed reasons, these files can be deleted at any time after a completed
convolution.
1. INTRODUCTION

25
1.4 Input/output files overview

Multiple source addition
source combination,
directivity, aim, eq/gain, delay
Prediction
SIM-file addition
source combination, gain, delay
WAV-file addition
source combination, gain, delay

E_ss_rr.ADD
SRC.CMB
Post-processing source eq/gain (on/off)
E_ss_rr.ECH Walker.CAG

MASTER.GEO
REC.LOC
SRC.LOC
E_ss_rr.ECH
*.DAT Surface properties (ABSLIBS)
*.PLT
*.TXT
*.OGL
*.PLT
*.TXT
E_ss_rr_f.SIM
????_rr_f.SIM
*.WAV
*.SCL
*.DAT
*.WAV
*.PLT
*.MAT
*.MLS
HRTFs
(HRTFS)
Geometry,
Sources,
Receivers:
Export files
Anechoic material
(ANECHOIC)
Post-processing module
Headphone eq
(HEADPHONES)

*.DAT
*.SD0,*.SD1,*.SD2,*.CF1,*.CF2 Source directivity
( )
*.WAV
Software convolution

Fig. 1.2 General data flow. E_ss_rr_f.SIM is shorthand for the filename
syntax used (e.g. in E_A0_01_L.SIM and E_A0_01_R.SIM for
binaural responses) where ss is a two-character source id and rr is a
two-character receiver id. CATTDATA-folders are shown in round
brackets.
Description of input and output files created and required by the various modules in CATT-
Acoustic, for reference purposes.
W and R are used to mark if the module writes (W), reads (R) or both writes and reads (W/R)
the file-type.
Small ss and rr denote source (A0..Z9) and receiver (00..99) ids and oct the octave-band
(125, 250, 500, 1K, 2K, 4K, 8K, 16K, sum).
All files except *.TXT, *.TX1, *.TX2, *.SD2, *.GEO, *.LOC, *.WCS, *.HTR, *.WRL,
*.CF1, *.CF2 and *.CAD are in internal CATT binary format. Fig. 1.2 illustrates the general
data flow between modules.
For CATT-Walker also a file Walker.CAG is created along with E_ss_rr.ECH and post-
processing for CATT-Walker created files called name_ss.CWI where name is the name of
the selected CAG-file, for details see Walker.PDF.
1. INTRODUCTION

26
Source directivity module
*.SD0,*.SD1,*.SD2
source directivity library-file(s) in the CATTDATA-folder SD or sub-folders (W/R)
*.CF1,*.CF2
CLF source directivity library-file(s) in the CATTDATA-folder SD or sub-folders (R)
[CLF]
*.COL directivity collection files (W/R)
*.TXT, *.TX1, *.TX2
CATT-Acoustic text file-format for 15 and 10 directivity formats (CATT-SD0 and
CATT-SD1 respectively) (W/R)
*.PLT various result plot-files (W)
*.MRK marker files for source 3D visuals (R)
Surface properties module
*.DAT surface (absorption/diffusion) properties library-file in CATTDATA-folder ABSLIBS
as selected in Preferences (W/R)
*.DAT Creation of a new generic properties library in CATTDATA-folder ABSLIBS (W)
*.TXT CATT-Acoustic extended text library exchange file-format (W/R)
Prediction module
*.PRD settings-files (W/R)
Geometry-related files in a folder chosen to hold the hall data, the "input" folder:
*.GEO geometry-file(s) describing the hall to model (R)
*.LOC receiver location file, source location/data file (R)
*.MRK marker files for non-acoustical visual elements (W/R)
Library data in the CATTDATA-folder SD or sub-folders :
*.SD0,*.SD1,*.SD2,*.CF1,*.CF2
source directivity files (R)
Library data in the CATTDATA-folder ABSLIBS:
*.DAT absorption/diffusion prop. library as selected in Preferences (R)
Various result-files:
*.PLT various result plot-files (W)
1. INTRODUCTION

27
SHADED.OGL a shaded 3D model for the CATT 3D-viewer (W)
PLT.TXT list of the latest result plot-files depending on Prediction functions
selected (W)
E_ss_rr.TXT single receiver result text-file from Full detailed calculation (W)
PARAM_ss.TXT multiple receiver result text-file from Full detailed calculation (W)
PARAM_ssX.TXT multiple receiver result text-file for MS Excel import (W)
*.CMB source combination data for source addition (W)
E_ss_rr.ADD compact echogram results created for source addition (W)
E_ss_rr.ECH compact echogram results created for post-processing (W)
Walker.CAG room geometry for CATT-Walker.
*.CAD intermediate export file format for the AutoCAD interface (W)
*.WRL VRML 2.0 file export of the hall geometry (W)
*.DXF DXF file export of the hall geometry (W)
DEBUG.TXT Data for geometry debug purposes (W);
Master_tree.TXT GEO-file tree for debug (name derived from current Master-file) (W);
Master_RT-estimate.TXT
Interactive RT estimate result-file (W);
Master_stat.TXT Interactive RT estimate result-file (W);
Source addition module
This module writes and reads all data in the folder where the CMB-file is read.
*.CMB source combination data settings-file (W/R)
E_ss_rr.ADD echogram results created by the Prediction module (R)
E_ss_rr.ECH echogram results created for post-processing (W)
E_rr.TXT single receiver multiple source result text-file (W)
E_nn_rr_oct.PLT single receiver multiple source echograms (nn = 01,02,...) (W)
TREND 1, 2, 3 .PLT multiple receiver multiple source result plot-file (W)
PARAM.TXT multiple receiver multiple source result text-file (W)
MULTPLT.TXT list of the latest result plot-files (W)
1. INTRODUCTION

28
Library data in the CATTDATA-folder SD or sub-folders:
*.SD0, *.SD1, *.SD2,*.CF1,*.CF2
source directivity files (R)
Post-processing module
This module writes all results to the folder where the input ECH-file is read. The module can
also perform file conversion between several formats such as SIM, TIM, MAT, WAV, and 16-
bit integer sound-files.
*.PST post-processing settings-file(s)
*.ECH compact echogram results created by the Prediction and the Source addition module
(R)
*.CAG room geometry and other info required for post-processing for CATT-Walker (R)
*.SIM created impulse response data in Lake SIM-format [Lake] (W)
*.CWI created impulse response data for CATT-Walker (W)
*.MLS created impulse response data in MLSSA ASCII format (W)
*.MAT created impulse response data in MATLAB v4 [MATLAB] format (W)
*.HTR head-tracking angle description file for the Lake DSP HeadScape application (only
Huron/CP4 add-on version [Lake]) or with the Walkthrough convolver (R)
*.PLT various result plot-files (W)
POSTPLT.TXT
list of the latest result plot-files (W)
Software convolution:
*.SIM created impulse response data in Lake SIM-format (R)
*.WAV anechoic data (R and plays)
*.WAV processed (convolved) data (W/R and plays)
*.SCL scaling data for relative calibration (R/W)
*.WCS Walkthrough Convolver Scripts (R/W)
Library data in the CATTDATA-folder ANECHOIC:
*.WAV anechoic files for convolution (R)
*.AWI anechoic WAV-file info (R/W)
Library data in the CATTDATA-folder HEADPHONES:
*.DAT headphone equalization filter as selected in Preferences
1. INTRODUCTION

29
Library data in the CATTDATA-folder HRTFS:
*.DAT HRTF library as selected in Preferences
Plot-file viewer module
*.PLT plot-files (W/R)
*.EMF Windows Extended 32-bit Meta-files export (W)
*.BMP Windows Bitmap-files export (W)
*.TXT text-file lists of plot-files (and associated WAV-files) (R/W)
*.WAV WAV-format sound-files (R and plays)
Sequence processing module
This module, in addition to its own settings-files, reads/writes a variety of files according to
which module is being executed in the script. Even if SEQ-files mainly contain text information,
they are in binary format and must not be edited.
*.SEQ sequence script-files (R/W)
1.5 Software overview
CATT-Acoustic is a room acoustic prediction program based on the Image Source Model
(ISM) for early part echogram qualitative detail, Ray-tracing for audience area color mapping
and Randomized Tail-corrected Cone-tracing (RTC) for full detailed calculation enabling
auralization.
The system consists of a 32-bit Windows MDI (Multiple Document Interface) main program, a
customized Notepad-like text editor that communicates with the main program, a stand-alone
3D-viewer based on OpenGL, a stand-alone PLT-viewer, the external DXF2GEO and other
utilities, CATT-Walker, WalkDecim and a set of AutoLISP files for the optionally used Auto-
CAD interface. Additional external modules for real time walkthrough convolution (CATT-
Walker), DXF conversion (DXF2GEO) and some other tasks can be loaded from
File|External CATT Tool. The main program CATT32.EXE integrates prediction, post-
processing for auralization, software convolution, addition of multiple sources, source
directivity management, surface properties library management, sequence (batch) processing,
WAV-file playing, file conversions, plot-file viewing/printing and several other functions.
Hardware requirements
CATT-Acoustic requires an IBM PC compatible equipped with a Pentium processor and
Windows 95, 98, ME, NT 4.0, 2000, XP or Vista. For auralization a soundcard capable of 16-
bit 44.1kHz stereo replay is required.
1. INTRODUCTION

30
Hall geometry and absorption
The hall geometry can have any shape as long as it can be approximated by a maximum of
99,999 planes (plane surfaces) although severely convoluted shapes (such as Lshapes or
worse) will give less good prediction results. This limit is quite arbitrary and can be increased
in the future, if required, but generally better results are not created by a very detailed model.
As the geometry input is made by using a text editor (although other options such as via
DXF2GEO or via AutoCAD or other modeling plugins exist), the input-file format has been
made very forgiving allowing for blank lines and comments and no need to place the data in
fixed columns. Powerful facilities such as symbolic constants, expressions, calls to math
functions, IF-statements, tracing statements, interactive input with data checking, and
hierarchic files for the geometry are incorporated. Rather then just read by the main program
the geometry-files are interpreted.
Overview of the geometry description:
number of corners/nodes in the model (in practice) only limited by available memory
hierarchic geometry-file organization enabling structuring of the geometry:
main hall
balconies
reflectors
extra reflectors
audience
geometry-files can be scaled e.g. to compensate for erroneous drawings or to convert from
imperial to metric units, from mm to m etc.
a geometry-file can:
be defined as an object and then be translated and/or rotated (typically for reflectors)
be defined as an object and be made to duplicate its contents with a new set of
translation/rotation values
mirroring of symmetrical (or nearly symmetrical) parts of a hall
symbolic constants and expressions with calls to math functions can be used to specify
coordinates, translations, rotations and several other values
symbolic string constants
functions for creating model corners that are automatically locked to planes, and for
creating corners as intersections between lines and planes
tools for maintaining a structured model, such as declaring e.g. the x-value of a corner to
be the same as the x-value of another corner, or the use of local corner and plane
numbers in each file.
planes can be sub-divided in any number of sub-planes each with different absorbing/
diffusing properties. By dividing a plane consisting of several different absorbing/diffusing
parts into sub-divisions instead of making one plane definition for each part, the model will
be more logical and the calculation time will decrease.
planes and plane sub-divisions can be concave (i.e. have re-entrant angles) or convex with
number of corners and number of sub-divisions (in practice) only limited by available
memory
plane corners can either be entered ordered clockwise as seen from the back side or from
the front side of reflecting planes (user choice but must be consistent in each GEO-file).
libraries of named absorbing/diffusing surface properties. Number of entries only limited by
available memory.
absorbing/diffusing properties can be specified in several ways:
1. INTRODUCTION

31
as a named library entry (very common materials as entered in the Surface properties
module)
as a named property in a geometry-file (common materials in a certain hall)
by complementing an absorption-only library material with scattering coefficients when
used in a GEO-file
directly in % in a plane definition (not so common materials that perhaps need no
names)
a plane or a plane sub-division can be assigned an automatic frequency dependent
edge diffusion to emulate the diffusing effects of diffraction
frequency dependent default scattering coefficients can be specified.
marker elements or loaded marker-files for non-acoustical visual elements.
Coordinate system
In principle any right-handed coordinate system could have been used, but to use mirroring of
symmetrical parts and for view angles for perspective plots, aiming angles for a source,
reflection incidence angles and head-direction Stage to be understood, the system has to be
as follows, see Fig. 1.3.
Imagine standing on the stage of the hall looking towards the audience:
The x-axis should run from left to right
The y-axis should run towards the audience
The z-axis should run upwards.
z
y
y
x
stage
side view
top view

Fig. 1.3 Hall coordinate system
The origin can be placed anywhere but it is recommended to place it along a hall symmetry
line (to utilize the mirror function), at the stage wall, the stage front, or at the proscenium. If the
hall has no typical stage, model the longest hall dimension as y since many plots are
optimized for a longer y dimension.
SI units are used but since the input data-files can use scale-factors for the coordinates of the
hall model, it is possible to enter everything in any decimal unit. The output, however, always
uses SI units. With the AutoCAD interface and DXF2GEO also imperial units can be used.
Decimal numbers transferred to the CATT GEO-file format will be the same as inside
AutoCAD since scale-factors are used to convert to meter when the files are read.
1. INTRODUCTION

32
Frequency range
All calculations are, or can be, made for eight octave-bands: 125 to 16k Hz. In some cases
calculation is also made for the linear or A-weighted power sum of these eight bands. If no
data is available for 8k and 16k Hz, extrapolation is made from the values at 2k and 4k Hz.
Note: the underlying theory is geometrical acoustics and in most halls the lowest
two octaves will not be well predicted. For small rooms such as control rooms and
studios typically only the upper octaves 1, 2, and 4k Hz will be well predicted (in all
halls 8k and 16k Hz may suffer from lack of proper input data). The Interactive
RT estimation dialog can give some info about a reasonable frequency range for
a certain room model. For a discussion on the limitations refer to [Dalenbck-95].
Source directivity
Source directivity is either modeled by entering or importing horizontal and vertical polar
values for every 15, by importing measured data in a 10 full-space format, via the Common
Loudspeaker Format [CLF], or via the DLL Directivity Interface (DDI) using the Directivity
module. Directivity values can range from -50 dB to +15 dB relative the on-axis value. Number
of directivity-files only limited by available disk space. Text import/export and conversion from
DDI directivities to SD0 and SD1.
Data output
Data output can be requested for any combination of up to 260 sources (A0 to Z9) and up to
100 receivers (00 to 99) and any combination of octave-bands plus the power sum of the
octaves where relevant. Calculation types are indicated (G = Geometry view/check,
Ad = Audience area mapping direct only, Ad+r = Audience area mapping direct +
reflected, E = Early part detailed ISM, F = Full detailed calculation, D = Directivity module,
S = Source addition module, P = Post-processing module, 3D = 3D-viewer):
echograms (ech.) (125 to 16k Hz + sum):
log scale (dB);
discrete reflections EF;
forward integrated ech. EF;
backward integrated ech. EF;
octave-band dependent integration to simulate the ear F;
directional X, Y, Z ech. F;
linear scale (Pa) E:
discrete impulses;
linear scale (Sone) E:
discrete impulses;
exponential octave-band dependent integration to simulate the ear;
vectorgrams F;
sound roses F;
EKgrad, echo disturbance F;
Spectra plots (direct, early, total) F;
1. INTRODUCTION

33
MATLAB results F;
impulse responses P;
transfer functions P;
image source space and number of impulses/second E;
history of reflections showing reflection trace, source and receiver angles E;
absorption coefficient histogram F;
free path histogram F;
plane hit histogram F;
room acoustic parameter overview for all calculated receiver locations F;
room acoustic parameter trend as a function of receiver number F;
RASTI/STI overview and trend FA;
direct sound level coverage (including directivity contours) A;
early sound level coverage in four user selectable time intervals A;
early lateral fractions in four user selectable time intervals A;
source directivity polar plots D;
source directivity 3D "balloons" D;
source directivity contours D;
3D projections of the hall (parallel, natural, and camera) G:
shaded 3D;
colored 3D;
shaded 3D for the standalone OpenGL-based CATT 3D-viewer 3D
reflection edge contours G;
source directivity -3 dB contours;
wire-frame with corner information;
wire-frame with interactive plane information (surface properties and areas, corners,
plane normals);
plan, two sections, and a parallel 3D projection of the hall G;
plan, two sections, and source information G;
room acoustic parameters F:
Direct sound, SPL, Strength (G), RASTI, STI, Deutlichkeit (D-50/C-50), Clarity (C-80),
Center of Gravity Time (Ts), Lateral Energy Fraction (LF,LFC), EDT, Reverberation
Time (Sabine, Eyring, T-15, T-30), Stage Support, U50, AI, PI, SII, IACC etc.;
color mapping of most parameters, also source delays and source group with shortest
delay can be displayed Ad Adr.
spreadsheet export for e.g. MS Excel F Ad Adr.
room acoustic parameters can optionally be displayed normalized with expected values,
according to a theory developed by [Barron-88] (see Prediction module Theory) F;
geometry debug-file (geometry check, plane normals, which planes uses a certain
corner/node, reversed planes etc.) G;
geometry tree-file (the order in which GEO-files are included) (Prediction module);
geometry/absorption statistics (surface used by each material etc.), classical RT G;
1. INTRODUCTION

34
geometry export-files for the AutoCAD interface that enables files made directly in the
CATT format to be imported into AutoCAD (Prediction module);
geometry export-files for VRML 2.0 browsers that enable interactive 3D web-sites including
auralized sound (Prediction module).
geometry export-files to DXF.
geometry export as CATT marker-files (for use as non-acoustical 3D elements or loud-
speaker visuals) G
1.6 How to get started
For the first project it might not seem worth while to use the advanced possibilities of creating
a structured geometry and use named constants and expressions to define corner/node
coordinates etc. This is probably true if one gets everything right the first time and if the hall
design never has to be changed or fine-tuned. Most projects, however, require a lot of fine-
tuning of the design. Often some of these changes can be anticipated and be allowed for by
using named constants (e.g. reflector heights or angles). The extra time spent planning in the
first part of the project will almost certainly pay off in the later part. If only numbers are used it
is very easy to paint oneself into a corner.
For the first project it is recommended to create a very simple hall, such as described in
Section 1.2:
create a rectangular (shoebox-shaped) hall and use named constants for width, depth and
height
add a simple rectangular reflector in a separate file and include it. Define the reflector-file
as an object-file and try translate, rotate and copy it.
By experimenting with these two simple parts (changing constant values and reflector rotation
etc.) the basic knowledge on how to model a hall in CATT-Acoustic is acquired. A more
complex hall takes more time and more planning but the procedure is the same.
1.7 About CATT
A short presentation of me - Bengt-Inge Dalenbck, the program developer - and the company
CATT. I acquired an M.Sc. in electrical engineering 1980 with a thesis in semiconductor
technology, working on a gas sensitive Field Effect Transistor (FET).
I have been involved in acoustics since 1981, the years up to 1989-90 mostly as a part-time
teacher at Dept. of Applied Acoustics at Chalmers University of Technology, Gothenburg,
Sweden, see [Chalmers].
1986 I started an independent company CATT (Computer Aided Theatre Technique) originally
developing theater lighting and decor design CAD software and was until 1996 half-time
occupied at the department and half-time at the company. Since 1988 CATT has concentrated
on software for room acoustics.
1990, I joined the Chalmers Room Acoustics Group for half-time Ph.D. studies [Chalmers].
See the www page for a list of publications.
1995, December, I received a Ph.D. on room acoustic prediction and auralization at Chalmers
[Dalenbck-95b].
A list of main programming projects and developments within CATT:
1. INTRODUCTION

35
1987, CATT-Lighting: 3D CAD-program for theater lighting design (built on ray-tracing).
1987, CATT-Decor: 3D CAD-program for decor design on theater stages aimed to support
CATT-Lighting. With an object library and with hidden line removal.
1988, CATT-Acoustic: Room acoustic simulation using the image source model.
The first three projects were implemented on a Commodore Amiga.
1989, CATT-Acoustic MS-DOS. The lighting and decor design programs are dropped and
the work concentrates on room acoustics and PC-software.
1990, Binaural post-processing of the results from CATT-Acoustic creating binaural
impulse responses to use for audible simulations (so-called auralization). For convolution a
Lake FDP-1 convolution processor was required [Lake].
1990-1994, Various enhancements and upgrades of CATT-Acoustic.
1994, Software convolution enabling auralization using only a PC sound-card. Specialized
hardware is now optional.
1996, June, release of CATT-Acoustic v6 for Windows 3.1.
1996, July, goes from a 50% to a 10% position at Chalmers fully concentrating on CATT.
1996, August, release of CATT-VRoom designed for full frequency-range studio and virtual
reality reverb mainly together with a Lake DSP Huron or CP4 convolution processor.
1997, March, CATT-Acoustic v6.1 with audience area color mapping.
1998, February, release of CATT-Acoustic v7.0 for 32-bit Windows introducing the RTC.
1998, May, addition of a loudspeaker replay option (cross-talk cancellation)
1998, October, v7.1 introducing DDI and array modeling.
1999, October, v7.2 introducing RTC-II and the OpenGL-based CATT 3D-viewer.
2000, The FIReverb Suite, for natural music FIR reverb and multi-channel convolution
(CATT-VRoom is enhanced, renamed to PureVerb and supplemented by the MultiVolver).
2001, The FIReverb Suite 2
nd
Ed., 24- and 32-bit processing, Ambisonic decoder.
2002, February, CATT-Acoustic v8.0 with 8k and 16k Hz support, material colors, visual
markers, walkthrough convolution, 5-channel post-processing.
2002-2005, development of the Common Loudspeaker Format [CLF] together with other
prediction software developers, ETC, and the SynAudCon.
2003, The FIReverb Suite 3
rd
Ed., graphical selection of room and 5-channel mic setups.
2003, February, frequency dependent semi-transparency, ray-, echogram- and map-
animation.
2004, January, 2
nd
order B-format impulse responses.
2004, March, pixel rendering of direct sound.
2005, March, interactive RT estimate using global ray-tracing, GratisVolver free convolver
for WAV-file format impulse responses.
2005, May, CATT-Walker real time walkthrough auralization, support for the Common
Loudspeaker Format [CLF]
2006, January, separate direct sound and direct+reflected sound audience are maps, 3D
audience area maps.
2006, October, noise mapping, mapping speedup, 3
rd
order B-format impulse responses,
Walker Steer SDK for CATT-Walker, GratisWavPlayer a small free player for the WAV-file
format.
2007, April, MATLAB/EXE and script interface for Sequence processing (eg. for parameter
optimization), updated and improved Help in Compile HTML format, mouse plane picking
1. INTRODUCTION

36
in PLT and OGL-viewers. Separation of programs and other read-only files and data
libraries (CATTDATA).
2007, August, optional merging of planes to larger polygons, new printed manual.
CATT can be reached at:


CATT Phone/fax: +46 31 145154
Mariagatan 16A e-mail: info@catt.se
SE-41471 Gothenburg www: http://www.catt.se
SWEDEN

2. PREDICTION MODULE
37
2. PREDICTION MODULE
The Prediction module is the core of CATT-Acoustic and offers three main prediction types:
early reflections based on the Image Source Model with added first-order diffuse reflection,
audience area color mapping (direct sound and direct+reflected sound), and full detailed
calculation that exports data for further processing in the Source addition and Post-processing
modules. In addition direct and reflected sound pixel rendering and interactive ray-tracing
based reverberation time estimates can be performed.
The Prediction module uses settings-files with the extension .PRD that stores all necessary
information to perform a prediction. Several different settings-files can be created for different
purposes.
Settings-files can be used in the Sequence processing module for batch processing, which is
an important feature since room acoustic prediction typically requires long calculation times.
Output/result-files always have the same names independent of actual project. It is only the
output folder that is project-specific. Output-files created by the various settings have the
source id, the receiver id, and the octave-band coded in the file-names as:
ss source id [A0,A1,...,Z8,Z9]
rr receiver id [00,01,...,98,99]
oct octave-band [ 125 250 500 1K 2K 4K 8K 16K SUM ]
Full detailed echogram plot-file names, for example, have the syntax E_ss_rr_oct.PLT.
The filename for source B2 and receiver no. 13 and octave-band 1 kHz will thus be
E_B2_13_1K.PLT.
An overview of all output-files is presented in Section 1.4 and Section 2.4 explains each
prediction output-file in detail.
2.1 Menus
File|New Settings...
Create a new prediction settings-file. If a Template.PRD file exists in the CATTDATA-folder it
will be used as a template for the created settings-file.
File|Open Settings...
Load a new prediction settings-file (.PRD).
File|Save Settings
Save current prediction settings.
File|Save Settings As...
Save current prediction settings under a new name.
2. PREDICTION MODULE
38
File|Export Geometry To|AutoCAD Interface CAD...
Exports to the CATT AutoLISP AutoCAD interface, see Section 10. Current General settings
are used to create the file (input folder, output folder, master-file, plane use, source-file,
receiver-file, used sources and receivers). The CAD-file always uses decimal point and can
also be used for exporting the geometry to other similar software. Note: only coordinates
actually used in the model are exported.
At export, an option is presented to also include a list of the surface properties used, this is not
to be used for exporting to the AutoCAD interface but for other prediction software such as
ODEON. If selected, a section is created with the header %SURFACEPROPERTIES and each
property used is listed with the following syntax:
propname a125 ... a16k [ diftype s125 ... s16k ] [ SEMITRANSP t125 ... t16k ] {R G B}

where:
diftype is L
items in brackets [] are included only if the data type is used.
... means a sequence of coefficients from 125 to 16k Hz (given in % with one
decimal).
R G B means the Red, Green and Blue surface color values [0..255]
File|Export Geometry To|VRML Browser WRL...
Exports to the VRML 2.0 .WRL format that can be used by VRML 2.0 browsers/plug-ins.
VRML stands for Virtual Reality Modeling Language and is a standard file-format for virtual 3D
worlds (WRL is short for world). Once loaded into a VRML browser/viewer the geometry can
be manipulated directly (changing view point, walking around etc.). Each plane is saved as a
primitive to allow for individual coloring in 3D-modeling software e.g. 3ds max (any spaces and
other illegal VRML node name characters are replaced by "_").

2. PREDICTION MODULE
39
Show source and receiver ids VRML export
Includes 01, A0 etc. as 3D text above each receiver (sphere) or source (box).
Show edges VRML export
Outlines all surfaces with visible edges. Experiment to see which setting works best for a
particular model.
{Add comments VRML export
Adds comprehensive commenting to the VRML structure to simplify manual editing. Since the
comments take unnecessary space only switch on when needed.
Add sound templates VRML export
Includes a template for playing sound associated with each source and receiver. The template
can then be edited in the WRL-file and a WAV-file name be added, see below.
Automatic lighting VRML export
Includes ceiling lights where the fixtures are invisible. The intensity is calculated to give a good
lighting in models of all sizes and shapes. If the model still becomes too bright or too dark, the
Pointlight node towards the top of the file can be edited (to decrease the light decrease
the intensity, to increase the light decrease the non-zero attenuation field. If no lighting
is included the exported model needs to be seen with the Headlight switched on in the viewer
or lights have to be added in a VRML editor.
Triangularize planes VRML export
Normally the VRML browser performs the triangularization but it has been discovered that
some VRML editing software (e.g. VRCreator) cannot handle faces with more than four
corners.
Indent node structure VRML export
Indents each successive level in the VRML structure to simplify manual editing. Since the
indentation takes unnecessary space only switch on when needed.
Background (Colors) VRML export
The background "sky" color outside the model.
Simple (Colors) VRML export
Use one color for audience surfaces and one for remaining surfaces.
Audience (Colors) VRML export
For the Simple case: the basic color of audience surfaces (as selected in Audience area
mapping).
Surface (Colors) VRML export
For the Simple case: the basic color of a non-audience surfaces.
2. PREDICTION MODULE
40
As defined (Colors) VRML export
Uses the color assigned to each surface property.
Basic browser operation:
to view locally using an HTML browser Open the WRL-file and, if installed, the browser will
start a VRML browser plug-in that can view WRL-files. VRML browsers sometimes come
included with HTML browsers or can otherwise be downloaded from various sources.
Good places to look is www.w3.org/MarkUp/VRML and www.web3d.org. A WRL-file can
also be added to a home page and be viewed over the network by WRL-aware browsers
(either use very short sound-samples at 22.05 kHz or compressed file-formats for this or
down-load times will be long).
switch off "gravity" and "collision detection" since these are appropriate mostly for walk-
through etc.
each receiver position has its own "Viewpoint" set with the head direction used. A list of
Viewpoints is often placed on a browser menu (normal and/or right mouse button menu).
The source gets its own Viewpoint with the direction of the source aim. If the mouse is
placed over a receiver or source the cursor turns into a hand or similar and if clicked and
held down the view temporarily becomes that of the receiver or source. To have the view
stick use the Viewpoints menu.
auralized sound can be played (if Add sound templates is checked when exporting) by
changing the "url" of each receiver (say 01) from "" to an actually created WAV-file e.g.
"file://c:\wavs\MT_A0_01.wav" i.e. auralized sound for receiver 01 (WRL-files are
plain text-files and can be loaded into an editor: search for "url"). When the Viewpoint is
selected a small white sphere can be seen at the center of the screen (it is placed directly
in the head direction) and if it is clicked the WAV-file is played. Also the source can have a
WAV-file in a similar manner and if the anechoic WAV-file is used it can serve as a
reference to the auralized sound. Remember to perform a relative calibration on all
auralized WAV-files included.
Note: many of the features of the VRML export viewing, plus more features, were later made
available in the CATT 3D-viewer and in a more straightforward and simple to use way.
File|Export Geometry To|CATT Marker MRK...
Exports to a CATT marker-file that then can be loaded as an object in a GEO-file MARKERS
section using LOAD or be used as source directivity visuals. For pure geometry export as a
marker it is most convenient to add the directive NOROOM into the master-file directives
section. With a NOROOM GEO-file the source and receiver files do not have to be created. An
option will be presented to export a combination of planes, plane edges and markers. If planes
are not exported they can be used as reference planes for exported marker objects (e.g. a
floor) while building the geometry. Sub-divided planes are exported as a single plane with the
color of the first sub-division (this export function is intended mainly for markers).
File|Export Geometry To|CLF Cabinet Geometry...
Similar to when exporting to a CATT marker-file for source visuals, a geometry can be
exported as an edge and face list for a CLF text-file geometry [CLF] that can be pasted into a
CLF text-file. This option is of course useful mainly to CLF authors and a benefit is that the
GEO format allows for parametrical modeling of cabinets and allows e.g. for re-use of similar
cabinets with changed measures.
File|Export Geometry To|DXF...
Similar to when exporting to the AutoCAD Interface CAD-format, a geometry can be exported
to DXF. This option is of useful for export to other prediction software or to CAD programs.
The export uses only 3DFACEs, so planes will > 4 corners will be triangulated before export,
2. PREDICTION MODULE
41
sources, source visuals, receivers and markers are not exported. The surface properties are
color-coded using AutoCAD 14 palette and color indices and an accompanying text-file lists
the properties for each material/color (name.DXF gives a text file
name_dxf_surface_properties.TXT). Note: sub-divisions are exported as separate
3DFACEs so if overlapping subdivisions have been used (such as a door and a window in a
full wall) the importing program will have to adjust the handling of such surfaces according to
the method it uses. There may be other changes necessary in the geometry to make it
suitable for the importing program but the bulk of the work should be done.
File|Export Geometry To|Merged Planes GEO-file...
Exports to a new CATT GEO-file were planes have been merged to larger
polygons as far as possible. This option is useful for GEO-files created via the
AutoCAD interface or converted from DXF via DXF2GEO, see section 10. All
planes are saved into a single selected GEO-file where planes that have been
merged are commented out by ;merged and new merged planes are named
merged. Planes that have a near identical plane equation and the same
absorption property are merged so it can be useful to assign properties before
merging. The merged geometry may have a few planes that have errors, or
that could not be merged, and need to be treated manually but the bulk of the
work should be done. After a successful merge, the new file can be
INCLUDEd and a RETURN statement added at the top of the original files
PLANES section. Note: sub-divided planes are never merged (files from the
AutoCAD or interface or converted via DXF have no sub-divided planes).
Utilities|Latest Results List
Each time text-based result-files are created the corresponding filenames appear in a small
list in the main window. This item toggles the list on and off while preserving its contents. To
load a file for viewing in CATT-Edit double-click the filename.
Utilities|Create a New Project...
Displays a dialog prompting for a project name and folder.

Template GEO- and LOC-files are then created ready to be filled in (a sub-folder OUT will be
created to be used as output folder). Also a basic settings-file GEO.PRD and a text-file
PROJECT.TXT (optionally to be used for a project log) is created, see Section 11, Tutorial.
Utilities|Create a GEO-file...
Creates a GEO-file template with selected name. CATT-Edit can also create a GEO-file
template.
Utilities|Copy a GEO-file...
Copies a GEO-file, e.g. from another project where a special kind of reflector was created, to
the project folder under selected name.
2. PREDICTION MODULE
42
Utilities|Backup Project...
Displays a dialog prompting for the backup folder to use and which file-types that are to be
included in the backup.

It is also a good idea to regularly backup the source directivity files in the CATTDATA-folder
SD.
Utilities|Create GEO-file Tree
Creates a text-file displaying all included geometry-files (in the order they were included), the
source- and the receiver-file together with other information useful when planning or de-
bugging complex projects. Current General settings are used to create the file (input folder,
master-file, source-file and receiver-file). The file created has the same name as the master-
file but _tree.TXT is added. The file is immediately after creation loaded into CATT-Edit in
view-only mode.
2. PREDICTION MODULE
43
2.2 Dialogs

The main Prediction dialog controls settings for the combination of actions to be performed
and has an interface to CATT-Edit. When Save and Run is clicked the current PRD settings-
file is saved and the Prediction module performs the actions requested. If warnings are on
(Preferences), the output folder is checked for result-files that may be overwritten.
Independent of Geometry view/check debug settings, as soon as any type of prediction is
requested a check for duplicate plane and corner ids is performed and if found prediction will
not be possible.
The actions checked are independent but it can be useful to always include the Geometry
view/check so that the latest geometry plot-files correspond to the latest results.
The two items Interactive RT estimation and Direct sound pixel rendering are special functions
that will use the General settings options but do not affect the settings-file.
2. PREDICTION MODULE
44
General settings
The General settings dialog controls where to read and write data and which files to use as
well as other global settings e.g. for diffuse reflection.

Project General settings
A project name for reference. Only the first 70 characters are used. The string will appear on
all plots (the first 40 characters) and in all result-files.
Input folder General settings
The project files are always read from this folder: geometry-, source-, and receiver-files. A dot
(.) can be used as shortcut for the folder where the PRD settings-file (at prediction-time) is
located so that a complete project can be moved without changes to the PRD.
Output folder General settings
In this folder all output-files are created, if it does not exist it will be created. To compare two
calculations change output to a new folder (typically a sub-folder to the Input folder):
Input folder
Output folder, hall version 1
Output folder, hall version 2
A dot (.) can be used as shortcut for the folder where the PRD settings-file (at prediction-time)
is located so that a complete project can be moved without changes to the PRD. e.g. .\OUT.
If the output folder does not exist at prediction-time it will be created.
2. PREDICTION MODULE
45
Master-file General settings
Which geometry-file (in the Input folder) to use as a master-file (i.e. root of the geometry-file
tree). The master-file is the file that is read first and may then INCLUDE other files (in the Input
folder) that, in turn, may include further files etc. By having more than one master-file e.g.
including different geometry parts, a geometry version can be changed just by selecting a
different master-file. The master-file is usually named MASTER.GEO (GEO is mandatory
extension). When (Edit) Geo-file on the main dialog is clicked the specified master-file is
initially selected in the Open file dialog.
File (Sound sources) General settings
Selection of the source-file that contains source locations, aims, directivities, delays, source
roll and octave-band levels and more. By having more than one source-file e.g. including
different directivities or aims, a new setup can be tested by selecting a different source-file.
The source-file is usually named SRC.LOC (LOC is mandatory extension). When (Edit)
Source-file on the main dialog is selected the specified source-file is initially selected in the
Open file dialog.
Which to use (Sound sources) General settings
Which of the sources defined in the source-file to use.

If source ids are chosen that do not exist in the source-file it is not trapped until the prediction
is actually run.
Show all General settings/Sources
Displays all selected sources.
(Group) On / Off General settings/Sources
Selects / deselects all sources in a group.
File (Receivers) General settings
Contains receiver locations and optionally individual head directions. By having more than one
receiver-file including different sets of receiver positions, a new setup can be tested by
selecting a different receiver-file. The receiver-file is usually named REC.LOC (LOC is
mandatory extension). When (Edit)Receiver-file on the main dialog is selected the specified
receiver-file is initially selected in the Open file dialog
Which to use (Receivers) General settings
Which subset of the positions defined in the receiver-file to use.
2. PREDICTION MODULE
46

(Group) buttons affect the receivers in view, (All) buttons affect all receivers. If positions are
chosen that do not exist in the receiver-file, it is not trapped until the prediction is actually run.
(Plane use) General settings
Options to use only a subset of planes defined in the
geometry-files. A dialog is displayed allowing for ranges of
plane ids to be included or excluded (to select a single plane
enter the same id in both edit boxes or leave the to box
empty). The Free form edit button enables giving the plane
ids "by hand" instead, e.g. 1 4-9 15 33-40. Any ranges
already in the list-box will be converted to a string and after
editing they will again be listed in the list-box.
This is very useful e.g. for making a clearer view while
creating a complex and/or mirrored model (exclude the
mirrored planes) or to test with/without a particular group of
planes e.g. reflectors. Note: the full geometry is always read
and planes not to be used are excluded after the GEO-files
have been read.

(Head direction) General settings
The head direction is required for lateral energy fraction
measures and for post-processing using the Post-pro-
cessing module. The settings below apply for all receivers
that do not have an individual head-direction as selected in
the receiver-file.

Source looking towards the source. Note that this setting
leads to varying head-directions when multiple
sources are used. In such a case - set head-
direction Fixed pos to the main source, i.e. the
source to be considered as the reference (e.g. the
speaker).
Stage turned in the direction of the negative y-axis - all
receivers (listeners) will have "stiff necks" looking
towards the stage. Note the coordinate system to be
used (Sect. 1.5).
Fixed pos heads turned to the coordinate defined.

A0
22
12
Stage
A0
22
12
A0
22
12
2. PREDICTION MODULE
47


Acoustic environment General settings
Displays a dialog for air absorption, air
temperature, air density and background
noise levels.
Temperature General settings/Acoustic environment
Affects speed of sound, c, and estimated air
absorption, see Theory.
Humidity General settings/Acoustic environment
Affects estimated air absorption, see
Theory.
Density General settings/Acoustic environment
Air density, , affects wave impedance, c.
(Air absorption) General settings/Acoustic environment
Off no air absorption applied. This option is for special purposes.
Estimate air absorption is estimated from air humidity and temperature. See Theory.
User defined the edit button displays a dialog with octave-band scrollbars. These scrollbars
all have different ranges (air absorption is very frequency dependent). The
parameter that is selected is the energy dissipation coefficient, m
b
, see
Theory.
Background noise General settings/Acoustic environment
Displays a dialog with octave-band scroll-bars. Note that background level is actually used
only for STI (included bands, see Preferences), RASTI (only 500 and 2k Hz values) and U50
(available via hidden option, see 1.3). The NCB curve that corresponds to the levels given in:
[ANSI S12.2-1995], Table 1, Balanced noise criterion (NCB) curves. The indicated dBA value
includes the 16k octave.
Without a noise map / Total average is used as a constant background over the room.
With a noise map Residual average is used as a constant residual background over the room
that is power added to individual receiver noise in Full detailed calculation or to a noise map
in Audience area mapping.
Tip: to set a certain NCB value start with low values on all sliders and raise each band until it
goes up to the curve desired.
Note: NCBs are actually curves between 31.5-8k Hz but only the range 125-8k Hz is used.
(Diffuse reflection) General settings
If and what type of diffuse reflection to use.
2. PREDICTION MODULE
48
Off no diffuse reflection at all. This option is for special purposes e.g. to
estimate a given geometry's sensitivity to diffuse reflection but never for
normal calculations.
Surface surface diffusion according to scattering coefficients assigned to each
surface property or via Surface default scattering coefficients.
Surface + edge also includes automatic size and frequency dependent "edge diffusion".
Note: the automatic diffusion calculated from edge area/wavelength ratio
only takes effect for surfaces that have an "*" appended to their material
property (typically reflectors), see Section 2.3 and 2.5.
Surface default default scattering coefficients that will be assigned to all planes that have
not been given specific scattering coefficients. This should normally always
be selected and set to 10% corresponding to flat surfaces that are not
small. See Calculation recommendations, Section 2.5.
Geometry view/check
The Geometry view/check dialog controls settings for checking geometry errors, con-
sistency, and generation of geometry plot- and debug-files. For each plot-file type and
Shaded.OGL any non-acoustical visual markers can optionally be included via the * check-
boxes.


Four views (2D) (Plot-files) Geometry view/check
Four views of the geometry, VIEW4.PLT. Plan, two sections and an auto-scaled parallel wire-
2. PREDICTION MODULE
49
frame 3D projection of the hall. If audience planes are selected in Audience area mapping they
are marked gray in the plot and the total audience area is displayed. The volume is calculated
and displayed (this is only meaningful for closed rooms). If only a geometry check is
performed the volume calculation is less accurate to save time.
Source info (2D) (Plot-files) Geometry view/check
Similar to VIEW4.PLT but the lower right pane gives information of each
source selected (SRCINFO.PLT). For each source one line is shown with a
ring for the source aim (where "front" or "on-axis" is in the directivity
definition) and another line is shown with an arrow defining the "up"
direction according to the optional source "roll" angle (where "up" is in the
directivity definition). From these "left"/"right", "back" and "down" can easily
be worked out.
Shaded (3D)(Plot-files) Geometry view/check
A 3D-projection with shaded surfaces (SHADED.PLT). The shading is viewing-angle
dependent and is made on the reflecting side of each surface thus making it easy to see if a
plane has been reversed or if the model has holes.
Colored (3D)(Plot-files) Geometry view/check
A 3D-projection with colored surfaces (COLORED.PLT). The colors are those assigned to, or
auto-generated, for each surface property.
Source info (3D) (Plot-files) Geometry view/check
A wire-frame 3D-projection where the -3dB contours for selected bands are shown in addition
to source-file data (SRCINFO3D.PLT). The contours of not selected sources are shown gray.
For details on directivity contours, see Section 4.3.
Plane info (3D) (Plot-files) Geometry view/check
A wire-frame 3D-projection with interactive plane, plane corner and other information,
PLINFO.PLT. When stepping through the list of planes their front (reflecting) side should be
colored with the assigned (or auto-generated) color and the back side be black. If the color
appears on the wrong side the plane corner entering order must be reversed. This file is the
major tool for checking the geometry built in the geometry-files.
Corner info (3D) (Plot-files) Geometry view/check
A wire-frame 3D-projection with corner id information, COINFO.PLT.
Refl. info (3D) (Plot-files) Geometry view/check
A wire-frame 3D-projection with interactive reflector edge contours of selected planes, plus
plane and plane corner information, REFLINFO.PLT. Planes are colored with the assigned (or
auto-generated) color on the reflecting side and black on the back side. This is a purely
geometrical construct and any effects of diffusion and/or diffraction has to be considered
separately. Note that no shadows are cast, only reflected edge points are calculated. If more
than one source is used, each plot frame shows reflections from both sources. The edge
contours of not selected planes are shown grey.
(Primary view)(3D) Geometry view/check
The primary view controls which of the 3D-projection methods to use as the primary view. The
3D-projection method can always be changed in the View module but it is practical if the
Up
Front
2. PREDICTION MODULE
50
default setting is appropriate for the particular model.
(Initial view parameters) (3D) Geometry view/check
The 3D-view for 3D and 3DA files can always be changed in the View module but it is practical
if the default settings are appropriate for the particular model. Once a good view has been
selected in the View module it can be copied to the prediction settings using Edit|Copy 3D-
view to PRD.
View distance Geometry view/check/View settings
View distance from the room coordinate system origin.
Lens angle y view/check/View settings
Lens angle (field of view) for Natural
Horizontal view angle y view/check/View settings
-180 to 180 where 0 is a view along the y-axis.
A positive value rotates the view position to the right and a
negative value to the left.


Vertical view angle Geometry view/check/View settings
-90 to 90 where 0 is in the horizontal plane. A positive value gives a view from above and
negative value from below.
Horizontal (X) shift Geometry view/check/View settings
Horizontal translation of the screen image (does not move the view position but only the
screen image). Unit is generic pixels where the full plot window width is 640. Positive values
move the picture to the right while a value of 0 places the rotation center at the window's
horizontal center.
Vertical (Y) shift Geometry view/check/View settings
Vertical translation of the screen image (does not move the view position but only the screen
image). Unit is generic pixels where the full plot window height is 385. Positive values move
the picture down while a value of 0 places the rotation center at the window's vertical center.
(Position) Geometry view/check/Camera settings
Coordinate of camera position.
(Target) iew/check/Camera settings
Coordinate of camera target.
Lens angle view/check/Camera settings
Camera lens angle (field of view).
2. PREDICTION MODULE
51
Shaded.OGL (For 3D-Viewer) Geometry view/check
A file similar to COLORED.PLT is created, SHADED.OGL, for the stand-alone CATT 3D-viewer
(CATTOGL32.EXE) with extended 3D viewing possibilities where also a set of planes can be
selected and used in the various plane selection dialogs such as for Audience area mapping
Audience planes. The OGL-file contains all source and receiver locations as viewpoints. The
viewer is based on OpenGL and is documented separately by its help-file (CATTOGL32.CHM).
Auto load file in viewer (For 3D-Viewer) Geometry view/check
Automatically loads the created file in the viewer (or updates it if it is already loaded).
Include contours (For 3D-Viewer) Geometry view/check
Includes -3, -6 and -9 dB source directivity contours for aiming help in the viewer when using
camera mode and a source viewpoint. For details on directivity contours, see Section 4.3.
(Debug) Geometry view/check
What type of geometry debug to perform while processing the geometry.
Immediate (Debug) Geometry view/check

Checks for major errors and terminates immediately with an error message. The same checks
as for Create file are performed but the program terminates immediately if an error is found.
The "inaccurate corner check" checks for large errors thus will only detect big mistakes. It is
checked that sources and receivers are inside the room. Just like for volume and reversed
normal calculations, this test relies on that the surfaces are modeled correctly. If an open
room is already detected (because an actual open room or due to modeling errors) the test is
not performed. It is not necessary to perform this check once the basic model is ok.
Create file (Debug) Geometry view/check
Creates a text-file DEBUG.TXT that lists all errors found and documents the geometry.
2. PREDICTION MODULE
52

The checks optionally performed are:
check of duplicate corner ids (must be corrected, will block all prediction)
check of duplicate corners (same or nearly same x, y, z but different ids).
check of duplicate plane ids (must be corrected, will block all prediction)
check of duplicate planes (same corners and same normal, must be corrected). Double-
sided surfaces like reflectors use the same plane corners but have opposite normals.
check of inaccurate corners (within a certain accuracy). Note: it is not possible to know
which corner caused the error. If the plane equation is built from one inaccurate corner and
two accurate corners, a fourth accurate corner will seem to be out of the plane. Must be
corrected or rays will be lost and an open room may be declared.
check if planes are coinciding/overlapping (i.e. e.g. a carpet modeled on the floor, use sub-
divisions instead). Overlapping planes will cause volume and mean absorption errors and
"open room".
check if plane edges are penetrating/touching other planes (e.g. a reflector through a wall).
Penetrating planes will confuse the pre-processing of the geometry to speed up ray-tracing
and must be corrected. Touching planes are not critical and is often the result of an
AutoCAD export.
check if corners are used in only one plane ("single-connected corners"). This should never
happen with closed rooms;
check if some planes may be reversed. This check only works for closed rooms and is not
100% reliable since it depends on how the model has been built but serves as a check for
potentially reversed planes. The major tools for checking are the PLINFO.PLT,
SHADED.PLT, COLORED.PLT plot-files and SHADED.OGL;
a list of all corners used and in which planes they are used (sub-division corner ids are not
listed);
a map of all plane ids used
a list of all planes used (sorted by plane id) with a detailed description of each plane: id,
name, type, plane equation, absorption/diffusion properties, sub-divisions, corner ids.
2. PREDICTION MODULE
53
Writing a massive amount of text information to disk takes time. Especially the option for
listing all planes can be switched off to make the DEBUG.TXT file smaller. Apart from the list of
planes option, all options should normally be on but if a lot of errors of one kind are found
switching off some options temporarily will make the debug file faster to write to disk and
simpler to read.
Create .CMB without calculation Geometry view/check
If a source combination (.CMB) file should be created. This can be useful when working with
the Source addition module since geometry plot-files can be created that display source aims
and source combination and at the same time saves a corresponding combination-file that the
Source addition module can read. Filename Name.CMB if Name.LOC is the selected source-
file name under General settings. Note: if source addition is selected in Full detailed
calculation or Early part detailed ISM dialogs a CMB-file is always generated for the current
source-file.
Assume closed model for Sabine RT Geometry view/check
If a model should be considered as closed even if the automatic detection finds it open. Even
if a model looks closed it can be found to be open if the geometry contains too many errors or
is built too inconsistently (overlapping surfaces, reflectors that are not double-sided, warped
planes, see 2.3). By checking this option a volume estimate will still be given in VIEW4.PLT
but enclosed in parenthesis. With a Full detailed calculation, a model is declared open if too
many rays are lost and is not affected by this setting.
Audience area mapping
The Audience area mapping dialogs control the estimation of early SPL and LF and most
parameters (D-50, C-80, RASTI etc.) over a grid covering selected audience-planes. The
mapping is available in two versions: direct sound only (requiring no rays) and direct +
reflected requiring ray-tracing. In both cases source directivity and multiple sources with
delays are taken into account (delays are set in the source-file). The two types of mapping
share the same Audience planes so if one is changed the other follows.
2. PREDICTION MODULE
54


2. PREDICTION MODULE
55
Direct + reflected only:
Number of rays/oct (Settings) Audience area mapping (d + r)
Number of rays to use for coverage mapping. At least 10000 rays must be used for reason-
able mapping. In general, the smaller the Map step the higher the number of rays has to be.
With low ray-numbers the results will be too random to be useful. See also Auto number.
Note: to decrease calculation times for big projects where some sources are considered main
sources while others may just be fill sources, the latter can use less rays. To enable this, a
MAPRAYFACTOR may be given for each source in the source-file. If the factor given will make
the number of rays used be less than 100 it will be selected as 100 (no matter the number of
rays the direct sound is the same). If this option is used it is documented in the plot-file title bar
as /F and is also indicated in MAPSTAT.TXT along each source listed
Auto number (Settings) Audience area mapping (d + r)
Automatic selection of a good/sufficient number of rays. This number is dependent on the
room size, the map step and some other parameters. 1) One number is calculated to give one
direct ray / m
2
at a time corresponding to 80 ms arrival relative the direct sound for all
positions, this gives a good sampling of parameters such as D-50, C-80 and LF. 2) One
number is calculated corresponding to one direct ray / 4 m
2
at the longest hall dimension. 3)
One number is calculated corresponding to one ray / map point at 80 ms relative arrival time.
The highest of 1), 2) and 3) is selected. 2) will only be higher for rooms that are very big so
that there is some chance to get back some detailed reflections from far-away surfaces and 3)
will only be higher for very dense maps. Note: if a MAPRAYFACTOR is used, see above, it is
applied to the auto number.
Adapt rays (Settings) Audience area mapping (d + r)
This option will speed up mapping with a factor 2-20x typical gain is 3-4x. The adaptation is
made by decimating the number of rays used after the 4
th
reflection order and for every 4
th

subsequent order after that. This means that the early reflections are handled the same way
and e.g. strong low order echoes are included, and only the later reflections where, for
measure-calculation, mainly the total energy matters. After testing many rooms the speed-up
seems very safe but it is still advised to use it only on projects where calculation time is a real
problem. If this option is on it is documented in the plot-file title bar as /A and is also indicated
in MAPSTAT.TXT.
Ray truncation-time (Settings) Audience area mapping (d + r)
Truncation time in ms for rays to be traced. The time should correspond to at least 50% of the
reverberation time (measures such as D-50 etc. are not much affected by the energy 30 dB
down from the direct sound). See also Auto time.
Auto time (Settings) Audience area mapping (d + r)
Automatic selection of sufficiently long truncation time based on the estimated classical RT
(only possible if rooms are closed and if classical RT does not differ too much from the actual
one e.g. because of double-sloped decays).
2. PREDICTION MODULE
56
Animate rays (Settings) Audience area mapping (d + r)
Makes it possible to see the actual rays traced and the
emerging SPL map:
with animation on, the calculation time increases
considerably but when switched off (Animate) No nearly
the normal speed is resumed. If no animation at all is
selected the speed difference from previous versions is
negligible.
with Sequence module batch predictions, no animation
is shown independent of selections.
the 3D model can be rotated or zoomed at any time
(also while animating) using the same mouse
commands as in the PLT-viewer and the 3D-viewer
(LMB rotates, Ctrl-LMB or LMB+RMB shifts, RMB
zooms in/out). The rotation is a bit more responsive
when Step is selected but 3D manipulation can be done
while calculating.
the 3D model always uses a parallel perspective.
the 3D view of the hall assumes that the coordinate system used has its origin inside or
close to the actual hall geometry or it can be hard to find the model (use Ctrl-LMB).
when rays are stepped one at a time, the current pictures can be copied and pasted into
e.g. Word. Use (Copy) 3D for the 3D view of the room and (Copy) 2D for the current
echogram or map.
for each source the rays are color-coded Red-Yellow-Green-Magenta-Blue-Black-Light
grey where each color transition covers 10 dB (i.e. 0-10-20-30-40-50-60 dB, below 60 dB
the ray is truncated in the animation). Pure red is the first ray segment assuming an omni
source and if the source is directive the directivity is applied first (the color of a ray from the
rear of a very directive source may thus start out e.g. blue but on-axis always red, see
about color-code for multiple-source mapping below).
direct and 1
st
order rays are drawn with heavy lines to make it easier to follow the rays.
if an animation is stopped (No) the calculation continues and if the animation is resumed
(Yes or Step) the map is updated to include all previous hits.
any of the bands selected for calculation can be animated.
the emerging map represents the total relative SPL where Red corresponds to the
strongest direct sound at a map point.
each ray hit at a map point is highlighted with the current relative ray level.
when direct sound is added with phase the direct sound component is the last to be added
to the map, while with power addition it is the first.
Noise mapping (Settings) Audience area mapping (d + r)
As an alternative to using the constant background noise in General settings/Acoustic
Environment (Env.) in STI and RASTI calculations, a predicted noise map can be used so
that at each map point the predicted noise SPL is used rather than a constant over the room.
2. PREDICTION MODULE
57
The procedure is as follows:
select all sources, noise as well as speech in General settings
if a noise map is used, a new residual background noise in Env. can be added to the
noise sources, it could be e.g. caused by external noise or a well distributed ventilation
system.
in the mapping dialog, check Noise mapping and select which of the sources are to be
considered as noise sources (it may be all of them, see note below).

run the prediction. In a first phase a separate mapping only for the noise sources will be
made creating a noise map (SPL only, PLT-files are named NOISEMAP_oct.PLT and
NOISEMAP_oct_3D.PLT) and directly after a second phase follows using only the speech
sources. When STI and/or RASTI are finally calculated the noise map is used for the
background noise. A special MAPSTAT_NOISEMAP.TXT is created.
in STI and RASTI plot-files the fact that a noise map is used instead of the overall
background noise is indicated .
Note: the noise map prediction will use the selected ray number/truncation time and map
step/height settings but any selected Adding sound with phase and Animate rays will be
switched off during the noise mapping phase (no point with noise sources to include phase).
Often a high density map and many rays are wasted for a noise map but the noise sources
can use a MAPRAYFACTOR < 1.0 to make that part of the calculation faster. It was decided to
force a calculation of the noise and the speech at the same time, rather than to allow a noise
map to be first calculated and stored, since it would then be complicated to ensure that the
two cases are compatible. In some cases, the result of a noise map may be found constant
enough and be entered as a new constant background in Env. and subsequent STI/RASTI
mappings need not use a noise map.
Note: if a pure all-noise SPL estimation case is of interest, such as with factory noise including
only a residual background level and noise sources or to estimate a constant background, all
sources can be selected as noise sources. However, to enable noise mapping at all, STI
and/or RASTI always has to be selected since the primary use is with speech intelligibility (if all
sources are selected to be noise sources phase two is not run so STI/RASTI takes no effect).
RASTI (Plot-files) Audience area mapping (d + r)
Mapping of RASTI with and without background noise (from General settings Env.). The
plot-file created, RASTI.PLT, shows 2D and 3D maps with and without background noise
taken into account. Requires both 500 and 2k octave-bands or sum to be selected. If a 3D box
is checked a separate 3D map file is created with the name
RASTI_with_noise_oct_n_3D.PLT and RASTI_with_noise_oct_n_3D.PLT where
also vertically overlapping audience planes can be seen.
STI (Plot-files) Audience area mapping (d + r)
Mapping of STI with and without background noise (from General settings Env.). The plot-file
created, STI_name.PLT, shows 2D and 3D maps with and without background noise taken
into account. STI type can be selected in Preferences, depending on type chosen the name
part of the file changes. If a 3D box is checked a separate 3D map file is created with the
name STI_with_noise_oct_n_3D.PLT and STI_with_noise_oct_n_3D.PLT where
also vertically overlapping audience planes can be seen.
2. PREDICTION MODULE
58
Both direct and direct+reflected:
Audience planes (Settings) Audience area mapping
Which audience planes to map. If vertically overlapping audience planes are selected, only the
highest located plane is used for 2D maps and fixed 3D maps but 3D rotatable maps show
result on all audience surfaces. The selected audience planes will be marked grey in the
VIEW4.PLT plot-file. To make the map statistics more useful, map points for which the
associated receiver sphere significantly penetrates a wall, pillar or other object, are removed.
The actual limit used is when a wall or an object is closer than half the map step. Note: if
planes that do not exist in the model are selected, it will not be trapped until the mapping
actually is run.
Map step (Settings) Audience area mapping
The map is divided into a rectangular grid where the square grid step can be selected.
Recommended step is 0.5 - 1 m. If some part of a grid point, and thereby a fraction of the
receiver sphere, should come outside the room (very close to a wall e.g.) the received energy
will be too low. Direct sound mapping can have a finer resolution and the receiver is a point in
the middle of each map square. Map points for which the associated receiver sphere
significantly penetrates a wall, pillar or other object are removed. The actual limit used is when
a wall or object is closer than half the map step.
Map height above audience planes (Settings) Audience area mapping
The map points (center of the receiver spheres) are placed at the selected height above the
selected Audience planes. The height should be half a Map step above the audience planes
for normal audience area mapping but for special cases they can be placed higher (e.g.
factory noise mapping or a train station where the floor can be set as the "audience" plane and
the height to e.g. 1.8 m). To prevent receiver spheres to go down through the audience planes
the lowest allowed height is checked to be half a map step.
Add direct sound with phase (Settings) Audience area mapping
With this option selected direct sounds from each of the sound sources are allowed to
interfere (two equal in-phase source contributions give close to +6dB while out-of-phase
signals can be -10 dB down or more over an octave-band). Without this option the direct
sound is, just like higher order reflections, added on a power basis (two equal source
contributions always give +3dB). The interference calculation is based on digital octave-band
filters and not only on the octave-band center frequencies (i.e. the interference is calculated
with full bandwidth but the result is filtered in octave-bands so interference patterns will be
somewhat smoothed but correct for the 1/1-octave band as a whole). Note: the addition with
phase affects LFC values too since a figure-of-8 microphone is simulated for the lateral sound
taking into account the reversed phase of reflections registered at the left side of the
microphone (this is of little importance since LFC is not defined for use with multiple sources).
(Octave-bands) (Settings) Audience area mapping
The mapping is performed only for the octave-bands selected unless sum or A-weighted is
included. For RASTI mapping both 500 and 2k or sum/ A-weighted have to be selected. For
STI mapping all bands included have to be selected (see Preferences). To get a plot for the
sum or the A-weighted sum all bands will have to be calculated even if no plots are requested
for them so that it takes longer to calculate e.g. 1k and sum (calculates for 125, 250, 500, 1k,
2k, 4k, 8k, 16k unless a Preferences option excludes 8k and 16k from the sum/ A-weighted)
than e.g. 1k and 2k (calculates only 1k and 2k). Also note that the Lp1m values affect D-50, C-
80, Ts, etc. for sum/A-weighted while for single-source single-octave maps it has no effect
other than for SPL (this is not a limitation it is just how the measures work they are early/late
sound ratios). For A-weighted results they affect all measures for the sum so that e.g. D-50
2. PREDICTION MODULE
59
will be the A-weighted D-50 and thus having the highest weight for 1k and 2k. A-weighted
result files will wend with _asum .PLT.
(Plot-files) Audience area mapping
Since mapping does not generate any text result-files except mapping statistics, at least one
of these plot options has to be selected.
Contours (Plot-files) Audience area mapping
Which directivity contours to include in the SPLcont plot. For details on directivity contours,
see Section 4.3.
Include source id:s (Plot-files) Audience area mapping
Option to include source ids in map plots (useful to switch off if many sources are used not to
clutter the view).
PARn_oct.PLT (Plot-files) (direct+reflected) Audience area mapping
PARDIRn_oct.PLT (Plot-files) (direct) Audience area mapping
For each one of these optional plot-files the information as well as its location on the plot can
be selected (upper left/right or lower left/right). Some of these options are available only in
direct (d) and some only in direct + reflected (d+r):
None no plot created for the position;
,2D a 2D map is created;
,3D a 3D map is created using a static parallel projection (same as for VIEW4.PLT). In
addition a separate 3D map file is created with the name e.g. D-50_oct_3D.PLT.
In this 3D map also vertically overlapping mapping surfaces can be seen;
SPLdir direct sound. Note that with more than one source the relative time delays are not
seen in this plot.
SPLcont direct sound -3, -6 and or -9 dB contours are plotted on the audience planes (see
Contours group). Note that with more than one source the relative time delays are
not seen in this plot. For details on directivity contours, see Section 4.3.
Closest (d) a color-coded map of the source group with the shortest delay (and that has
direct sound) electrical delays taken into account. To use this function with
separate sources use source numbers A0, B0, C0 instead of A0, A1, A2 etc. Can
be used together with Delay to optimize source delays. The old method with source
group letters instead of colors (< v8.0e) is available via a hidden option.
Delay (d) means that the shortest source delay is displayed (electrical delays taken into
account) and is only meaningful if more than one source is used. Can be used
together with Closest to optimize source delays.
RT (d+r) means a reverberation-time measure that relates well to EDT and is derived
from Ts assuming an exponential decay (RT' = 13.8 Ts), see Theory.
(Mapping time intervals for SPL and LF) (Settings)(Plot-files) Audience area mapping
Early sound coverage mapping can be selected in four different, possibly overlapping, time-
windows. In the created plot-file view, the results for each time-window is placed corre-
sponding to the time-limits in the dialog. Note: times are relative to arrival of the direct sound.
2. PREDICTION MODULE
60
SPL (Mapping time intervals for SPL and LF) (Settings)(Plot-files) Audience area mapping
Mapping of sound pressure level (creates SPL_oct.PLT and SPLDIR_oct.PLT ) in each
selected time interval. The Scales settings for SPL affects the display scale. Tip: to map the
sound that arrives first set one of the time interval to 0 - 0.1 ms. If a 3D box is checked a
separate 3D map file is created with the name SPL_oct_n_3D.PLT (n is 1..4) where also
vertically overlapping audience planes can be seen.
LF (Mapping time intervals for SPL and LF) (Settings)(Plot-files) Audience area mapping
Mapping of LF (creates LF_oct.PLT and LFDIR_oct.PLT ) in each time interval (i.e. the
fraction of lateral to total incidence). For the lateral fraction the head-direction used is
according to head-direction chosen in General settings. If a 3D box is checked a separate 3D
map file is created with the name LF_oct_n_3D.PLT and LFDIR_oct_n_3D.PLT (n is
1..4) where also vertically overlapping audience planes can be seen.
Scales... (Plot-files) Audience area mapping

Auto spans the color palette as much as possible but fixed settings may sometimes be pre-
ferred so that comparisons between two calculation cases can be made. If the actual max/min
values encountered are higher/lower than a selected fixed range, the max/min markers are
drawn slightly above/below the color scale to indicate saturation. Note: the scale and the color
palette can be changed in the View module.
Early part detailed ISM
The Early part detailed ISM dialog controls image source and early diffuse reflection settings
and the type of output data to be generated for detailed qualitative reflection analysis of the
early part of the echogram. Direct sound and specular reflections are colored blue, first order
diffuse reflections are colored red.
2. PREDICTION MODULE
61

Specular refl. order (Settings) Early part detailed ISM
Max specular reflection order (0..9). Selecting 0 will give direct sound only.
Diffuse refl. order (Settings) Early part detailed ISM
Max diffuse reflection order (0..1) but not higher than the specular order.
I.S. truncation time (Settings) Early part detailed ISM
Max impulse arrival-time for the receiver located the shortest distance from the main source.
Echogram (Plot-files) Early part detailed ISM
(I_ss_rr_oct.PLT). The type of echogram can also be selected.
(Plot-type) Early part detailed ISM/Echogram
Pa-scale displays the octave-band echogram in Pa
simply as the square root of the rms pressure
squared (which is the primary quantity
calculated) times 1.414. This plot will always
scale the values to set the first reflection at the
Pa-axis maximum (otherwise the weaker
reflections would be invisible).
Sone-scale + ear-integrated

the Sone scale plot attempts to emulate how
the ear interprets the echogram, see Section
2.5. The unit will be Sone (roughly).
Time-const Early p
Time-constant for ear integration/smoothing. Default values
can be selected in Preferences. Note: for "sum" echograms
the 1k Hz value is used.
2. PREDICTION MODULE
62
dB-scale displays the echogram in dB where backward and forward integrated curves
are optional. Note: since the late part is not calculated the echogram is
incomplete and only the first part of the backward integrated decay is useful.
Show first-order surface ids Early part detailed ISM/Echogram
Displays the plane/surface ids at the top of the bars representing first-order reflections.
Refl. history (Plot-files) Early part detailed ISM
Interactive display of reflection traces, echogram, source exit and receiver incidence angles
(H_ss_rr_oct.PLT). View angles for the initial parallel 3D-projection used in the reflection
trace view can be selected (can be changed in the View module). Note: a Preferences option
can be selected to instead create a 2DA file so that complex halls can be zoomed (but not
rotated). The rays shown are colored according to reflection order: direct = black, 1
st
= red,
2
nd
= blue, 3
rd
= green, 4
th
= yellow, 5
th
= pink, 6
th
= turquoise, 7
th
= light blue.
I.S. space (Plot-files) Early part detailed ISM
Shows calculated image sources (S_ss_rr_oct.PLT). A reflection growth graph is shown
comparing the growth in the early compared to the late part using classical theory. The
reflection growth plot is only meaningful with closed rooms.
(Octave-bands)(Plot-files) Early part detailed ISM
Which octave-bands to generate plot-files for.
Post-processing (E_ss_rr.ECH) (Save (special-case) data for) Early part detailed ISM
Creates files for use with the Post-processing module, see Section 7. Filenames
E_ss_rr.ECH. This saves only early reflections and should be used only for study of echoes
in e.g. a stadium that is open and contains no reverberation such as in a room. To use Full
detailed calculation may require too many rays to be reasonable to catch echoes coming from
a distance of 150 m. On the other hand, image source echoes are likely to be exaggerated for
reflection orders > 1 since no scattering is applied and should be taken only as an indication of
an echo risk and the reflection path and surface sizes must be carefully examined to see if a
strong echo actually would be produced in reality.
Source addition (E_ss_rr.ADD) (Save (special-case) data for) Early part detailed ISM
Creates files for use with the Source addition module as described in Section 6. Filenames
E_ss_rr.ADD for echogram data and name.CMB for source-combination data (where
name.LOC is the current source-file name). Only early reflections are saved, see note above
on Post-processing.
2. PREDICTION MODULE
63
Full detailed calculation

The Full detailed calculation dialog controls the settings for the randomized tail-corrected
cone-tracing (RTC and an optional variant with ray-tracing for the late part). For a method
description, see 2.5 Theory. Direct sound, first order specular and diffuse reflections and
second order specular reflections are handled separately to be correct also for low ray/cone-
numbers. A separate ray/cone-tracing is performed for each octave-band (due to frequency-
dependent diffuse reflection) and all bands are always calculated. In addition to the numerical
measures that can be selected for display below (D-50 etc.), the Stage support parameters
(STearly, STlate, STtotal) [Gade-92] are calculated for any receivers that are placed at 1 m
(1 cm) and at 1 m ( 1 cm) height above the closest surface below the source. The ST
results are shown only in output text-files as the last item.
Number of rays/octave (Settings) Full detailed calculation
At least 5000 rays must be used for good results. With low ray-numbers the results will be too
random to be useful although 1000 rays most often gives reasonable results for quick tests.
See also Auto number. The more rays that are used the longer the early part of the echogram
becomes (the part post-processed as is for auralization), see Theory section. While
calculating, the estimated remaining time for all selected sources is shown.
Auto number (Settings) Full detailed calculation
Automatic selection of a good/sufficient number of rays. This number is dependent on the
2. PREDICTION MODULE
64
room size and some other parameters: 1) One number is calculated to give one direct ray / m
2

at a time corresponding to 80 ms arrival relative the direct sound for all positions. This give a
good sampling of parameters such as D-50, C-80 and LF. 2) One number is calculated
corresponding to one ray / 4 m
2
at the longest hall dimension. The highest of 1) and 2) is
selected. 2) will only be higher for rooms that are very big so that there is some chance to get
back some detailed reflections from far-away surfaces.
Ray truncation time (Settings) Full detailed calculation
Truncation time in ms for rays to be traced. It is recommended to let rays continue down to
-60 dB (i.e. to set ray truncation time approximately equal to the reverberation time) so that the
T-30 measure can be well estimated. See also Auto time.
Auto time (Settings) Full detailed calculation
Automatic selection of sufficiently long truncation time based on the estimated classical RT
(only possible if rooms are closed and if classical RT does not differ too much from the one
estimated by the RTC e.g. because of non-exponential decays).
Late part ray-trace (instead of RTC) for special cases (Settings) Full detailed calculation
Uses an algorithm option better suited for coupled rooms and other unusual cases, see
Theory. The [?] button gives a brief explanation about the cases that can benefit from using
this method.
Include parameters normalized to expected values (Settings) Full detailed calculation
Display some room acoustic parameters normalized with expected values according to a
theory developed by M. Barron [Barron-88] in addition to absolute values, see Theory.
Create one text-file/receiver (Settings) Full detailed calculation
Generation of one text-file per receiver position (E_ss_rr.TXT).
Animate rays (Settings) Full detailed calculation
Makes it possible to see the actual rays traced and the
emerging echogram:
with animation on, the calculation time increases con-
siderably but when switched off (No) nearly the normal
speed is resumed. If no animation at all is selected the
speed difference from previous versions is negligible.
with Sequence module batch predictions, no animation
is shown independent of selections.
the 3D model can be rotated or zoomed at any time
(also while animating) using the same mouse
commands as in the PLT-viewer and the 3D-viewer
(LMB rotates, Ctrl-LMB or LMB+RMB shifts, RMB
zooms in/out). The rotation is a bit more responsive
when Step is selected but 3D manipulation can be done
while calculating.
the 3D model always uses a parallel perspective.
the 3D view of the hall assumes that the coordinate system used has its origin inside or
2. PREDICTION MODULE
65
close to the actual hall geometry or it can be hard to find the model (use Ctrl-LMB).
when rays are stepped one at a time, the current pictures can be copied and pasted into
e.g. Word. Use (Copy) 3D for the 3D view of the room and (Copy) 2D for the current echo-
gram or map.
for each source the rays are color-coded Red-Yellow-Green-Magenta-Blue-Black-Light
grey where each color transition covers 10 dB (i.e. 0-10-20-30-40-50-60 dB, below 60 db
the ray is truncated in the animation). Pure red corresponds to the strongest direct sound
for each source at the receiver
direct and 1
st
order rays are drawn with heavy lines to make it easier to follow the rays.
if an animation is stopped (No) the calculation continues and if the animation is resumed
(Yes or Step) the echogram is updated to include all previous hits.
only one selected receiver's echogram at one selected octave-band is animated (but all
bands are calculated as usual).
the emerging echogram curve is drawn in blue and starts with the sum of the direct sound,
all 1st and 2nd order specular reflections, and 1st order diffuse reflections (calculated with-
out rays). The remaining reflections created by each ray are then added (drawn as red
bars) while showing the continuously growing full echogram.
Echograms (For each receiver) (Plot-files) Full detailed calculation
Creates plot-files (E_ss_rr_oct.PLT) with calculated echograms, all estimated major
parameters and a variety of other data, see section 2.4. For what is considered to be the "early
part", see Theory. Note: Even if this option is off, the data can always be read in
PARAM_ss.TXT as an overview for all used positions.
Echogram smoothing filter (For each receiver)(Plot-files) Full detailed calculation
Filter type and octave-band dependent time-constant for the early part smoothed responses.
The filter acts on the p
2
response and a small symbolic filter-function picture is shown on the
E_ss_rr_oct.PLT file. Default time-constant values can be selected in Preferences. Note:
for "sum" echograms the 1k Hz value is used.
The filter types are:
None No smoothing filter.
Exponent. The early echogram is smoothed by an exponential filter: with the selected time-
constant.
Rectang. The early echogram is smoothed by a rectangular filter with width same as the
selected time-constant.
Triang. The early echogram is smoothed by a triangular filter with width same as the
selected time-constant.
(Echogram/Sound Rose/Vectorgram bands)(For each)(Plot-files) Full detailed calculation
Selection of which octave-bands to create echogram plot-files for (E_ss_rr_oct.PLT),
sound roses (R_ss_rr_oct.PLT) and vectorgrams (V_ss_rr_oct.PLT). Note: even if e.g.
only 1 kHz is selected all bands are always calculated.
2. PREDICTION MODULE
66
Decays (For each receiver)(Plot-files) Full detailed calculation
Creates plot-files (E_ss_rr_INT.PLT) with backward integrated decays for all eight octave-
bands.
Sound Roses (For each receiver)(Plot-files) Full detailed calculation
A plot option similar to that offered by the Early part detailed ISM history plot (plots like these
are sometimes called "hedgehogs"). With this option selected six different (possibly over-
lapping) time-ranges can be chosen.

For each of these ranges a display of incidence angles will be created in a plot-file with the
name syntax R_ss_rr_oct.PLT (R for Rose). This type of plot can be seen as a com-
plement to the directional early echogram graphs since it also can indicate the incidence at
later times.
Vectorgram (For each receiver)(Plot-files) Full detailed calculation
An alternative way to display an echogram including reflection incidence direction, name
syntax V_ss_rr_oct.PLT. Just like a normal echogram there is a time axis and the direct
sound is placed at time zero. Reflection strength in dB is the length of each colored line.
Reflection incidence direction is coded as the angle of each line (the head direction is along
the time axis, if looking towards the source the direct sound is flat forward along the axis).
Color change at selected time intervals to give a depth cue. Direct sound and 1
st
order
specular reflections are drawn with thick lines. By viewing the vectorgram from different
directions different aspects can be studied. For a background to vectorgrams see [Pickover].

Note: the selected Max plot-time can not be longer than the early part.
EKgrad (For each receiver)(Plot-files) Full detailed calculation
Option for an echo-disturbance criterion according to [Dietsch&Kraak-86], name syntax
E_ss_rr_EKgrad.PLT. The created graphs show estimated 10% and 50% echo-
disturbance for speech (red) and music (blue) overlaid on the echogram for each octave
(grey), for details see, see Theory. Optionally, EKgrad for speech only, music only or speech
and music can be calculated.
2. PREDICTION MODULE
67

(Global statistics)(Plot-files) Full detailed calculation
Various statistics based on the results for all used receivers.
Absorption (Global statistics)(Plot-files) Full detailed calculation
Absorption coefficient histograms, ABS_ss.PLT (125Hz to 16k Hz on one plot).
Free Paths (Global statistics)(Plot-files) Full detailed calculation
Free path histograms, PATH_ss.PLT (125Hz to 16kHz on one plot).
Wall hits (Global statistics)(Plot-files ) Full detailed calculation
Wall hit statistics, HITS_ss.PLT.
RT overview (Global statistics)(Plot-files) Full detailed calculation
Graphs of estimated reverberation times, mean absorption coefficients, rays lost/absorbed
and other statistical data (RT_ss.PLT). An option to include a reference or target RT curve is
given. Note: the Ref RT can be given with two decimals but that does not mean that prediction
accuracy is two decimals.
(Overview)(Plot-files ) Full detailed calculation
Various plot-files showing results for all receivers either as graphs or numbers placed over a
hall plan. Overview plot-files are created only if more than one receiver is used.
Parameter map (Over all receivers (if > 1))(Plot-files ) Full detailed calculation
Acoustic parameter overview plot-file, PARAMn_ss.PLT (n = 1,2,3). Which parameters to plot
for all receiver positions can be selected. The plot will be with four plans of the hall and four or
less parameters on one page. The abbreviations are the same as are used in the text result-
files, see Section 2.4.

2. PREDICTION MODULE
68
Parameter trend (Over all receivers (if > 1))(Plot-files ) Full detailed calculation
Acoustic parameter overview plot-file, TRENDn_ss.PLT (n = 1,2,3). Parameters: see above.

Normalized trend (Over all receivers (if > 1))(Plot-files ) Full detailed calculation
Similar to trend but with normalized values (if Include parameters normalized to expected
values is on). The following parameters are shown: D-50, C-80, G, SPL. Filename
NTREND_ss.PLT. For a background to normalized parameters see Theory.
RASTI (Over all receivers (if > 1))(Plot-files) Full detailed calculation
Graphs of RASTI values, 500Hz/2kHz average D-50 (Deutlichkeit), and 500Hz/2kHz SPL
(RASTI is built from these two octaves). Filename RASTI_ss.PLT. Note: RASTI is always
calculated (even if this plot option is not selected or no echogram plots for 500 Hz and 2 kHz
are requested) and can always be found in PARAM_ss.PLT.
STI (Over all receivers (if > 1))(Plot-files) Full detailed calculation
Graphs of STI and octave band TI (Transmission Index) with and without background noise
taken into account. The STI type or octave band weight values used can be selected in
Preferences, see Section 1.3. Filename STI_ss.PLT. Note: STI is always calculated (even if
this plot option is not selected or no echogram plots for all bands used in STI are requested)
and can always be found in PARAM_ss.PLT.
SPL spectra (Plot-files) Full detailed calculation
An optional plot SPECTRA_ss.PLT plots the SPL octave-band spectra for direct sound, first
50 ms and total as an aid in overall system eq and coverage. Spectra for all receivers are
shown in light grey and each receivers data is as plot frame (in a 2DA plot-file) also indicating
a line from the source to the receiver (dashed if there is no direct sound). A reference or target
spectrum can be given for reference (plotted as rings with a 1 dB radius).
Post-processing (E_ss_rr.ECH) (Save data for) Full detailed calculation
Creates files for use with the Post-processing module to create auralization, see Section 7.
Filenames E_ss_rr.ECH. In the full software version, a file called Walker.CAG is created
that can later be used by CATT-Walker.
Source addition (E_ss_rr.ADD) (Save data for) Full detailed calculation
Creates files for use with the Source addition module as described in Section 6. Filenames
E_ss_rr.ADD for echogram data and name.CMB for source-combination data (where
name.LOC is the current source-file).
2. PREDICTION MODULE
69
Interactive RT estimate
For this function the geometry is read according to the current prediction General settings
and a dialog and a dialog where the Sabine and Eyring RT values can interactively be
evaluated based on surface property changes, in addition a quick global ray-tracing can be
performed.

By changing a property assigned to a plane or sub-plane the classical RTs are immediately re-
calculated along with the mean absorption coefficient. If the Surface properties module is open
double-clicking in the property list automatically changes the selected plane's property in the
Interactive RT estimate dialog and updates the RT estimates. By clicking the button with the
current property name (SOMEWOOD above) one of the GEO-defined ABS properties (as well
as the predefined ones) can be selected from a list. Planes that have been altered have their
names colored differently and the change can be Undone. After OK is pressed a text-file is
optionally created listing the changes and the resulting RTs. This file can be used when editing
the GEO-files to implement the changes selected. Note: the Eyring RT estimated here is not
exactly corresponding to the EyrT and EyrTg measures shown after Full detailed calculation.
EyrT and EyrTg both use the mean free path estimated by the rays rather than 4V/S. EyrT
uses the mean absorption coefficient estimated by the rays while EyrTg uses the classical
area-weighted coefficient.
2. PREDICTION MODULE
70
Sort order (Plane list) Interactive RT estimate
The list of planes in the model can be sorted in ascending order according to:
Plane id plane ids (sub-sorted on sub-division names)
Plane name plane name (sub-sorted on sub-division names)
Area plane/sub-division area
Key name absorption property name
Abs. 125&250 absorption coefficients in the 125 and 250 Hz bands
Abs. 500&1k 500 and 1k bands
Abs. 2k&4k 2k and 4k bands
Abs. 125-4k 125 to 4k bands (overall absorption)
Abs. area 125&250 absorption area in the 125 and 250 Hz bands (mSabine)
Abs. area 500&1k 500 and 1k bands
Abs. area 2k&4k 2k and 4k bands
Abs. area 125-4k 125 to 4k bands (overall absorption area)
Save statistics Interactive RT estimate
Creates a file listing all used absorption properties sorted after the most used material
together with their total areas and relative absorption area (the Used column lists how many
surfaces uses the property).

Settings = C:\CATTDOCS\v8\Example\Catt.PRD
PROJECT = v8.0 Manual Example Hall
MASTER = MASTER.GEO

The following planes are changed:
20 stage wall from SOMEWOOD to BRICK50

The absorption is used as follows:
-----------------------------------------------------------------------------------
Relative absorption area [%]
Key name Area [m] Area [%] < 125 250 500 1k 2k 4k 8k 16k> Used
-----------------------------------------------------------------------------------
SOMEWOOD 1859.0 61.6 < 54.7 39.3 28.1 22.6 16.6 12.5 7.1 2.3> 13
AUD 596.1 19.7 < 30.7 44.5 54.7 58.0 60.2 60.0 60.5 65.3> 5
ABSORBER 272.0 9.0 < 8.0 11.5 13.7 16.5 20.9 25.6 31.0 31.5> 5
DIFFUSOR 216.0 7.2 < 6.4 4.6 3.3 2.6 1.9 1.4 0.8 0.3> 1
BRICK50 75.9 2.5 < 0.2 0.2 0.3 0.3 0.4 0.5 0.6 0.6> 1
-----------------------------------------------------------------------------------
3019.1
Start trace (RT estimate) Interactive RT estimate
Starts a global ray-tracing that continuously updates a global T-30 estimate. The benefit is that
the effect of diffuse reflection (or rather lack there of) can be seen already before using Full
detailed calculation. If the room is non-mixing with uneven absorption distribution, T-30 will be
longer than the Sabine and Eyring values. Since this is a global ray-trace the resulting T-30 for
diffusion-sensitive cases is slightly lower than that estimated at single receiver positions by
Full detailed but gives in principle the same result as an average over many receivers. The
ray-tracing is always performed using an omni source and rays are continuously sent out
uniformly from one of the sources defined (which one does not really matter for a global ray-
trace unless the room shape is very special and a global ray-trace is of less value anyway).
Every 100 rays per octave T-30 is estimated and updated and gradually goes toward a stable
curve, if the curve does not stabilize it indicates that that the model has estimation problems.
After 3000 rays per octave the ray-tracing is automatically stopped (a global ray-tracing can
get by with fewer rays than when receivers have to be hit). The ray-tracing can also be
stopped before that point by pressing STOP tracing or by changing an absorption value (the
2. PREDICTION MODULE
71
ray-tracing then has to be restarted). The T-30 results should not be over-interpreted if the
room has unusual features such as coupled volumes and is mainly to be seen as a way to
faster find good settings for a longer Full detailed calculation and a more realistic "what if" RT
estimates than what only Sabine and Eyring can offer.
Copy graphs (RT estimate) Interactive RT estimate
Copies the RT graphs to the clipboard for pasting into a document.
Sabine (RT estimate) Interactive RT estimate
The estimated Sabine RT including air absorption as selected in General settings. See note
below.
Eyring (RT estimate) Interactive RT estimate
The estimated Eyring RT including air absorption as selected in General settings. See note
below.
Undo Interactive RT estimate
Undo the changes on the current plane (sets the initial property).
Undo all Interactive RT estimate
Undo all changes and revert to initial properties.
<Abs> Interactive RT estimate
The estimated classical area-weighted mean absorption coefficient (AbsCg). For small values
of <Abs> the Eyring RT approaches the Sabine RT.
<Free path> Interactive RT estimate
The estimated classical mean free path 4V/S (V is estimated volume and S is estimated
surface area).
Volume Interactive RT estimate
The estimated hall volume (V). In some cases when the volume cannot be estimated, a
manual entry can be made and this text box is changed to an edit-box, press the revealed
Update button after volume entry.
Schrder freq. Interactive RT estimate
To aid in estimating from which band geometrical acoustics (GA) may be valid, the so called
Schrder frequency [Kuttruff-80] is calculated:
f
s
= 2000 V T
where T is taken as the average of the RT at 125 and 250 Hz (initially the Sabine RT but if
tracing is made T-30 is used instead) and V is room volume. However, f
s
itself gives a much
too low estimate of the GA limit so an empirical 4f
s
is used instead, see below.
-> Geom. acoustic estimated from band Interactive RT estimate Interactive RT estimate
An estimate of from which octave-band geometrical acoustics (GA) may be valid based on an
2. PREDICTION MODULE
72
empirical 4f
s
where f
s
is the Schrder frequency, see above. The resulting band matches well
the general experience from modeling small and large rooms but can still only be seen as a
rough guideline. The frequency limit of GA is not only dependent on the modal density and
overlap as f
s
indicates but as well on surface sizes. If the results are saved (OK button) f
s
and
estimated GA limit are also given in the result text-file.
Update Interactive RT estimate
Updates the RT estimate after a manually entered volume (only if the room is not considered
consistently closed)
Note: Sabine or Eyring RT estimates are only valid in rooms that either have "mixing" shapes,
very even absorption distribution or that have significant diffusion. With a Full detailed
calculation the validity of the Sabine and Eyring estimate can be seen (if the T-30 values are
close to the Sabine values, a considerable amount of time can be saved by first using the
Interactive RT estimate calculation). Note also that the geometry must be correctly modeled to
give accurate enough volume and surface area estimates and it must not be judged to be an
open model, see Section 2.1
Pixel rendering
For this function the geometry is read according to the current prediction General settings
and a dialog with a room geometry 3D wire-frame is shown.

The direct sound rendering is in principle the same as the Direct sound only Audience area
mapping but mapping is made directly on all surfaces and since only the direct sound is
traced, and no vector graphics results are created, it can be implemented differently. For
example, it would be impossible to map D-50 or C-80 in a similar way since then an infinite
number or rays would be required. Semi-transparency is taken into account in this view as
long as the sound does not have to pass through more than one semi-transparent surface.
To rotate, zoom and shift the model the same mouse commands as for 3D PLT-files and the
3D-viewer are used, the dialog can also be resized (grab a dialog edge, the initial size is the
smallest allowed). As soon as a new 3D view, window size or source combination is selected
2. PREDICTION MODULE
73
a rendered bitmap is replaced by a wire-frame. The idea is that interesting views are to be
copied to say a Word document using the Copy button. The reason for this is that since this is
pixel rendering, and not vector graphics like the 3D PLT-files, the resolution will anyway not be
higher than shown in the view if it were to be printed on a high-res printer, this is similar to the
OpenGL 3D-viewer that also uses is a pixel rendering technique.
Model (Render) Pixel rendering
Renders all model surfaces.
Aud. (Render) Pixel rendering
For cases when rendering of all surfaces is not interesting, mapping on only the fictive
audience surfaces can be made and can be considerably faster (audience planes and
mapping height are taken from Audience area mapping with direct sound only). Fictive
audience surfaces are outlined with dotted black lines to indicate that they are not an actual
part of the model geometry. Note: since a fictive audience plane has no absorption, the Refl.
sound button is disabled if the Aud. button is enabled.
Geometry (Render) Pixel rendering
The current view is rendered on a pixel by pixel basis using a slight incidence dependent color
shading as if a light came from the viewing direction. This is a simple rendering that is fast for
most geometries and its main purpose is to check the model for errors. This rendering uses
the same equations to solve ray/plane intersections as are used in ray- and cone-tracing so if
planes are warped and similar an error in rendering should show up also here (the
Colored.PLT plot-file uses a flat shading technique that does not use rays so errors do not
show up in the same way). Calculation time: this rendering uses a single main stage and the
time depends on the complexity of the room and how many pixels that need to be rendered
(window size and how much of that window the model occupies)
Direct (Sound)(Render) Pixel rendering
The current view is rendered where each visible wall pixel is colored according to the SPL of
the sum of the direct sound of all sources that can reach that point on the wall. A subset of
sources defined in General settings can be selected by the Sources button. Points that no
source can reach are colored black indicating direct sound shadow-zones. Very weak sounds
that are at or below the lowest scale value are colored dark blue and can thus be distinguished
from no direct sound at all. Calculation time with power addition: this rendering uses two
main stages, "rendering" and source:addition". The time depends on the number of non-
empty pixels, the room complexity, the number of sources and source types (SD2 arrays
generally takes more time). Calculation time with interference: this rendering uses three
main stages. The first two are near identical to power addition but a third stage is required
calculating the interference, this last stage depends on the number of pixels visible to at least
one source, and number of sources only.
Reflected (Sound)(Render) Pixel rendering
this is identical to Direct but instead of the sound that hits a wall point, the sound that is
reflected off that wall point is displayed, i.e. the incident sum of sound multiplied with (1-). If
the surface is semi-transparent the factor is instead (1 - )(1 - ). Calculation time: same as
for direct sound.
(Max, dB)(Sound)(Render) Pixel rendering
The scale Max can be chosen (will be rounded upward in 5 dB steps), if the max value at any
visible pixel is higher, a black line is drawn slightly above the scale, if the actual max
encountered is lower than the scale max it is indicated by a white line across the scale, the
2. PREDICTION MODULE
74
lowest value is indicated in the same way at the lower end. If the ? button is clicked a quick
estimate of the max SPL in the current view is performed. The resulting value cannot be
guaranteed to be the absolute max since it is calculated from a coarse map but if not, the
actual max from the latest action is indicated numerically (to the right of the chose Max) so for
the next run a better max can be selected. Cases where the estimated max may not work is
e.g. when a not very directive source sits very close to a wall and a wall pixel is visible, the
SPL there is then high but may not be found by a coarser map (but it is also not very
interesting to use that as max). The max estimate goes ca. 25 times faster than a full render.
As long as CATT-A is not restarted the max remains the same also when closing/opening the
dialog.
Range (Sound)(Render) Pixel rendering
The scale Range can be chosen i.e. from Max and down. For sound systems 30 dB is a good
range while for omni and less directive sources 10 or 20 dB works better. As long as CATT-A
is not restarted the range remains the same also when closing/opening the dialog.
Band (Sound)(Render) Pixel rendering
The octave-band for the rendering, as long as CATT-A is not restarted the band remain the
same also when closing/opening the dialog.
Interference (Sound)(Render) Pixel rendering
If Interference is used coh (coherent) will be indicated below the color scale otherwise pwr.
Interference has no effect with one source only and pwr will be indicated. When Interference
is selected the source contributions are added with phase and just like in Audience area
mapping (Add direct sound with phase) the interference over the complete octave-band is
calculated (i.e. not just for the center frequency) using octave-band FIR filters (and hence
takes some time).
Recall/Store (3D-views) Pixel rendering
Three options for storing/recalling 3D views (view angles etc.). As long as CATT-A is not
restarted these remain also when closing/opening the dialog.
Sources Pixel rendering
Option for selecting a subset of the sources selected in General settings. If some sources
have been switched off it can also, via an option when the dialog is closed, affect the selection
in General settings.
Copy Pixel rendering
Copies the current bitmap into the Windows clipboard for pasting into e.g. MS Word or Paint.
Pixel rendering application tips
Since some if these rendering operations can take several minutes to perform if there are
many sources, the following procedure is recommended for most efficient use:
first select a good wire-frame 3D-view of the surfaces that are interesting, leave some
space at the right for the color scale. Note that the dialog can be resized but a larger map
will also take more time. Possibly store some good views for later recall when comparing
after a geometry or source change. The last selected 3D view, dialog size, scale and
octave-band will be selected the next time the dialog opens to enable comparisons using
an identical view. Also all stored views will remain the same and can be recalled as long as
2. PREDICTION MODULE
75
CATT-A is not restarted.
optionally perform a quick Geometry rendering
perform (Sound) renderings without Interference to set the color scale and perhaps adjust
the view. To get a good initial start for the max scale value press the ? button.
If desired, switch on Interference and render the final view.
Copy the view to a another application such as Word or Paint, go back to the first step and
select another view.
Select Close when you are finished or want to change room or source details. If the source
combination has changed, General settings can optionally be updated accordingly.

2. PREDICTION MODULE
76
2.3 Input-files
The prediction input-files describe the geometrical model, source positions/properties, and
receiver positions.
Common features
All geometry-related input-files are in text-format: (*.GEO, *.LOC) and the data entry is done
using any suitable editor or via an export from the AutoCAD interface, DXF-conversion via
DXF2GEO or via a modeling plugin, see chapter 10. CATT-Edit is recommended since the
main program then knows if a file has been changed before a prediction is made and it also
has several other useful features such as syntax templates.
In the data-file syntax descriptions below the following apply:
UPPERCASE COURIER BOLD is used for directives
lowercase courier is used for values to directives
UPPERCASE COURIER is used for filenames and similar items
| means "OR"
... means a sequence, range, or continuation of the specified item(s).

Text like this with a left border is a syntax description.
The following applies to all text input data-files:
character case is not significant except for plane and sub-division names in geometry-files
and TEXT marker text which will stay as entered
data is entered and parsed on a line-by-line basis. An exception to this is definition of
planes in geometry-files that can be spread over many lines
totally blank lines are ignored allowing for white space in the files
data items must be separated by one or more blanks or TABs
no blank or TAB is, however, needed between a data field delimiter and a data item
anything written after a semicolon ; on a line is treated as a comment
reserved characters (that cannot be used in constant and absorption names etc.):

* ; [ ( < > ) ] / \ - + %
entering of floating point values has a very free format. The floating point number 1.0 can,
for example, be entered as any of the following:
1 1. 1.0 1E+00 1.E+00 1.0E+00 1E0 1.E0 1.0E0
both decimal point and decimal comma are allowed.
2. PREDICTION MODULE
77
negative numbers (or constants) must be entered without a space between the minus sign
"-" and the first digit (i.e. -1.0 is OK but - 1.0 is not)
unit for coordinates etc. is meter [m]. Note: see the SCALE directive for using other units
names (constant, source directivity names and absorption/diffusion properties) must not
have more than 15 characters, consist only of letters, numbers (0..9), and underscores
( _ ) and the name must start with a letter
if a directive is left out the default is used
if a directive is without meaning in a particular context it is ignored
should by mistake two directives of the same type (that are not defined to be multiple
directives) be entered, it will be trapped. If a directive is defined as a multiple directive,
every appearance counts
IF-THEN-ELSE statements (ELSE optional):
IF expr1 condition expr2 THEN
statements
ELSE
statements
ENDIF
or
IF expr THEN
statements
ELSE
statements
ENDIF
where expr1, expr2, and expr are valid expressions. The condition can be any of:
<, <=, = , >=, >, and # corresponding to less, less or equal, equal, greater or equal,
greater, and not equal. If expr evaluates to > 0 then the statements are executed.
To enable high-level statements two global constants have been pre-defined:
FALSE = -1
and
TRUE = 1.
Example: if a and b are declared as either TRUE or FALSE then:
"IF a THEN" can be written as IF a THEN
"IF NOT a THEN" can be written as IF -a THEN
"IF a AND b THEN" can be written as IF a+b THEN
"IF a OR b THEN" can be written as IF a+b+1 THEN
"IF a XOR b THEN" can be written as IF -a*b THEN
Note: IF-ELSE statements cannot be nested.
SAY statements:
SAY message
2. PREDICTION MODULE
78
will display message on the screen and wait for OK to be pressed. Can be used for
tracing and debugging purposes.
SAY constant
where constant is the name of a previously declared constant, will display the
evaluated value or string and wait for OK to be pressed.
DEBUG statements:
DEBUG message|constant
Similar to SAY but if DEBUGOFF the message is just written to the Debug window and no
message box is shown.
DEBUGON
If either OK or Cancel is clicked the parsing continues but clicking Cancel sets debug
off. In both cases the result is added to the Debug window. Debug is off when the
Master file is beginning to be read.
DEBUGOFF
Makes DEBUG messages be displayed only in the Debug window and the parsing
continues.
RETURN statements:
RETURN
will force end-of-file. Can be used for debugging purposes.
BREAK statements:
BREAK message
will force abort of the processing with the message shown on screen. Example:
IF height >= 15 THEN
BREAK Height must be less than 15!
ENDIF
Geometry-files
Geometry-files (GEO-files for short) describe the hall geometry and often also defines wall
absorption/diffusion properties.
GEO-files can be organized hierarchically like a "tree" to make structuring of the geometry
possible since each GEO-file can INCLUDE one or more GEO-files which in turn can
INCLUDE others and so on to any depth. An included file can have any name but must have
the extension .GEO and be located in the input folder. Planes should not refer to a corner id in
a file at a lower level (an included file).
One of the advantages of the tree-structure is that a complete section of the hall (e.g. all
reflectors) can be switched off just by adding a semicolon (comment introducer) in front of the
corresponding INCLUDE directive or by using an IF-THEN statement.
2. PREDICTION MODULE
79
The master-file name which the Prediction module looks for in the input folder typically has the
name MASTER.GEO. By selecting another master-file (using the General settings/Master
GEO-file) it is possible to have several different "setups" for a hall where e.g. one master-file
includes reflectors and another just the plain hall thus making comparisons with/without
reflectors easy.
A GEO-file can be defined as an OBJECT and be rotated around any point and translated to
any location in the hall. Via the COPY directive multiple copies of an object can be created at
different positions and rotations.
A GEO-file can use named LOCAL and GLOBAL constants, expressions, and IF-THEN
statements, which make changes easy and secure. For interactive constant declarations
GETLOCAL and GETGLOBAL can be used.
A GEO-file can via the MIRROR directive be mirrored for automatic creation of symmetrical or
nearly symmetrical parts.
Several tools for accurate definition of plane corners are provided (x(), y(), z(), lock(),
cut(), loop()).
Syntax
In addition to the common features of input text-files, for the GEO-file syntax explanations the
following apply:
directives are entered as:
DIRECTIVE value(s)
or
DIRECTIVE for toggle (on/off) directives;
directives may be entered in any order but a constant has to be declared before it is used;
coordinates, scale, object origin, shift, rotation and absorption/scattering coefficients can
be specified as a floating point number, as a declared local or global constant, or as an
expression.
A GEO-file must have three (optionally four) sections with the following order:

directives constant and absorption declarations etc.
CORNERS mandatory
corner definitions optional
PLANES mandatory
plane definitions optional
MARKERS optional
marker definitions optional
Note: a mandatory section may be empty but the strings CORNERS and PLANES must always
be present.
2. PREDICTION MODULE
80
Directives section
CATT-Edit has a Help menu item with short syntax descriptions to serve as a quick reference
for the detailed descriptions below.
INCLUDE filename (multiple)
#I filename (short form)
The files are included in the order they are encountered, but not until the current GEO-file is
read. This means that each level of files are read before the next level. If a problem with file
inclusion should occur insert SAY statements to trace GEO-files or use Utilities|Create GEO-
file Tree where GEO-files are listed in order of inclusion.
filename: name of GEO-file (with or without .GEO) to include (must be in the input folder
and be given without path).
Default: no file included.
SCALE sc_x sc_y sc_z
Scale to use in the GEO-file. If scaling is used all coordinates in the file will be in scaled units.
If the same scale in all files is required, global constants can be defined in the master-file (e.g.
sx, sy, sz) and then SCALE sx sy sz can be put in all included files as well as source- and
receiver-files. Note: if SCALE is used in all GEO-files as well as in the receiver- and source-
files using x(), y(), and z() functions may scale twice since scaling has already been
applied. In such a case use e.g. 1+x(12)/s, where s is the scale factor, to prevent the extra
scaling.
sc_x, y, z: scale factors for each axis. E.g. all x-values will be multiplied with sc_x.
Default: SCALE 1 1 1 (i.e. no scaling)
OBJECT
To make the GEO-file be an object-file. The coordinate system in the file is then local to the
object. The sub directives ORIGIN, TRANSLATE, and ROTATE are used to place the object in
the hall system.
Default: not an object-file.
TRANSLATE t_x t_y t_z
SHIFT t_x t_y t_z (alternative form)
How much to translate (shift) the object - i.e. where, in the hall coordinate system, to put its
origin. See Fig. 2.1.
t_x, t_y, t_z : translation along each axis.
Default: TRANSLATE 0 0 0
ROTATE r_x r_y r_z
How much to rotate the object around its origin. See Fig 2.1.
2. PREDICTION MODULE
81
r_x, r_y, r_z : rotation around each object axis in degrees. A positive value rotates clockwise
and negative value rotates counter clockwise.
Default: ROTATE 0 0 0

t_y
t_x
r_z = 0
r_z # 0
Y
X
y
x
new ORIGIN
o_y > 0
r_z # 0 with
new ORIGIN
y
x
Example in 2D.
X-Y is hall system
x-y is object system

Fig. 2.1 Function of ROTATE and ORIGIN OBJECT directives
ORIGIN o_x o_y o_z
If OBJECT. Where the objects origin should be placed relative the coordinates specified in the
file. Rotation and scaling are performed around this origin. By using this directive it is possible
to enter a symmetric object in a suitable coordinate system and then rotate it around a point
away from the center. See Fig. 2.1.
o_x, o_y, o_z: position of new origin in the object coordinate system.
Default: ORIGIN 0 0 0
OFFSETPL number
Offsets all plane ids in the file with number. Enables a local plane-numbering system;
especially useful for objects.
number: number to add to plane ids in the GEO-file. Can be negative.
Default: OFFSETPL 0
OFFSETCO number
Offsets all corner ids in the file with number. Enables a local corner-numbering system;
especially useful for objects.
number: number to add to corner ids in the GEO-file. It applies to corners in both the
corners and the planes section. Can be negative.
Default: OFFSETCO 0
2. PREDICTION MODULE
82
FROMFRONT|FROMBACK
If the plane corners in the PLANES section are entered in clockwise order as seen from the
front (reflecting side) or from the back (non-reflecting side). This is further described below
about the planes section.
Default: FROMBACK
MIRROR coadd pladd (form 1)
MIRROR coadd pladd EXCLUDE plid ... (form 2)
The first form of this directive will automatically create a mirror copy of all corners defined in
the file with non-zero x. It will also create mirror copies of all planes that have corner
coordinates with the same x sign or that are zero. The mirror operation takes place after all
corners are read which means that mirrored corners cannot be referred to in the corners
section. Help corners for locking can be created with x = 0.
coadd: a number added to all corner ids for mirrored corners.
pladd: a number added to all plane ids for mirrored planes.
EXCLUDE option to exclude on or more plane ids that will not be mirrored.
plid ...: a list of planes ids to exclude. The list of ids can include ranges from-to
(e.g. EXCLUDE 5 10-15 18 20-26), ranges can be overlapping and in any
order. These plane ids correspond to those defined in the file and any used
OFFSETPL will be handled automatically.
An example:
OFFSETCO 200
OFFSETPL 20
MIRROR 1000 100
CORNERS
0 ...
1 ...
2 ...
...
PLANES
[0 ...
[1 ...
[2 ...
...
The part explicitly modeled in the file will have corner ids 200, 201, 202 ... and plane ids 20,
21, 22 ... The mirrored part will, however, get corner ids 1200, 1201, 1202 ... and plane ids
120, 121, 122 ...
The second form allows for some planes being excluded from mirroring. An example:

OFFSETCO 200
OFFSETPL 20
MIRROR 1000 100 EXCLUDE 0 3
CORNERS
0 ...
1 ...
2 ...
...
2. PREDICTION MODULE
83
PLANES
[0 ...
[1 ...
[2 ...
[3 ...
...
The part explicitly modeled in the file will have corner ids 200, 201, 202 ... and plane ids 20,
21, 22, 23 ... The mirrored part will, however, still get corner ids 1200, 1201, 1202 ... and
plane ids 121, 122 ... but not planes 120 and 123 since planes 0 and 3 have been excluded
from mirroring. The EXCLUDE option can be used if models are not perfectly symmetrical since
all corners are mirrored and where some planes will be slightly altered (e.g. a door only on one
side).
COPY coadd pladd o_x o_y o_z t_x t_y t_z r_x r_y r_z [EXCLUDE plid]
(multiple)
#C coadd pladd o_x o_y o_z t_x t_y t_z r_x r_y r_z [EXCLUDE plid]
(short form)
This directive will create a copy of the data in the file. The procedure will simply be to model
one object, and then add a number of this directive for the GEO-file to copy itself. The
directive also works together with MIRROR and creates a copy also of the mirrored part. The
GEO-file does not have to be an OBJECT itself for COPY to work.
coadd: a number added to all corner ids for copied corners.
pladd: a number added to all plane ids for copied planes.
o_x ...: new object origin (same function as ORIGIN)
t_x ...: location of new object (same function as TRANSLATE)
r_x ...: rotation of new object (same function as ROTATE)
EXCLUDE option to exclude on or more plane ids that will not be copied.
plid ...: a list of plane ids to exclude. The list of ids can include ranges from-to (e.g.
EXCLUDE 5 10-15 18 20-26), ranges can be overlapping and in any
order. These plane ids correspond to those defined in the file and any used
OFFSETPL will be handled automatically.
An example (not using the optional EXCLUDE):

OFFSETCO 200
OFFSETPL 20
MIRROR 1000 100
; co pl orig. transl. rotate
COPY 10 5 0 0 0 0 10 0 0 0 15
COPY 20 10 0 0 0 0 20 0 0 0 30
COPY 30 15 0 0 0 0 30 0 0 0 45
CORNERS
0 ...
1 ...
2 ...
...
PLANES
[0 ...
[1 ...
[2 ...
2. PREDICTION MODULE
84
...
The part modeled in the file will have corner ids 200, 201, 202 ... and plane ids 20, 21, 22 ....
The symmetric part will get corner ids 1200, 1201, 1202 ... and plane ids 120, 121, 122 ....
The first object copy will have corner ids 210, 211, 212 ... and plane ids 25, 26, 27 ...
The symmetric part will, however, get corner ids 1210, 1211, 1212 ... and plane ids 125,
126, 127 ... and so on for the second and third copy.
The use of COPY is sometimes not directly possible if some of the copies are to be slightly
different. An alternative is then to still use the COPY command copying also unwanted planes
and afterwards in General settings exclude those planes (Plane use, Not some). This
solution is not very elegant since a change in OFFSETPL in the object GEO-file will necessitate
a change also in the General settings (easy to forget and makes the GEO and the PRD
dependent). Instead, the EXCLUDE option can be used, an example:

...
OFFSETCO 1000
OFFSETPL 100

COPY 5 5 0 0 0 0 4 0.5 10 5 0 EXCLUDE 0 ;excludes side0
COPY 10 10 0 0 0 -3 6 0.5 10 5 0 EXCLUDE 1 ;excludes side1

CORNERS

0 -a -b 0
1 -a b 0
2 a b 0
3 a -b 0

PLANES
[ 0 side0 / 0 1 2 3 / reflabs* ]
[ 1 side1 / 3 2 1 0 / reflabs* ]
GLOBAL name = expr|string (multiple)
#G name = expr|string (short form)
Definition of a global named constant - the constant is then known in the current GEO-file and
in every GEO-file included in and after the current file as well as in source- and receiver-files.
An attempt to re-declare a global constant will be trapped. The equals sign is optional. Two
global constants are predefined: TRUE=1 and FALSE=-1.
name: constant name (only the first 15 characters are significant).
expr: an expression, arbitrarily complex, including declared constants, parenthesis,
and calls to math functions: sin(), cos(), tan(), arctan(), exp(),
log() (natural logarithm), exp10(), log10()(10-based logarithm),
sqrt(), sqr(), cube(), abs(), rnd(), rnd2(). Angle arguments must
be in degrees. For details about function, see Use of Expressions below.
string: a string constant in double quotes that can be used e.g. in plane definitions
and the name is then delimited with %, see below. To avoid that %, as used in
a message, (e.g. in the GETGLOBAL INFO etc.) causes a search for string
substitution assuming %name% the % sign can be preceded with a
backslash like e.g. in "Absorption coefficient in \%".
2. PREDICTION MODULE
85
Example 1:

GLOBAL a = 5
GLOBAL h_ceil = a + 1
GLOBAL wup = "Wall with unknown plaster"
...
CORNERS
1 a 2.5 h_ceil
...
PLANES
[ 1 %wup% / 2 4 5 6 7 / wallabs ]
; will expand %wup% to Wall with unknown plaster

Example 2:

GLOBAL blue = "{0 0 255}"
ABS plastic = <12 10 8 7 6 5> %blue%
...
Since an IF-statement in the form "IF expr THEN" will be true if expr evaluates to > 0,
flags can be defined by using TRUE and FALSE :

GLOBAL balcony = TRUE
...

IF balcony THEN
...
ELSE
...
ENDIF

LOCAL name = expr|string (multiple)
#L name = expr|string (short form)
Definition of a local named constant - the constant is then known in the current GEO-file only.
An attempt to re-declare a local constant in the same file will be trapped. If the local name
should be the same as a global name the local overrules the global. The equals sign is
optional.
name, expr, string: see GLOBAL.

GETGLOBAL name = expr|string [INFO = "info"] [MIN = min | CLAMPMIN =
min] [MAX = max | CLAMPMAX = max] (multiple)

GETLOCAL name = expr|string [INFO = "info"] [MIN = min | CLAMPMIN =
min] [MAX = max | CLAMPMAX = max] (multiple)
Same as GLOBAL and LOCAL above but the constant value or expression is entered at run-
time. expr|string is the default value and optional checks on the value can be performed.
Note: the syntax above spreads over two lines but actually entered text must be on one line.
name, expr, string: see GLOBAL.
INFO is used to tell the user information about the value to enter, e.g.:

GETGLOBAL h = 10 INFO = "Ceiling height in meter"
2. PREDICTION MODULE
86

or for a string constant :

GETGLOBAL s = "name" INFO = "Plane name"
MIN and/or MAX are used to check that a constant value is within limits, e.g.:

GETGLOBAL h = 10 INFO = "Height in meter" MIN=5 MAX=18
CLAMPMIN and/or CLAMPMAX

are used to check that a constant value is within limits, and if not the value
is clamped to the given min and/or max values, e.g. :

GETGLOBAL h=10 INFO="Height in meter" CLAMPMIN=5 MAX=18

If e.g. 0 is given h will be set to 5 and to notify the user the *DEBUG*
window will display LOCAL h clamped at min 5.000.

ABS absname = < [/]values > [{R G B}] (all ABS variants are multiple)
ABS absname = < [/]values > m < s-values > [m_data][{R G B}]
ABS absname1 = absname2
ABS absname1 = absname2 m < s-values > [m_data] [optional]
Declaration of a global named surface (absorption/diffusion) property with optional semi-
transparency as an alternative to put the coefficients directly or to use the surface properties
library (the fourth variant complements a previously defined property with scattering
coefficients or redefines its current coefficients). The absorbing/diffusing property is then
known from this point in the current GEO-file and in every GEO-file included in and after the
current file. An attempt to re-declare a property will be trapped (it may, for example, already be
declared in the surface properties library). There are two predefined absorption properties:
TOTREF and TOTABS. TOTABS is an artificial total absorption used for the back side of
"floating" audience planes and similar planes for quick tests but should be use very seldom
(better to use 99,9%). The equals sign is optional.
absname: name of absorption/diffusion property.
<[/]-values> : absorption coefficients in % ]0..100[ for the six octave bands 125 to 4k Hz
(can be specified by constants): <125 250 500 1k 2k 4k>
e.g. <5 7 8 10 15 20>. 8k and 16k values are extrapolated from 2k
and 4k.

Optionally 8k and 16k are given preceded by a colon:
<125 250 500 1k 2k 4k : 8k 16k > e.g.
<5 7 8 10 15 20 : 35 50 >.
Optionally -values for transmission coefficients in % ]0-100[ for the six (or
eight) octave bands can be given (can also be specified by constants): e.g.
<5/55 7/47 8/38 10/30 15/25 20/10>.
For guidelines regarding which types of - and -values to use with semi-
transparency, see Theory section 2.5
m: diffusion model letter.
L = Lambert model (no other models implemented).
<s-values>: scattering coefficients in % ]0..100[ for the six octave-bands 125 to 4k Hz
2. PREDICTION MODULE
87
(can be specified by constants). <s125 s250 s500 s1k s2k s4k> e.g.
<5 10 20 25 30 35>. 8k and 16k values are extrapolated from 2k and
4k.

Optionally 8k and 16k are given preceded by a colon:
<s125 s250 s500 s1k s2k s4k : s8k s16k > e.g.
<5 10 20 25 30 35 : 40 50>.
The scattering coefficients are defined according to [ISO-scatt].
To simplify the estimation of scattering coefficients of rough surfaces,
modeled as flat planes, a function estimate() can be used instead of
explicit coefficients, e.g.:

ABS ceiling = <15 10 11 12 12 12> L < estimate(0.4) >

where the argument given (numerical value only) is the roughness scale in
meter (e.g. a corrugated ceiling with 0.4 m wells). 0.4 as in the example will
estimate the following values: <19 27 38 54 76 99 : 99 99> based
on roughness to wavelength ratio. If the values turn out < 10% or > 99%
they are clamped to the respective limit. The estimated values are no
absolute truths and are just based on experience and a reasonable
frequency dependence (the actual function used is s = 50sqrt(d/) where d
is the given value in meter and the wavelength). In the PLINFO plot-file,
and in the a list of planes if selected in a debug file, it is indicated if
scattering coefficients were estimated using estimate() or given
explicitly.
m_data: a sequence of diffusion model dependent values. Not required for the
Lambert model (previous versions have had additional Lambert data that
no longer are used, future models may need more data).
{R G B}: optional Red Green Blue values in the range [0..255] for defining the color
of the material (e.g. pure Red is {255 0 0}. For non-pure colors the
values can be selected in a color dialog using CATT-Edit (Template|RGB
Color menu). If not given a color is auto-generated. Tip: symbolic color
names can be created using string constants: LOCAL red = {255 0
0} and used as %red%. Note: don't use black {0 0 0} since this color is
used to identifying the back side in PLINFO.PLT frames.
Notes:
transparency is intended for thin cloths and curtains (i.e. not walls) and when used:
the semi-transparent planes:
have to be interior (such as hanging curtains)(checked)
have to be double-sided (checked)
must have the same material on both sides (checked)
not be sub-divided (checked)
the Full detailed calculation algorithm Late part ray-trace option must be used. If the
standard RTC is selected it will automatically be changed before calculation. The reason is
that with semi-transparent surfaces the reflection density growth is unknown and cannot be
extrapolated.
2. PREDICTION MODULE
88
In PLINFO and REFLINFO PLT-files, transmission coefficients are shown under the
absorption coefficients in green and in the graph by a dotted green line.
it isn't obvious how to set the two coefficients (/), see Theory for a details regarding the
implementation of semi-transparency and how the coefficients can be estimated.
Sabine and other classical measures loose their meaning when semi-transparent materials
are used since coupled room systems may be created, so be careful not to over-interpret
them.
diffusion properties are controlled globally in the General settings dialog by the (Diffuse
reflection) settings. Materials that do not have any diffusing properties assigned can get
default values by selecting Surface default in the dialog.

ABS1 (multple)
Same as ABS above but all values are given in the range ]0..1[ instead of in %.
NOROOM
This directive is used only in the master-file and when the GEO-file is not a room but a set of
planes and markers to be exported using File|Export. With this directive, no source and
receiver-file are required and some Geometry view/check plot-files are disabled. Note that
even if a file is created only for export it has to contain at least one plane (but this plane does
not have to be exported). Often a ground plane at z = 0 is useful as a reference plane to place
e.g. a chair object on.
Default: GEO-file is a normal room file
NOHIDELINES

This directive is used when any hidden edges wants to be shown again temporarily e.g. for
debugging purposes. Edges can be hidden by preceding corner ids in plane definitions by a
minus-sign, see Planes section. Note that it is not often necessary to use this option since in
the two main plot-files for geometry debug (PLINFO.PLT and COINFO.PLT) hidden edges
are always shown but dashed.
Default: Hidden edges are not shown
2. PREDICTION MODULE
89
Corners section
This section lists the corner/node ids and their x-, y-, and z-values. These corners can be used
to create both planes and markers and be referred to in source- and receiver-files (using the
x(), y(), z() functions).

CORNERS
c_id c_x c_y c_z
...
The string CORNERS marks start of corner coordinates.
c_id: a unique corner id (0-65535). See also OFFSETCO.
Note: duplicate corner ids are always checked if any prediction is selected
and if duplicates are found prediction is blocked.
c_x, c_y, c_z: the coordinates as floating point numbers, declared constants, expressions
or special functions as described below.
The corners can be entered in any order and corners not used don't have to be removed.
Several tools for defining an accurate and structured geometry are provided.
Use of Expressions:
Instead of first defining a symbolic constant (by using an expression) and then use the
constant for a coordinate, the expression can be entered directly. The expression must,
however, either be entered without intervening spaces or be completely enclosed in
parenthesis. Without this convention it is not possible for the parser to know where, for
example, the x-expression stops and the y-expression starts.
Method no. 1 (slightly more efficient if x1, y1 and z1 are used many times):

LOCAL a = 5
LOCAL x1 = sqrt(a)
LOCAL y1 = 3 + a
LOCAL z1 = 1 - 2*a
CORNERS
22 x1 y1 z1
...
PLANES
...
Method no. 2 (more clear):

LOCAL a = 5
CORNERS
22 sqrt(a) 3+a 1-2*a ;without spaces parenthesis not required
...
PLANES
...
or

LOCAL a = 5
CORNERS
2. PREDICTION MODULE
90
22 (sqrt( a )) (3 + a) (1 - 2*a) ;with spaces and parenthesis
...
PLANES
...
Note: to avoid possible complications, an exception to the above is that an expression cannot
start with a factor within parenthesis, i.e. an expression such as
(a+b)*sin(r)
must either be completely enclosed within parenthesis:
((a+b)*sin(r))
or rearranged:
sin(r)*(a+b).
The reason for this is that the parser looks for matched parenthesis if the first character is a
"(" and will in the example stop after (a+b) and start the next coordinate with a "*" resulting
in an error-message.
Available functions :
sin(angle) angle in degrees
cos(angle) angle in degrees
tan(angle) angle in degrees
arccos(value) return value in degrees
arcsin(value) return value in degrees
arctan(value) return value in degrees
exp10(value) exponential (base 10)
log10(value) logarithm (base 10)
exp(value) natural exponential (base e)
log(value) natural logarithm (base e)
sqrt(value) square root
sqr(value) square: ()
2

cube(value) cube: ()
3

abs(value) absolute value
rnd(range) returns a random number [0..range[.
rnd2(range) returns a random number [-range..range[.
Of course, the rnd() and rnd2() functions are not very useful for geometry building but
have been requested by a few users for randomly placing e.g. markers. An example of its
use:

LOCAL actor_x = 3+rnd2(1) ; will let actor_z vary between 2 and 4)
DEBUG actor_x ; displays the actual value
Note: when the geometry is read, a checksum is created to ensure that if a Source addition is
made from calculations at separate times they will be based on the same geometry. In such
cases the rnd-functions should not be used for building the actual geometry.
2. PREDICTION MODULE
91
Automatic locking to planes:
Locking hard-to-measure coordinates (e.g. a slightly sloping floor) into a plane can be
accomplished by a function replacing either the x-, y-, or z-coordinate:
lock(id1 id2 id3)
Where id1, id2 and id3 are the ids of three previously defined corners, describing the plane
to lock into. An example:

CORNERS
1 ...
3 ...
15 ...
23 2.3 15.4 lock(1 3 15)
...
PLANES
...
where the z-coordinate of corner 23 will be calculated to lock into the plane defined by corners
1, 3 and 15 at x = 2.3 and y = 15.4
Plane-line intersection:
A corner can be completely defined by describing it to be the intersection of a line, described
by two previously defined corner ids, and a plane described by three previously defined corner
ids:
cut(l_id1 l_id2 p_id1 p_id2 p_id3)
where the first two ids describe the line and the last three describe the plane. An example:

CORNERS
1 ...
3 ...
15 ...
10 ...
11 ...
23 cut(10 11 1 3 15)
...
PLANES
...
where corner 23 will be calculated as the intersection of the line 10 to 11 with the plane
described by corner 1, 3, and 15.
Use of previously defined corners:
In addition to mathematical functions, functions returning the x-, y-, or z-value of a previously
defined corner id can be used:
x(id) or y(id) or z(id)
where id is a previously defined corner id (it must not be a symbolic constant or expression).
An example:

CORNERS
12 2.2 13.4 13.2
23 2.3 15.4 z(12)
2. PREDICTION MODULE
92
24 -x(23) y(23) z(12)+1
...
PLANES
...
These three functions can be treated as any other functions, for example be used in
expressions defining a constant.
Absolute corner ids mixed with relative ids:
The convenient possibility to use relative corner ids in a file by specifying the OFFSETCO
directive is sometimes complicated by the need to use a corner defined outside of the current
GEO-file. To enable this, an id can be preceded by an underscore "_" and the id will not be
incremented by the specified offset, and will thus be taken as an absolute id. An example:

OFFSETCO 100
CORNERS
12 1.2 2.5 3.3
23 2.3 y(_12) z(12)
...
The y-value of corner 23 will be that of corner 12, while the z-value will be that of corner 112.
Note: no space is allowed between the underscore and the id.
A loop() function to generate coordinates:
The loop()function is used instead of an id x y z sequence, the syntax is:

loop(id_start,i,i_start,i_stop,i_step,x_expr,y_expr,z_expr)
id_start Start of corner ids to be generated by the function, for each new coordinate
this number is incremented by 1
i Loop variable
i_start Integer start value for i
i_stop Integer stop value for i
i_step Integer step for i, can be < 0 for backwards stepping
x_expr Expression for the x-coordinate (optionally including loop variable i )
y_expr Expression for the y-coordinate (optionally including loop variable i )
x_expr Expression for the z-coordinate (optionally including loop variable i )
Example creating coordinates in a crude circle (points every 45):
this sequence:

500 2*cos(0*45) 2*sin(0*45) 3
501 2*cos(1*45) 2*sin(1*45) 3
502 2*cos(2*45) 2*sin(2*45) 3
503 2*cos(3*45) 2*sin(3*45) 3
504 2*cos(4*45) 2*sin(4*45) 3
505 2*cos(5*45) 2*sin(5*45) 3
506 2*cos(6*45) 2*sin(6*45) 3
2. PREDICTION MODULE
93
507 2*cos(7*45) 2*sin(7*45) 3
can be generated in one step by:

loop(500,angle,0,315,45,2*cos(angle),2*sin(angle),3)

or by :

loop(500,q,0,7,1,2*cos(q*45),2*sin(q*45),3)
Notes:
decimal comma cannot be used in the x-, y- and z- expressions but only decimal point
(comma is used to separate parameters)
the selected loop variable must not clash with any other used letter in an expression (if
sin() is used, s, i or n cannot be used as a variable)
the created coordinates can be mirrored, copied, translated etc. just like any other
coordinates
if an error occurs the displayed loop() arguments will not look exactly as entered since all
blanks have been removed (if lock() was used the blanks between the ids are replaced
by a colon (:) i.e. lock(1 2 3) will become LOCK(1:2:3)). This is done to simplify
parsing
Planes section

PLANES
[pl_id pl_name / c ... / abs ]
or
[pl_id pl_name / c ... / (sub_name / c ... / abs ) ...]
...
The second variant is for a sub-divided plane.
The string PLANES marks start of plane definitions.
[ ] field delimiters: start and end of a plane definition (a plane definition can span
several lines).
pl_id a unique plane id number (1-99999, 0 allowed if OFFSETPL is used).
Note: duplicate plane ids are always checked if any prediction is selected and if
duplicates are found prediction is blocked.
pl_name an (optional) name of the plane. The 30 first characters will be used (e.g. in
PLINFO.PLT) the rest ignored. Note: slash "/" or backslash "\" can not be used in
the name since they act as field delimiters.
/ \ field delimiter. Plane definitions in GEO-files can use either slash "/" or backslash
"\" as field delimiters where "\" means that the plane corner entering order is re-
versed but only for the plane concerned. This feature has two uses: 1) to quickly
correct a plane that by accident has been entered reversed, 2) to create double-
sided planes by simply copying the definition of one side to a new line and flip /
to \ and change plane id and absorption (if different on the two sides). An
alternative is to use a special double-plane construction, see advanced options
2. PREDICTION MODULE
94
below. Sub-divisions are automatically oriented in the same way as the plane and
can always use e.g. /.
c ... plane or sub-division corner ids entered in clockwise order as seen from the front
or the back of the plane as specified by FROMFRONT|FROMBACK (from back is
default). There is no practical limit of the number of corners in a plane or sub-
division. Any corner will do as a start corner as long as the main direction is
correct. It is not only allowed but strongly recommended to enter redundant
corners on a plane (such as three points on a line) to use e.g. to connect to a
neighbor plane. Planes cannot contain holes. See Fig 2.2 and 2.4. The mixing of
absolute and relative corner ids, as described for the corners section, also
applies in the planes section.
4
14
11
12
1
13 3
2
If FROMBACK is used,
plane no. 10 is defined as:
[10 / 11 12 13 14 / wood] or
[10 \ 14 13 12 11 \ wood]
If FROMFRONT is used,
plane no. 1 is defined as:
[1 / 1 2 3 4 / wood] or
[1 \ 4 3 2 1 \ wood]
plane no. 10
plane no. 1

Fig. 2.2 Plane corner entering order
abs absorption/diffusion property name as described above for the ABS directive. If a
material is used for one plane only, the values can be entered directly in the
plane definition (e.g. [1 / 1 2 3 4 / <8 7 6 5 4 3> ]). If an asterisk "*"
is appended to the name (or the values if no name is used) the plane or subdivi-
sion will have automatic edge diffusion (if also switched on in General settings).
( ) field delimiters: start and end of a plane sub-division definition. During the cal-
culation, the plane sub-divisions are searched for hits in the order they are
defined. This can be used to define one sub-division on top of another (max one
layer). For example, a window and a door in a wall can be defined as the first and
second divisions and the whole wall as the third division (the full wall is always
the last division). If the window or the door is hit the search stops. If they are not
hit then the hit must be in the wall outside the window and the door. This makes
the plot of plane sub-divisions look more clear, saves time entering, and also
uses less memory. See Fig 2.3. Note: sub-divisions cannot be created in the
AutoCAD interface. Note: a sub-division cannot have semi-transparency, a
double-sided plane with no sub-divisions has to be used.
sub_name a sub-division name (a name of any length can be used, but only the first 10
characters will be kept and shown in PLINFO.PLT).
Planes can be entered in any order.
There is a difference in how the plane definitions are entered as compared to all other data in
the input-files which are entered and read line by line. To allow a definition to spread over
many lines (e.g. if a plane has many corners or sub-divisions) characters are read until the
first "[" is found and the definition is parsed until a matching "]" is found, see Fig 2.3a-c.
2. PREDICTION MODULE
95

a
g
b c d e
1 2
4 3
10 11 12 13 14 15
16 17 18 19 20 21
f
[1 a / 1 2 15 14 13 12 11 10/ abs1]
[2 b /16 10 11 17/ abs1]
[3 c /17 11 12 18/ abs2]
[4 d /18 12 13 19/ abs1]
[5 e /19 13 14 20/ abs3]
[6 f /20 14 15 21/ abs1]
[7 g / 4 16 17 18 19 20 21 3/ abs1]
The two windows (c with abs2, e
with abs3) and the remaining wall
(with abs1) modeled as separate
planes (not recommended):

Fig. 2.3a Use of separate planes (not recommended)


a
g
b c d e
1 2
4 3
10 11 12 13 14 15
16 17 18 19 20 21
f
[1 / 1 2 15 21 3 4 16 10/
(a / 1 2 15 14 13 12 11 10/ abs1)
(b /16 10 11 17/ abs1)
(c /17 11 12 18/ abs2)
(d /18 12 13 19/ abs1)
(e /19 13 14 20/ abs3)
(f /20 14 15 21/ abs1)
(g / 4 16 17 18 19 20 21 3/ abs1)
]
Modeled with side-by-side sub-
divisions (not practical):

Fig. 2.3b Sub-optimal use of plane sub-divisions and with some risk of ray
leaks

c
a b
1 2
4 3
11 12 13 14
17 18 19 20
[1 /1 2 3 4/
(a /17 11 12 18/ abs2)
(b /19 13 14 20/ abs3)
(c / 1 2 3 4/ abs1)
]
Best modeled with a full wall sub-
division followed by the windows (the
order matters, full wall sub-division
must be placed last)

Fig. 2.3c Optimal use of plane sub-divisions
Sometimes in modeling one has to resort to divide into triangles and many types of imports
such as from AutoCAD will contain triangles. In other cases, such as a hole in a wall, division
cannot be avoided. With divided planes the model will have many lines that are not actual
plane edges and will be visually confusing. An option is to turn off the drawing of individual
edges and is done by preceding a corner id with a minus-sign:
[ 10 audience part 1 / 14 15 -39 / aud ]
[ 11 audience part 2 / 39 -15 72 / aud ]
where the edge for 15 to 39 in plane 10, and the edge 39 to 15 in plane 11 will not be drawn
except in COINFO.PLT and PLINFO.PLT where they are drawn dashed. Another option is to
use File|Export Geometry To|Merged Planes GEO-files.
2. PREDICTION MODULE
96
Notes:
if an external corner id is referenced the minus-sign is given after the underscore, like this:
_-39.
if the plane corner entering order is changed from the default (FROMBACK and //), the -
has to be placed on the other corner like in:
[ 11 audience part 2 \ -39 15 72 \ aud ]
this is purely visual and does not in any way affect the calculations. A better option is to
actually merge planes divided into unnecessary triangles into a new plane but that
approach is likely to take longer time.
the directive NOHIDELINES can be used to to temporarily show all edges.
Advanced plane creation option 1 : id ranges in plane definitions
To speed up the creation of some planes and/or sub-divisions, corner ids can be given as
ranges from-to:
[31 ceiling / 20 21 22 23 24 25 26 27 28
29 30 31 32 33 34 35 36 37 38 39 / wood ]
Can be defined with ranges, e.g.:

[31 ceiling / 20-39 / wood ]
[31 ceiling / 20 21 22-36 37-39 / wood ]
[31 ceiling \ 39-20 \ wood ] ;ranges can also go from high to low
Ranges can be combined with the hidden-edge codes:
[32 floor / -1 -2 -3 -4 / wood ]
[32 floor / -1-4 / wood ]
as well as external ids:

[33 wall / _11-15 / wood ] ;all ids are assumed external
[33 wall / _-11-15 / wood ] ;same as above but with hidden edges

Note: no spaces are allowed within a range.
Advanced plane creation option 2 : loops
To speed up the creation of some planes with logic numbering (say for circular structures) a
loop-like construction for planes can be used:
These five planes:

[ 1 wall / 1 2 3 4 / wood ]
[ 2 wall / 2 3 4 5 / wood ]
[ 3 wall / 3 4 5 6 / wood ]
[ 4 wall / 4 5 6 7 / wood ]
[ 5 wall / 5 6 7 8 / wood ]
can be created by one statement

[ *5 1 wall / 1 1 1 1 / 1 2 3 4 / wood ]
2. PREDICTION MODULE
97
Where *5 means that five planes are created incrementing the given plane id for each new
plane, and the / 1 1 1 1 sequence means that each of the following corner ids will be
increment by 1 for each new plane.
Note: the * and the number of planes to create must not be separated by space.
If the corner id increment is 1 for all corners (a common case), no increments needs to be
given but just the extra /:

[ *5 1 wall // 1 2 3 4 / wood ]
A case where different increments will be needed is e.g. with a cone-shape that has a
common point 0 at the top:

[ 1 side / 0 1 2 / wood ]
[ 2 side / 0 2 3 / wood ]
[ 3 side / 0 3 4 / wood ]
[ 4 side / 0 4 5 / wood ]
[ 5 side / 0 5 6 / wood ]
and it can then be created by:

[ *5 1 side / 0 1 1 / 0 1 2 / wood ]
With sub-divisions the same principle holds and the corner id increments are given the same
way, e.g. as:

[ *19 1 / 1 1 1 1 / 0 1 21 20 /
(window / 1 1 1 1 / 100 101 121 120 / wnd)
(wall / 1 1 1 1 / 0 1 21 20 / steel) ]
or using shortcuts for increment 1:

[ *19 1 // 0 1 21 20 /
(window // 100 101 121 120/ wnd)
(wall // 0 1 21 20 / steel ) ]

An example where different increments than 1 may be needed:
1
20
11
21
23 22
2
24
12
25
27 26
3
28
13
29
31 30
4
32
14
33
35 34
15
5

Fig. 2.4 Sample plane-loop use

[ *4 1 / 1 1 1 1 / 1 2 12 11 /
(window / 4 4 4 4 / 20 21 22 23 / glass)
(wall / 1 1 1 1 / 1 2 12 11 / wood) ]
or with the shortcut when the increment is 1:

2. PREDICTION MODULE
98
[ *4 1 // 1 2 12 11 /
(window / 4 4 4 4 / 20 21 22 23 / glass)
(wall // 1 2 12 11 / wood) ]
Another example where e.g. an increment of 2 may be needed is if in a circular structure every
second plane has a different absorption.
The corner id increments given for plane loops can also be negative. These two will give the
same result:

[*3 25 refl front / 1 1 1 1 / 0 1 2 3 / frontabs* ]
or just
[*3 25 refl front // 0 1 2 3 / frontabs* ]

giving corner ids

0 1 2 3
1 2 3 4
2 3 4 5

and

[*3 25 refl front / -1 -1 -1 -1 / 2 3 4 5 / frontabs* ]

instead giving ids

2 3 4 5
1 2 3 4
0 1 2 3
Planes created in a loop will have " (n)" appended to the plane name where n is the loop
index. I.e. if the plane name given is "wall", the names of loop-created planes will be "wall",
"wall (2)", "wall (3)" etc.
Advanced plane creation option 3 : double-sided planes
The creation of double-sided planes (with or without sub-divisions) can be made simplified:
[ 1 refl / 1 2 3 4 / wood ]
[ 2 refl \ 1 2 3 4 \ wood ]
can be created by one statement by putting a "D" or "d" before the plane id:
[ D 1 refl / 1 2 3 4 / wood ]
and the "other" side will also have " - back" appended to the plane name. The speed-up is
not dramatic but there is also some benefit in clearly seeing that it is a double plane in the
GEO file and that it may be less likely that the back side is forgotten.
This also works together with plane loops (D is always placed after *n) , e.g. as in:
[ *5 D 1 wall // 1 2 3 4 / wood ]
Where five double planes are created incrementing the given plane id for each new plane
(every second created plane will be the back side). A typical use here would be a range of
ceiling reflectors (although then COPY should be better seeing each double-sided reflector as
an OBJECT).
Note: this function is only for double-sided planes that have the same material on both sides. If
2. PREDICTION MODULE
99
the materials differ it will have to be done by one plane definition per side.
Markers section
Markers are non-acoustical elements not affecting the prediction but are for visual appear-
ances only. Markers can also be used to create sound source Visuals. Marker-files can
indirectly be made in AutoCAD via the AutoLISP interface and then modified in GEO-format
and exported as a marker-file. A directive NOROOM can be used if a GEO-file is used only to
create a Marker-file (no source and receiver files necessary, no calculations made).
All markers except LOAD have some common initial parameters:
NAME ids... {R G B} offset

ids... a number of corner ids used to determine the location, direction and
drawing plane of the marker object. Even for two-point lines a drawing
plane needs to be defined so that the direction of the drawing offset can
be determined.

{R G B} the Red Green Blue values for the marker color, each in the range [0..255]
e.g. {255 0 0} for pure red. CATT-Edit has a Template| RGB Color
menu item that inserts an RGB-triplet from visual selection in a color
dialog.

offset an offset from the plane defined by the ids. The idea is to always offset the
marker against e.g. a wall so that with shading, the marker is shown in
front of the wall. With loudspeaker visuals the offset is typically set to zero
except for e.g. outer markings such as a brand label.
POLY id1 id2 ... idN {R G B} offset
A filled planar (i.e. all points are in the same plane) polygon marker with no outlined edge:

id1 id2 ... idN the corner ids defining the polygon. The polygon is automatically closed
(i.e. the first id does not have to be entered also as the last id). The
polygon normal is calculated from the first three ids in the following way:
v
12
= vector(id1id2), v
23
= vector(id2id3) and normal_vector =
cross_product(v
12
,v
23
). This corresponds to entering the ids in anti-
clockwise order as seen from the desired front side.

{R G B} are the Red Green Blue values for the fill color [0..255]. Only the front side
of the polygon is filled (i.e. the side in direction of the normal).

offset is the offset (in meter) from the plane (defined by id1, id2 and id3), and
in direction of the normal, to where the polygon will be drawn.
Example:
POLY 1 2 3 4 5 6 7 {255 0 0} 0.1
i.e. a red polygon with 7 corners drawn 0.1 m in front of the plane defined by ids 1, 2 and 3.
Tip: To create an outline use the LINE marker with same ids but repeat id1 at the end:
LINE 1 2 3 4 5 6 7 1 {0 0 0} 0.1
i.e. a black outline.
2. PREDICTION MODULE
100
LINE id1 id2 ... idN {R G B} offset pattern
A multi-point planar (i.e. all points are in the same plane) line marker:

id1 id2 ... idN the corner ids defining the line. To make a closed line idN has to be the
same as id1. The line normal is calculated from the first three ids in the
following way: v
12
= vector(id1id2), v
23
= vector(id2id3) and
normal_vector = cross_product(v
12
,v
23
). This corresponds to entering the
ids in anti-clockwise order as seen from the desired front side.

{R G B} are the Red Green Blue values for the line color [0..255].

offset is the offset (in meter) from the plane (defined by id1, id2 and id3) and
in direction of the normal, to where the line will be drawn.

pattern optional pattern : 0 (solid), 1, 2, 3, 4. Default is a solid line.
Examples:
LINE 1 2 3 4 5 6 7 {255 0 0} 0.1
i.e. a seven-point red line with drawn 0.1 m in front of the plane defined by ids 1, 2 and 3.
DASH id1 id2 id3 {R G B} offset pattern
A two-point line marker:

id1 id2 id3 the actual line is between id1 and id2. The line normal is calculated from
the ids in the following way: v
12
= vector(id1id2), v
23
=
vector(id2id3) and normal_vector = cross_product(v
12
,v
23
). This
corresponds to entering the ids in anti-clockwise order as seen from the
desired front side.

{R G B} are the Red Green Blue values for the line color [0..255].

offset is the offset (in meter) from the plane defined by the ids, and in direction of
the normal, to where the dash will be drawn

pattern optional pattern : 0 (solid), 1, 2, 3, 4. Default is a solid line.
Examples:
DASH 1 2 3 {255 0 0} 0.1
i.e. an red dash with drawn 0.1 m in front of the plane defined by ids 1, 2 and 3.
RULE id1 id2 id3 {R G B} offset tic pattern
A two-point ruler marker with tics:

id1 id1 id3 the actual ruler line is between id1 and id2. The line normal is calculated
from the ids in the following way: v
12
= vector(id1id2), v
23
=
vector(id2id3) and normal_vector = cross_product(v
12
,v
23
). This
corresponds to entering the ids in anti-clockwise order as seen from the
desired front side.

{R G B} are the Red Green Blue values for the ruler color [0..255]. Tics will be
drawn in a complementing color.
2. PREDICTION MODULE
101

offset is the offset (in meter) from the plane defined by the ids, and in direction of
the normal, to where the ruler will be drawn

tic the tic size (in meter). Every fifth tic will be drawn in a different color.

pattern optional pattern : 0 (solid), 1, 2, 3, 4. Default is a solid line.
Example:
RULE 1 2 3 {255 0 0} 0.1 1.0
i.e. an red ruler between 1 and 2 drawn 0.1 m in front of the plane defined by ids 1, 2 and 3.
DISC id1 id2 id3 {R G B} offset radius
A filled disc marker:

id1 id1 id3 id1 is the disc center. The disc normal is calculated from the ids in the
following way: v
12
= vector(id1id2), v
23
= vector(id2id3) and
normal_vector = cross_product(v
12
,v
23
). This corresponds to entering the
ids in anti-clockwise order as seen from the desired front side.

{R G B} are the Red Green Blue values for the disc fill color [0..255].

offset is the offset (in meter) from the plane defined by the ids, and in direction of
the normal, to where the circle will be drawn

radius disc radius (in meter)
Example:
DISC 1 2 3 {255 0 0} 0.1 1.0
i.e. a 1.0 m radius red disc drawn 0.1 m in front of the plane defined by ids 1, 2 and 3.
CIRC id1 id2 id3 {R G B} offset radius pattern
A circle marker:

id1 id1 id3 id1 is the circle center. The circle normal is calculated from the ids in the
following way: v
12
= vector(id1id2), v
23
= vector(id2id3) and
normal_vector = cross_product(v
12
,v
23
). This corresponds to entering the
ids in anti-clockwise order as seen from the desired front side.

{R G B} are the Red Green Blue values for the circle line color [0..255].

offset is the offset (in meter) from the plane defined by the ids, and in direction of
the normal, to where the circle will be drawn

radius circle radius (in meter)

pattern optional pattern : 0 (solid), 1, 2 3, 4. Default is a solid circle.
Example:
CIRC 1 2 3 {255 0 0} 0.1 1.0
2. PREDICTION MODULE
102
i.e. a 1.0 m radius red circle drawn 0.1 m in front of the plane defined by ids 1, 2 and 3.
TEXT id1 id2 id3 {R G B} offset "text" height width style
A 3D text marker:

id1 id1 id3 the text is drawn from id1 along vector(id1id2) and with up defined by
vector(id2id3) (this vector does not have to be perpendicular to the
id1id2 vector). The text normal is calculated from the ids in the
following way: v
12
= vector(id1id2), v
23
= vector(id2id3) and
normal_vector = cross_product(v
12
,v
23
). This corresponds to entering the
ids in anti-clockwise order as seen from the desired front side.

{R G B} are the Red Green Blue values for the text color [0..255].

offset is the offset (in meter) from the plane defined by the ids, and in direction of
the normal, to where the text will be drawn.

text the actual text (entered within " ")

height the text height in meter, measured from the baseline to the top of capitals.

width the average text width in meter (the text is not a constant width text)

style optional style : B is bold (no other styles implemented)
Example:
TEXT 1 2 3 {255 0 0} 0.1 "Wall" 1.0 0.5
i.e. the red text Wall with 1.0 m high and 0.5 m wide characters drawn from id1 in the direction
12 with 23 defined as up.
LOAD id1 id2 id3 "path\mrk-file"
A marker that loads a marker-file object (.MRK). Marker-file objects can be created in GEO-
format and exported to file using the File|Export menu:

id1 id1 id3 the marker is loaded at id1 with its x-axis along vector(id1id2) with
vector(id1id3) defined as up (this vector does not have to be perpen-
dicular to the id1id2 vector). id3 is optional and if not given the marker
is placed assuming up is the z-axis. Note that any offsets should be made
already when creating the marker object.

path\mrk-file the marker-file to load, if path is not given the file is assumed to be
located in the project input folder. The .MRK extension is optional.
Example:
LOAD 1 2 3 "Chair"
i.e. the Chair.MRK marker-file object will be loaded at corner 1 with its x-axis defined by 12
and z-axis by 13 (the y-axis is calculated).
2. PREDICTION MODULE
103
Modeling notes
Planes must not be entered on top of each other (use plane sub-divisions instead as
explained above).
If a triangle-plane has all its corners in a line the plane is removed and an error message is
given. The cause of this error may either be a mistake (that has to be corrected) or as a result
of an export from AutoCAD that occasionally has been found to give these types of non-
planes.
Corners/nodes that touch edges of adjacent planes should be included in both planes, see
Fig. 2.5:
1
2
4
3
11
12
13
14
[1 big / 1 14 13 2 3 4 / abs1 ]
[2 small / 11 12 13 14 / abs2 ]

Fig. 2.5 Attaching plane corners properly
If corners 13 and 14 are not included in plane 1, debug will generate an "Edges cutting or
touching error" and also that 13 and 14 are "single-connected". These errors are not severe
but should, if possible, be avoided. When modeling from scratch in the GEO-format it is not
difficult but models imported from AutoCAD will typically have a lot of these errors.
For volume calculations to be correct models must be made without single-sided overlapping
planes. It can be described like this:

"all planes that do not have their backside towards the outside of the room must be
made double-sided".

and

all planes that can be reached by sound must be modeled - but only those planes must
be modeled and only those parts that can be reached by sound
The same rules holds for the "potentially reversed normal" debug check to work. The debug
option "single-connected corners" flags some problem planes but not all (e.g. the underside of
an audience must be included even if the audience is "boxed-in" if the floor under the
audience is still modeled, see example below). Another way to describe the matter is just like
the volume calculation algorithm works:

"if a ray from any position inside a room, sent out in any direction, passes an odd
number of planes on its way to infinity the position is inside, otherwise it is outside".
From this it can be seen that if one audience plane is placed on top of a full floor there can be
two passings of a ray signaling a truly inside position to be outside.
Any automatic calculation from an arbitrary geometry needs to rely on that the
geometry is built according to certain rules.
Figures below only show the floor/audience part but it is assumed that walls and ceiling are
present too.
2. PREDICTION MODULE
104

P
Q
P: outside room (false)
Q: inside room (correct)
1
2 1
audience surface
floor

Fig. 2.6 Geometrically incorrect method where volume estimate, surface
area and classical mean absorption will be wrong (Sabine RT).
Rays will also pass under and through the audience (from
below).
P
Q
P: inside room (correct)
Q: inside room (correct)
1
2
3 1

Fig. 2.7 Geometrically correct method but volume estimate, surface area
and classical mean absorption will be wrong (Sabine RT). Rays
will also pass under the audience.
P
Q
P: inside room (correct)
Q: inside room (false)
1
2
3 1
audience edges

Fig. 2.8 Geometrically correct method but volume estimate, surface area
and classical mean absorption will be wrong (Sabine RT).
This is the correct way and the audience block will be excluded from the volume:
P
Q
P: inside room (correct)
Q: outside room (correct)
1

Fig. 2.9 Geometrically correct method including correct volume and
Sabine RT.
2. PREDICTION MODULE
105
Example model
Below are the geometry-files for a simple hall. These files are in the CATTDATA-folder
MODELS\EXAMPLE.
Constants and INCLUDEs are used a lot to demonstrate the principle (and power) of these two
concepts. Main symbolic constants used can be seen in Fig 2.10 and main model corners in
Fig. 2.11.

Fig. 2.10 Description of constants used in the example hall.
A0
01
1
2
3
4
5
6
7
8
101
102
103
104
105
106
107
108
201
202
203
204
211
212
213
214
300
301
302
303

Fig. 2.11 COINFO.PLT for the example hall.
2. PREDICTION MODULE
106
The GEO-file inclusion "tree" looks like this:

MASTER.GEO
SIDES.GEO
ACROSS.GEO
AUDIENCE.GEO
REFL.GEO
MARKERS.GEO
The GEO-files:

GEO-file MASTER.GEO
;CATT-Acoustic v8.0 Manual Example Hall

; used in REFL.GEO to add more reflectors (if set to TRUE)
GLOBAL showcopy = FALSE

INCLUDE sides.geo
INCLUDE across.geo
INCLUDE audience.geo
INCLUDE refl.geo
INCLUDE markers.geo ;some non-acoustic visual elements

ABS birch = < 20 15 12 10 7 5 > L < 10 12 14 18 20 20> {159 152 96}
ABS somewood = birch
ABS absofix = < 20 30 40 50 60 70 : 90 95> {94 119 162}
; 8k and 16kHz added
ABS absorber = absofix
ABS custom = < 20 15 12 10 7 5 > L < 20 30 40 50 60 70 > {228 179 27}
ABS diffusor = custom

; general dimensions - change theses and the rest of the hall will
;follow !
; If you like to experiment change these to GETGLOBAL.
GLOBAL sh = 6 ; stage wall height
GLOBAL sd = 9 ; stage depth
GLOBAL sw = 11/2 ; stage back wall width/2

GLOBAL ph = 10 ; prosc height
GLOBAL pw = 17/2 ; prosc width/2
GLOBAL pth = 3 ; prosc top wall height
GLOBAL pbh = 1.2 ; prosc bottom wall height
GLOBAL psw = 4.5 ; prosc side wall width (1.5)

GLOBAL hd = 30 ; hall depth (without stage)

GLOBAL bww = 14/2 ; back wall width/2
GLOBAL bwh = 10 ; back wall height
GLOBAL fltilt = 2 ; floor tilt

CORNERS
; section is empty

PLANES
; section is empty


2. PREDICTION MODULE
107
GEO-file SIDES.GEO
;CATT-Acoustic v8.0 Manual Example Hall

OFFSETPL 10
MIRROR 100 10

CORNERS
1 sw -sd 0
2 pw 0 0
3 sw -sd sh
4 pw 0 ph

5 pw+psw 0 -pbh
6 x(5) 0 ph+pth

7 bww hd fltilt-pbh
8 bww hd z(7)+bwh
; MIRROR creates 101 - 108

PLANES

[0 stage wall / 1 3 4 2 / somewood ]
[1 prosc edge / 2 4 6 5 / absorber ]
[2 side wall / 5 6 8 7 / somewood ]
;creates planes 10 - 12 and MIRROR creates 20 - 22 (OBS OFFSETPL 10)

GEO-file ACROSS.GEO
;CATT-Acoustic v8.0 Manual Example Hall

LOCAL ay1 = 6
LOCAL ay2 = hd - 1

CORNERS

401 -ay1*x(5)/hd ay1 lock(106 108 6)
402 -ay2*bww/hd ay2 lock(106 108 6)
403 -x(402) y(402) lock(106 108 6)
404 -x(401) y(401) lock(106 108 6)

PLANES

[30 stage wall / 101 103 3 1 / somewood ]
[31 stage ceil / 103 104 4 3 / somewood ]
[32 stage floor / 1 2 102 101 / somewood ]
[33 bottom prosc / 105 102 2 5 / absorber ]
[34 top prosc / 104 106 6 4 / absorber ]
[35 hall ceiling / 106 108 8 6 /
( d / 401 402 403 404 / diffusor)
( w / 106 108 8 6 / somewood) ]
[36 back wall / 7 8 108 107 / somewood ]

GEO-file AUDIENCE.GEO
;AUDIENCE.GEO
;CATT-Acoustic v8.0 Manual Example Hall

OFFSETCO 200
OFFSETPL 50

2. PREDICTION MODULE
108
ABS aud = <35 53 73 80 79 75 : 80 90> L <30 40 50 60 70 70> {153 214
41} (on the same line)

LOCAL delta = 1.2
LOCAL audh = 1.2

LOCAL x1 = pw + psw - delta
LOCAL x2 = bww - delta
LOCAL y1 = delta
LOCAL y2 = hd - delta
LOCAL z1 = -pbh + audh
LOCAL z2 = z1 + fltilt

;string constants used in plane names below
LOCAL a = "audience"
LOCAL f = "floor"

CORNERS

;audience upper corners
1 x1 y1 z1
; corner 1 could as well be written with the equations like:
;1 pw+psw-delta delta -pbh+audh
;or
;1 (pw + psw - delta) delta (-pbh + audh)
2 x2 y2 z2
3 -x2 y2 z2
4 -x1 y1 z1

;audience floor corners
;note use of _ to access absolute external id:s (OFFSETCO is not
applied)
11 x1 y1 lock(_5 _105 _7)
12 x2 y2 lock(_5 _105 _7)
13 -x2 y2 lock(_5 _105 _7)
14 -x1 y1 lock(_5 _105 _7)

PLANES

[0 %a% / 1 2 3 4 / aud ]
[1 %a% front / 1 4 14 11 / aud ]
[2 %a% back / 12 13 3 2 / aud ]
[3 %a% side / 11 12 2 1 / aud ]
[4 %a% side / 13 14 4 3 / aud ]
[5 front %f% / _5 11 14 105 / somewood ]
[6 back %f% / _7 107 13 12 / somewood ]
[7 side %f% / _5 _7 12 11 / somewood ]
[8 side %f% / 107 105 14 13 / somewood ]

GEO-file REFL.GEO
;CATT-Acoustic v8.0 Manual Example Hall

LOCAL w = bww - 1.8; 0.2
LOCAL d = 7
LOCAL ty = 24.3
LOCAL tz = 10.5

2. PREDICTION MODULE
109
OBJECT
ROTATE -40 0 0
TRANSLATE 0 ty tz

;set showcopy = TRUE i MASTER.GEO to add these!
IF showcopy THEN
COPY 5 2 0 0 0 0 ty-1*(d+0.1) tz 0 0 0
COPY 10 4 0 0 0 0 ty-2*(d+0.1) tz 0 0 0
COPY 15 6 0 0 0 0 ty-3*(d+0.1) tz 0 0 0
ENDIF

OFFSETCO 300

CORNERS

0 -w 0 0
1 -w d 0
2 w d 0
3 w 0 0

PLANES
;* = size dependent auto edge diffusion
;(must be enabled in General settings)
[60 refl front / 0 1 2 3 / somewood* ]
;the back of a reflector MUST be defined too
[61 refl back \ 0 1 2 3 \ absorber* ]

GEO-file MARKERS.GEO
;CATT-Acoustic v8.0 Manual Example Hall
;Places a wall clock above the stage and adds a ruler to
;the stage wall

LOCAL clockradius = 0.55
LOCAL minhand = 0.5 ; length of clock minute hand
LOCAL hourhand = minhand*0.8 ; length of clock hour hand

CORNERS

;coordinates to place the "stage wall" text a bit over the floor
1001 x(1) y(1) z(1)+1
1002 x(2) y(2) z(2)+1

;coordinates for loading the chair
1010 0 y(2)-2 z(2)
1011 -2 y(2)-2 z(2)

;coordinates to place the clock
1020 0 y(4) z(4)+2 ;clock center
1021 x(1020)+hourhand*cos(45) y(4)+0.01 z(1020)+hourhand*sin(45)
;hour hand end
1022 x(1020)+minhand*cos(90) y(4)+0.01 z(1020)+minhand*sin(90)
;min hand end

PLANES
;empty

MARKERS
TEXT 4 104 106 {255 0 0} 0.1 "v8 Example Hall" 1.5 0.7
TEXT 1002 1001 3 {0 0 255} 0.1 " stage wall" 0.8 0.5
2. PREDICTION MODULE
110
LOAD 1010 1011 "bluechair"
;clock
DISC 1020 6 4 {0 255 0} 0.05 clockradius
CIRC 1020 6 4 {0 255 255} 0.05 clockradius
LINE 1021 1020 1022 { 0 0 0 } 0.12 ; the hands
;Ruler to show the stage height
RULE 2 4 6 {0 0 0} 0.2 1.0
Source-file
The source data has to be specified in a separate file with the extension .LOC in the input
folder as specified in the General settings dialog. This file is read after the GEO-files and can
therefore use global constants declared in these files. Normal name is SRC.LOC.
Syntax
The principles are the same as stated for the GEO-files in the previous sub-section. A source-
file must have two sections with the following order:

directives (constant declarations etc.)
SOURCEDEFS
source locations, aim, octave-band levels and delay.
The directives section may be empty but the string SOURCEDEFS must be present and at least
one source must be defined.
Directives section
SCALE sc_x sc_y sc_z

LOCAL name = expr|string (multiple)
#L name = expr|string (short form)

GETLOCAL name = expr|string + options (multiple)
These have the same meaning as in GEO-files. There is no point in defining global constants
in the source-file since it is the last file to be read.
Sourcedefs section
With the prediction of measures that are not only relative early/late measures (SPL, STI and
RASTI) the level at 1m in front of a source must be set to the actual level. However, for
auralization the acoustical source spectrum (of a talker, singer or instrument) is present in the
anechoic speech/music and is removed from calculated echograms before post-processing
leaving only the system gain/eq to affect the sound (for natural sources the gain is 0 dB). This
eq/gain can optionally be switched off at post-processing (as if the system was ideally flat with
0 gain). By removing the acoustical source spectrum it is also reasonable to switch anechoic
material as long as the implied source has a directivity pattern similar to the one given in the
source-file.

2. PREDICTION MODULE
111
SOURCEDEFS
If a source is of natural type (talker, singer, instrument, machine):

s_id s_x s_y s_z dirname[.SD0|.SD1|.SD2] a_x a_y a_z [roll
[MAPRAYFACTOR = f]] (on one line)
Lp1m_a = Lp1m_a_description
or
s_id s_x s_y s_z anechoic.WAV a_x a_y a_z [roll [MAPRAYFACTOR = f]]
Lp1m_a = Lp1m_a_description

or as one of the above where a_x a_y a_z is replaced by the aim(H,V) function.

Where:
s_id: source id (A0..A9 - Z0..Z9 allowing for 260 sources). The sources can be
entered in any order and in any combination.
s_x, s_y, s_z: source center location coordinate as floating point numbers, declared
constants, or expressions. The lock(), cut(), x(), y(), z() functions
can also be used (e.g. to lock a source to a fixed distance from a movable
wall). Note: a source must not be placed exactly inside a wall since it will
result in ray loss.
dirname source directivity name in the CATTDATA folder SD (filename
dirname.SD0, dirname.SD1, dirname.SD2, dirname.CF1 or
dirname.CF2) or in a sub-folder to SD (filename subfolder\
dirname.SD0 etc.) or OMNI for a predefined omni-directional natural
source. If no extension is specified SD0 is assumed. A source-name can
be copied using the Directivity module Utilities menu and pasted into
CATT-Edit while editing the source-file.
a_x, a_y, a_z: coordinate of where to aim the source. The lock(), cut(), x(), y(),
z() functions can also be used. When using the predefined OMNI source,
the aim has no effect but must be given, it is useful for the 3D-viewer
source view points.
aim(H,V): source aiming angles as an alter-
native to an aim coordinate. Angle
conventions according to fig.
If aim() is used, an aim line is
calculated to where the first surface
is hit.
roll: optional roll angle, in degrees, around
the source axis (defined by
s a) looking down the axis from
s_to a_. Positive angles assume
clockwise rotation around the axis.
The roll angle is indicated in the SRCINFO.PLT geo-check plot-file.
f (MAPRAYFACTOR) a factor 0.1..1.0 to apply to the number of rays chosen in
audience area mapping with this source. If the map ray factor is used, also
the roll angle must be given (even if zero). Note: If the factor given will
make the number of rays used be less than 100 it will be selected as 100
x
y
z
aim line
H
V
-180 H 180
-90 V 90
H=0,V=0 is the y-axis
H > 0 on the positive x side
V > 0 on the negative z side
2. PREDICTION MODULE
112
(no matter the number of rays the direct sound is the same). If this option
is used it is documented in the plot-file title bar as /F and is also indicated
in MAPSTAT.TXT along each source listed
anechoic.WAV means that the directivity is taken from the anechoic WAV-file info:
CATTDATA-folder ANECHOIC\anechoic.AWI (if present for the anechoic
file). See Post-Processing:Utilities for how to create AWI-files.
Lp1m_a_description:
< Lpa125 .. Lpa4k [ : Lpa8k Lpa16k ] >
the SPL values at 1m on axis of the natural source. Lpa8k and
Lpa16k are sound pressure levels for the 8 and 16 kHz octave-
bands. These values are optional if not included they are
extrapolated from 2k and 4k values.
Lp_nominal the Nominal SPL 1m values on axis (as set in the Directivity
module for the directivity)
Lp_max the Max SPL 1m values on axis (as set in the Directivity module
for the directivity)
Lp_voice_normal shorthand for <N125 .. N16k> (predefined normal voice level
constants, see below)
Lp_voice_raised shorthand for <R125 .. R16k> (predefined raised voice level
constants, see below)
Lp_voice_loud shorthand for <L125 .. L16k> (predefined loud voice level
constants, see below)
Lp_voice_IECmale LpA
shorthand for an IEC 2003 60286-16 [IEC 2068-16] male speech
spectrum with an LpA A-weighted level, to be used for STI.
Relative 125-16k 1/1-octave spectrum (giving 0 dBA) is:
2.9 2.9 -0.8 -6.8 -12.8 -18.8 -24.8 (-35) dB
Lp_voice_IECfemale LpA
shorthand for an IEC 2003 60286-16 female speech spectrum
with an LpA A-weighted level, to be used for STI. Relative 125-
16k 1/1-octave spectrum (giving 0 dBA) is:
(-15) 5.3 -1.9 -9.1 -15.8 -16.7 -18 (-35) dB
Lp_white Lpa1k creates a white spectrum (+3dB/octave) with Lpa1k at 1kHz
Lp_pink Lpa1k creates a pink spectrum (0dB/octave) with Lpa1k at 1kHz
anechoic.WAV SPL values at 1 m on axis taken from an anechoic WAV-file info:
CATTDATA-folder ANECHOIC\anechoic.AWI (if present for the
anechoic file given). See Post-Processing:Utilities for how to
create AWI-files.
If a source is of electro-acoustic type (loudspeaker of some kind):

s_id s_x s_y s_z directivity[.SD0|.SD1|.SD2|.CF1|.CF2] a_x a_y a_z
[[roll] MAPRAYFACTOR = f] (on one line)
Lp1m_a = Lp1m_a_description
Lp1m_ea = Lp1m_ea_description
Delay_e = delay
2. PREDICTION MODULE
113

or

s_id s_x s_y s_z directivity[.SD0|.SD1|.SD2|.CF1|.CF2] a_x a_y a_z
[[roll] MAPRAYFACTOR = f] (on one line)
Lp1m_a = Lp1m_a_description
Gain_a = < G125 .. G4k [ : G8k G16k ] >
Delay_e = delay

or as one of the above with a_x a_y a_z replaced with aim(H,V).

Where:
Lp1m_a_description:
< Lpa125 .. Lpa4k [ : Lpa8k Lpa16k ] >
the SPL values at 1m on axis of the acoustical source (see
Lp1m_a_description above about the 8k and 16k values)
Lp_voice_normal see above
Lp_voice_raised see above
Lp_voice_loud see above
Lp_voice_IECmale LpA
see above
Lp_voice_IECfemale LpA
see above
Lp_white Lpa1k see above
Lp_pink Lpa1k see above
Lp_sensitivity uses the source Sensitivity and with Gain_a = < 0 0 ...>
the SPL at 1m on axis (Lp1m_ea) will then roughly correspond to
that of 1 W input (assuming 8 ohm). Note: CF1 and CF2 files do
not always have Sensitivity specified (e.g. not for an active or
powered loudspeaker). Note: when using this option with
auralization and a flat Gain_a it will be as if the speaker was flat
since Lp1m_a is removed before creating the impulse response
and is instead replaced by the spectrum of the anechoic input
WAV. If the eq effects of a non-flat Sensitivity is to affect the
auralization, the corresponding eq values have to be added to
Gain_a.
anechoic.WAV see above.
Lp1m_ea_description:
< Lpea125 .. Lpea4k [ : Lpea8k Lpea16k ] >
the SPL values at 1m on axis of the loudspeaker (see
Lp1m_a_description above about the 8k and 16k values)
Lp_max see above
Lp_white Lpea1k see above
2. PREDICTION MODULE
114
Lp_pink Lpea1k see above
< G125 .. G4k [ : G8k G16k ] >
is the system total gain (Lp1m_ea is then calculated to be = Lp1m_a +
Gain_a)
delay delay in ms (has to be given even if it is zero). The delay is taken into
account for Audience area mapping, Source addition and multiple source
auralization using SIM-file and WAV-file addition.
For remaining parameters for an electro-acoustic source (s_id, s_x, f, etc.) see natural
source.
Examples assuming Talker.SD0 is a natural source and Horn.SD1 is a loudspeaker:

LOCAL g = 10 ;system gain

SOURCEDEFS

;A0 and A1 give the same Lp1m_a levels expressed in two ways
A0 -1 2 1.7 Talker.SD0 0 3 1.7
Lp1m_a = <L125 L250 L500 L1k L2k L4k>

A1 1 2 1.7 Talker.SD0 0 3 1.7
Lp1m_a = Lp_voice_loud

;B0 and B1 give the same Lp1m_ea levels expressed in two ways

B0 -1 -1 1.7 Horn.SD1 0 3 1.7
Lp1m_a = <N125 N250 N500 N1k N2k N4k> ; the spectrum of the talker
Lp1m_ea = <N125+g N250+g N500+g N1k+g N2k+g N4k+g>
Delay_e = 0 ; delay has to be given even if it is 0

B1 1 -1 1.7 Horn.SD1 0 3 1.7
Lp1m_a = Lp_voice_normal
Gain_a = <g g g g g g>
Delay_e = 0

;C2 uses the anechoic WAV-file info embedded in an AWI-file
; assumes that Mt_44_an.AWI has directivity and Lp 1m info.
C2 1 -1 1.7 Mt_44_an.WAV 0 3 1.7
Lp1m_a = Mt_44_an.WAV
Note: if SCALE is used in all GEO-files as well as in the receiver- and source-files using x(),
y(), and z() functions will scale twice since scaling has already been performed. In such a
case use e.g. 1+x(12)/s, where s is the scale factor, to prevent the extra scaling.
Note: the predefined OMNI source is treated as an natural source, if an electro-acoustic
source will be used with omni-directional directivity a directivity file has to be created for it with
a name different from OMNI.SD0. Since many omni sources are not very omni at mid and
high frequencies a measured directivity is preferred when comparing to measurements.
Various octave-band speech spectrums at 1 m distance have been defined by ANSI S3.79
(draft) as spectral densities at the center frequencies and as an average for males and
females. The corresponding Lp1m_a values have been calculated and are included as
predefined global constants (as well as used in Lp_voice_normal etc.):
2. PREDICTION MODULE
115
Normal vocal effort Raised vocal effort Loud voice
N125 = 51.2 R125 = 55.5 L125 = 58.0
N250 = 57.2 R250 = 61.5 L250 = 64.0
N500 = 59.8 R500 = 65.6 L500 = 70.3
N1k = 53.5 R1k = 62.4 L1k = 70.7
N2k = 48.8 R2k = 56.8 L2k = 65.9
N4k = 43.8 R4k = 51.3 L4k = 59.9
N8k = 38.8 R8k = 42.5 L8k = 48.9
N16k = 33.8 R16k = 33.8 L16k = 37.8 (extrapolated from 4k and 8k)
Note: the 125 Hz SPL is not defined in the standard and has been set to -6dB lower than the
250Hz band. The 16k values are extrapolated from 4k and 8k. A useful information may be
that the three levels of speech correspond to the following overall A-weighted values: 59.5
dBA (normal), 66.5 dBA (raised) and 73.6 dBA (loud). An alternative to using these speech
levels are the Lp_voice_IEC... shortcuts.
Example
The example below is the CATTDATA-folder\MODELS\EXAMPLE\SRC.LOC. See fig 2.9.

;CATT-Acoustic v8.0 Manual Example Hall
LOCAL sh = 1.7

SOURCEDEFS

A0 3.0 -2.0 sh OMNI 0.0 10.0 2.0
Lp1m_a = <70 73 76 79 82 85>

B0 -2.0 -5.0 sh OMNI 0.0 10.0 2.0
Lp1m_a = <70 73 76 79 82 85>
Receiver-file
The receiver data has to be specified in a separate file with the extension .LOC in the input
folder as specified in the General settings dialog. Normal filename is REC.LOC.
Syntax
The principles are the same as stated for the GEO-files. The receiver-file must have two
sections with the following order :

directives (constant declarations etc.)
RECEIVERS
receiver locations and optional individual head-directions
The directives section may be empty but the string RECEIVERS must be present and at least
one receiver must be defined.
2. PREDICTION MODULE
116
Directives section
SCALE sc_x sc_y sc_z

GLOBAL name = expr|string (multiple)
#G name = expr|string (short form)

LOCAL name = expr|string (multiple)
#L name = expr|string (short form)

GETGLOBAL name = expr|string (+ options) (multiple)
GETLOCAL name = expr|string (+ options) (multiple)
These have the same meaning as in GEO-files. Global constants declared in the receiver-file
will be known also in the source-file.
Receivers section

RECEIVERS
r_id r_x r_y r_z [h_x h_y h_z] [ < n125 n250 n500 n1k n2k n4k
[ : n8k n16k ] ] > [OVERRIDE] (on one line)
...
The string RECEIVERS to mark start of receiver locations.
r_id: receiver id (0-99). The receivers can be entered in any order and in any com-
bination.
r_x, y, z: receiver location coordinates as floating point numbers, declared constants, or
expressions. The lock(), cut(), x(), y(), z() functions can also be used
(e.g. to lock all receivers to a fixed distance above the audience planes). Note:
a receiver must not be placed exactly inside a wall since it will result in ray
loss.
h_x, y, z: optional individual receiver head-direction. If not given, the selection in
General settings is used (Stage, Source or Fixed). Useful e.g. with the walk-
through convolver since receiver positions and head-directions can be created
along a path in a 3D graphics-software walkthrough.
n125... As an alternative to using the constant background noise in General
settings/Acoustic Environment (Env.) in STI and RASTI and U50 calc-
ulations, each receiver can be assigned a specific background noise
(estimated from a noise map or via a separate Full detailed calculation with
only noise sources). The STI and RASTI plot-files will indicate the constant
background level but mark with the letter N all receivers that have individual
noise (the information on the actual noise used can then be seen in the result
textfiles). Receivers that has no indicated individual noise will use the constant
background noise from Env. while individual noise will be the given values as
above plus power addition of the residual noise in Env. Examples:
10 1 3 1.2
uses the constant background noise
11 0 3 1.2 <50 60 70 70 70 70>
uses the given noise + residual noise, 8k an 16k extrapolated
2. PREDICTION MODULE
117
12 -1 3 1.2 -1 5 1.2 <50 60 70 70 70 70>
uses the given noise + residual noise, 8k an 16k extrapolated
13 -2 3 1.2 <50 60 70 70 70 70 : 60 50>
8k and 16k also given, uses the given noise + residual noise
Note: if individual receiver background noise has been used it will apply also in
Source addition until Bkg noise change is selected where all receivers will get
the selected noise.
OVERRIDE when using receiver loops it sometimes will place a few receivers inside say
pillars and similar. Adding this keyword allows positions created in a loop to
afterwards be overridden by a new explicitly given position.
Note: if SCALE is used in all GEO-files as well as in the receiver- and source-files using x(),
y(), and z() functions will scale twice since scaling has already been performed. In such a
case use e.g. 1+x(12)/s, where s is the scale factor, to prevent the extra scaling.
To create receiver coordinates with some repetition or with other inherent logic the
recloop(), recloop2() or recwalk() functions can be used. These functions are used
instead of an id r_x r_y r_z or id r_x r_y r_z h_x h_y h_z sequence.
recloop() syntax (on one line):
recloop(id_start,i,i_start,i_stop,i_step,x_expr,y_expr,z_expr)

id_start start of receiver ids to be generated by the
function, for each new coordinate this number
is incremented by 1
i loop variable (must be chosen not to clash
with a constant name used in any of the
expressions for x, y, and z)
i_start integer start value for I
i_stop integer stop value for I
i_step integer step for i, can be < 0 for backwards
stepping
x_expr expression for the x-coordinate (optionally
including loop variable i )
y_expr expression for the y-coordinate (optionally
including loop variable i )
x_expr expression for the z-coordinate (optionally
including loop variable i )
Example: to generate a matrix of say 5 lines of 8 receivers, 5 recloop() can be used
instead of 5x8=40 lines of individual receiver definitions, for example:
RECEIVERS
recloop(00,q,0,7,1,-6,2.0+q*2,1.2) ;creates 00..07
recloop(10,q,0,7,1,-3,2.0+q*2,1.2) ;creates 10..17
recloop(20,q,0,7,1, 0,2.0+q*2,1.2) ;creates 20..27
recloop(30,q,0,7,1, 3,2.0+q*2,1.2) ;creates 30..37
recloop(40,q,0,7,1, 6,2.0+q*2,1.2) ;creates 40..47
An advanced use could be to combine a loop with string constants so that the step size is
easy to change:
2. PREDICTION MODULE
118
LOCAL expr = " -6 , 2.0+q*2 , 1.2 "
RECEIVERS
recloop(00,q,0,7,1,%expr%)
recloop(10,q,0,7,1,%expr%)
recloop(20,q,0,7,1,%expr%)
recloop(30,q,0,7,1,%expr%)
recloop(40,q,0,7,1,%expr%)

recloop2() syntax (on one line):
recloop2(id_start,i,i_start,i_stop,i_step,x_expr,y_expr,z_expr,
x_expr2,y_expr2,z_expr2)
This syntax is identical to that of recloop() except that three additional expressions are
given for the individual head directions, e.g.:
RECEIVERS
recloop2(00,q,0,7,1,-6,2.0+q*2,1.2,-7,2.0+q*2,1.2)
recloop2(10,q,0,7,1,-3,2.0+q*2,1.2,-4,2.0+q*2,1.2)
recloop2(20,q,0,7,1, 0,2.0+q*2,1.2,-1,2.0+q*2,1.2)
recloop2(30,q,0,7,1, 3,2.0+q*2,1.2, 2,2.0+q*2,1.2)
recloop2(40,q,0,7,1, 6,2.0+q*2,1.2, 5,2.0+q*2,1.2)
A loop-like function recwalk(), is made to simplify good receiver placements for real time
walkthrough auralization using CATT-Walker, see Post-processing and Walker.PDF. The
function creates concentric circles of receivers around a defined point, with selected angle and
radius step and confined within a defined rectangle. recwalk() is meant to be used when
walkthrough around a source is desired since then the receiver density has to be high, it is
also advisable to place four receivers around the source position inside the first circle. Further
out in the room, or if walkthrough close to the source is not interesting, a rectangular receiver
grid works well and can be created by a couple of recloop() functions.
recwalk() syntax (on one line):
recwalk(id_start,x0_expr,y0_expr,da_expr,dr_expr,xmin_expr,ymin_expr,
xmax_expr,ymax_expr,z_expr)

id_start start of receiver ids
x0_expr x-coordinate of the circle center,
typically the source
y0_expr y-coordinate of the circle center,
typically the source
da_expr angle step in degrees
dr_expr radius step
xmin_expr lower limit of receiver x coordinates
ymin_expr lower limit of receiver y coordinates
xmax_expr upper limit of receiver x coordinates
ymax_expr upper limit of receiver y coordinates
z_expr receiver z coordinates

2. PREDICTION MODULE
119
Notes for all loops :
decimal comma cannot be used in the x-, y- and z- expressions but only decimal point
(comma is used to separate parameters).
the selected loop variable must not clash with any other used letter in an expression (if e.g.
sin() is used, s, i or n cannot be used as a loop variable) .
if an error occurs the displayed loop arguments will not look exactly as entered since all
blanks have been removed (if lock() was used the blanks between the ids are replaced
by a colon (:) like lock(1 2 3) will become LOCK(1:2:3)). This is done to simplify
parsing.
just like with individually entered receiver coordinates, any SCALE directive in effect will
scale the values after they have been created.
Example
The example below is the CATTDATA-folder\MODELS\EXAMPLE\REC.LOC. See fig 2.9.

;CATT-Acoustic v8.0 Manual Example Hall
LOCAL dx = 1.9 ; column spacing
LOCAL x0 = 0
LOCAL x1 = x0 + dx
LOCAL x2 = x1 + dx
LOCAL x3 = x2 + dx
LOCAL x4 = x3 + dx
LOCAL x5 = x4 + dx
LOCAL dy = 7 ; row spacing
LOCAL y0 = 5
LOCAL y1 = y0 + dy
LOCAL y2 = y1 + dy
LOCAL y3 = y2 + dy
LOCAL dz = 0.5 ; height spacing
LOCAL z0 = 0.6
LOCAL z1 = z0 + dz
LOCAL z2 = z1 + dz
LOCAL z3 = z2 + dz

RECEIVERS
1 -x4 y0 z0
2 -x3 y0 z0
3 -x2 y0 z0
4 -x1 y0 z0
5 x0 y0 z0
6 x1 y0 z0
7 x2 y0 z0
8 x3 y0 z0
9 x4 y0 z0
10 -x4 y1 z1
11 -x3 y1 z1
12 -x2 y1 z1
13 -x1 y1 z1
14 x0 y1 z1
15 x1 y1 z1
16 x2 y1 z1
17 x3 y1 z1
2. PREDICTION MODULE
120
18 x4 y1 z1
19 -x3 y2 z2
20 -x2 y2 z2
21 -x1 y2 z2
22 x0 y2 z2
23 x1 y2 z2
24 x2 y2 z2
25 x3 y2 z2
26 -x3 y3 z3
27 -x2 y3 z3
28 -x1 y3 z3
29 x0 y3 z3
30 x1 y3 z3
31 x2 y3 z3
32 x3 y3 z3

2. PREDICTION MODULE
121
2.4 Output-files
This section contains a list of all result plot- and text-files created by the Prediction module. It
complements the general overview of file-types in Section 1.4. All files except *.TXT are in
binary format. Most kinds of echogram graphs display a dual time axis, the upper axis is
calculated from the direct sound arrival, the lower from the emission of sound. Note that the
lower axis is rounded to ms so if the actual initial delay is e.g. 7.2 ms the lower axis will start at
7 ms.
General
PLT .TXT Each time PLT-files are created a list of the files are created and loaded
into the PLT viewer module. This plot-file list is named according to the
combination of actions requested by concatenating short descriptive
names: PLT _GEO _MAPD _MAPDR _ISM _FULL so that with e.g. a
Geometry view/check plus Full detailed calculation the plot-file list will
be named PLT_GEO_FULL.TXT. Plot-file lists can also be loaded via
List|Open List-file.
Geometry view/check results
Selected in the Geometry view/check dialog:
VIEW4.PLT Plan, side, and top views plus a parallel 3D projection. Sources and
receivers are marked. If audience planes are selected for Audience area
mapping they are marked grey and the audience surface-area is displayed.
For closed models the estimated volume is also displayed (if a model is
said to be closed in Geometry view/check dialog but found to be open,
the volume is displayed in round brackets). If only a geometry check is
performed, the volume estimate is less accurate than for full calculations
and Interactive RT estimate.
SRCINFO.PLT Similar to VIEW4.PLT but instead of
a 3D projection data for each source
selected is shown in plot sub-frames.
If a source is not omni-directional the
source visual is shown. Source aim
angles are defined as in fig:


COLORED.PLT A colored 3D projection of the hall. Sources and receivers are marked.
Head directions (if not towards source) and source aim (if not Omni
directivity) are marked as a line pointing out from the receiver or source.
The reflecting side of surfaces are colored according to the assigned
surface colors. If a source is not omni-directional the source visual is
shown.
SHADED.PLT A shaded 3D projection of the hall. Sources and receivers are marked.
Head directions (if not towards source) and source aim (if not Omni
x
y
z
aim line
H
V
-180 H 180
-90 V 90
H=0,V=0 is the y-axis
H > 0 on the positive x side
V > 0 on the negative z side
2. PREDICTION MODULE
122
directivity) are marked as a line pointing out from the receiver or source.
The reflecting side of surfaces are given a viewing-angle dependent
shading. If a source is not omni-directional the visual is shown.
SHADED.OGL A shaded 3D projection of the hall for the OpenGL-based CATT 3D-viewer.
Similar to COLORED.PLT but with more 3D functions, lighting, a
walkthrough option, animated viewpoint transitions, optional -3, -6 and --9
dB directivity contours etc. The source visual is shown. The 3D-viewer
allows for sub-division selection with data display and selection of a list of
planes, this list of plane ids can be pasted into a plane set edit (Free form
edit) dialog such as e.g. Audience planes in the Audience are mapping
dialogs.
COINFO.PLT A wire-frame model with all corner ids displayed (no shading). Note: a
hidden option will enable showing also ids not used in any plane.
PLINFO.PLT A wire-frame model with data on all planes included as plot sub-frames. All
planes must have their front sides (the side that can be hit by sound)
colored with the assigned surface color and the back be black (or the plane
corner entering order must be reversed). Absorption coefficients are
shown in black, scattering coefficients (surface and auto-edge) in red,
transmission coefficients are shown under the absorption coefficients in
green and in the graph by a dotted green line. Some planes have codes
(e.g. -o), see DEBUG.TXT below. The name of the GEO-file and the line
number where the plane was defined name is given as FILENAME:nnn.
REFLINFO.PLT A wire-frame model with data on all selected planes included. Each
selected plane is a plot sub-frame showing edge reflection contours from
each source. Note that the contour is purely geometrical and no con-
sideration to diffraction or diffusion is taken. Contours for not selected
planes are shown gray.
SRCINFO3D.PLT Similar to SRCINFO.PLT but a 3D wire-frame model where the -3dB
contours are shown for each source for the selected octave-bands.
Contours for not selected sources are shown grey.
name.CMB Optionally created source combination file for the Source addition module
(automatically created if ADD-files are selected in Early part detailed ISM
or Full detailed calculation. name is taken from the current source-file).
DEBUG.TXT Optional text-file describing the geometry in detail as well as any
geometrical errors found, see Section 2.2. Planes listed have codes
describing the type of plane: -c (concave plane i.e. with reentrant angles),
-o (obscuring plane i.e. it can intercept a ray between two other planes), -
d (double-sided plane - the other side's plane id follows). Plane sub-
divisions have codes -c (concave sub-division), -* (has diffusing
properties). If a list of planes is selected the plane corners of concave
planes are, for debugging purposes, indictated by x (used in plane
equation), * (on the convex hull) and - (not on the convex hull). Example:

CATT-Acoustic v8.0a debug : Sample shoebox
----------------------------------------------------------------------
DUPLICATE PLANE ID's : no !
DUPLICATE CORNER ID's : no !
DUPLICATE CORNERS : no !
SINGLE-CONNECTED CORNERS : no !
INACCURATE PLANE CORNERS : no !
EDGES CUTTING/TOUCHING : no !
POSSIBLY REVERSED PLANES : no !
----------------------------------------------------------------------
2. PREDICTION MODULE
123

----------------------------------------------------------------------
ID x y z Used in planes
----------------------------------------------------------------------
1 -5,000 0,000 0,000 1 3 5
2 -5,000 24,000 0,000 1 4 5

13 5,000 24,000 8,000 2 4 6
14 5,000 0,000 8,000 2 3 6

Planes used (* = diff) : 1* 2* 3* 4* 5* 6*

Plane ID: 1
Name : floor (S= 240,0m)
Corners : 4 3 2 1
Equation: 0,0000 0,0000 1,0000 0,0000
Abs/Diff:AUDIENCE <40 50 60 70 80 80 : 80 : 80> L <30 40 50 60 70 80 : 90 99>

Plane ID: 2
Name : ceiling (S= 240,0m)
Corners : 11 12 13 14
Equation: 0,0000 0,0000 -1,0000 8,0000
Abs/Diff:WOOD <15 13 10 9 8 7 : 6 5> L <30 30 30 30 30 30 : 30 30>

Audience area mapping results
Selected in the Audience area mapping dialogs:
The calculation case for mapping calculations is documented in the plot-file title (the yellow bar
below the plot) by a string:
N/tr/height/P/A/F
Where:

N number of rays
tr ray truncation-time, ms
height map height over the selected audience planes, m
/P if direct sounds are added with phase
/A if Adapt rays is in effect
/F some source used a MAPRAYFACTOR (see source-file)
For example: 10000/1300/0.5/P means 10000 rays traced for 1300 ms and a map height
of 0.5 m, direct sounds added with phase.
SPL_oct.PLT Sound pressure level coverage maps for the time-intervals indicated.
SPLDIR_oct.PLT Direct sound pressure level coverage maps for the time-intervals
indicated.
SPL_oct_n_3D.PLT
3D SPL coverage map for time-interval n.
SPLDIR_oct_n_3D.PLT
3D Direct sound SPL coverage map for time-interval n.
LF_oct.PLT LF coverage maps for the time-intervals indicated.
2. PREDICTION MODULE
124
LF_oct_n_3D.PLT
3D LF coverage map for time-interval n.
LFDIR_oct.PLT Direct LF coverage maps for the time-intervals indicated.
LFDIR_oct_n_3D.PLT
Direct 3D LF coverage map for time-interval n.
RASTI.PLT RASTI coverage map both with and without background noise.
RASTI_with_noise_3D.PLT
3D version.
RASTI_without_noise_3D.PLT
3D version.
STI_name.PLT STI coverage map both with and without background noise. STI type can
be selected in Preferences, depending on type chosen the name part of
the file changes: orig, mdfd, IECm, IECf or user.
STI_name_with_noise_3D.PLT
3D version.
STI_name_without_noise_3D.PLT
3D version.
PARn_oct.PLT Parameter maps (n = 1,2,3) as selected.
param_oct_3D.PLT
3D for param (e.g. D50).
PARnDIR_oct.PLT
Parameter maps direct sound only (n = 1,2,3) as selected.
paramDIR_oct_3D.PLT
3D for param (e.g. SPL).
NOISEMAP_oct.PLT
With noise-mapping the actual noise SPL map created by the defined
noise sources.
NOISEMAP_oct_3D.PLT
3D version.
For A-weighted results the oct part of the syntax is asum
On each color scale min and max lines are drawn.
Audience area mapping statistics
When mapping is requested for any of the measures D-50/C-50, C-80, LF, SPL, RT', Ts,
RASTI or STI, map statistics is automatically written to a text-file MAPSTAT.TXT in the output
folder plus a version made for spreadsheet import (semicolon delimited) MAPSTATx.TXT (and
shows up in the Prediction:Latest results dialog as do all created text-files). This file first lists
information about all sources used and then the percentage of map points having predicted
values in different intervals together with simple bar graph for a quick overview (one * = 1%
rounded). An example for LF:
2. PREDICTION MODULE
125
-------------------------
LF 2 kHz [%]
-------------------------
< 5.0 : 0.83 % *
5.0 - 10.0 : 2.50 % ***
10.0 - 15.0 : 8.75 % *********
15.0 - 20.0 : 13.75 % **************
20.0 - 25.0 : 12.92 % *************
25.0 - 30.0 : 18.33 % ******************
30.0 - 35.0 : 31.25 % *******************************
35.0 - 40.0 : 11.25 % ***********
40.0 - 45.0 : 0.42 %
45.0 - 50.0 : 0.00 %
> 50.0 : 0.00 %
-------------------------
The choice was made to make a simple text-file rather than a plot-file graph since some users
anyway may want to cut/paste this information into a report table. The internal implementation
allows for uneven sized intervals (e.g. for RASTI, see below) but so far this is not reflected and
intervals are simply set to reasonably well correspond to the difference limen of each
measure:

Parameter Min Step Max Unit Comment
D-50 10 10 90 % i.e. ranges: <10,10-20,..,80-90,>90
C-50 -10 1 10 dB
C-80 -10 1 10 dB
LF 5 5 50 % See example above
SPL max-20 1 max dB top 20 dBs are divided in 1 dB steps
G max-20 1 max dB see SPL
RT' min 0.1 max s
Ts min 10 max ms
RASTI 30 15 75 % i.e.: <30,30-45,45-60,60-75,>75 *)
STI 30 15 75 % see RASTI
*) Corresponds to the BAD, POOR, FAIR, GOOD, and EXCELLENT ranges.
Note: if a map is made in such a way that a large fraction of the map points are partly out of
walls or are not hit at all because of blocking it has to be taken into account by comparing with
the map plot-file (mostly happens with a large map step). The statistics evaluates how many of
the map points that have been hit at all fall into the categories given.
Note: audience area mapping results are always for the sum of all sources selected including
any source delays.
If noise-mapping is used a special MAPSTAT_NOISEMAP.TXT is created. If the statistics of the
noise-map SPL is quite even the average can be used as a Total average Background noise
in General settings and the noise-mapping and the noise sources be switched off.
Early part detailed ISM results
Selected in the Early part detailed ISM dialog:
The calculation case for early part ISM calculations is documented in the plot-file title (the
yellow bar below the plot) by a string:
S/D/te
2. PREDICTION MODULE
126
Where:
S Specular reflection order
D Diffuse reflection order (or "-" if diffusion is off)
te Truncation-time, ms
For example: 4/1/150 means 4 orders of specular reflection, 1 order of diffuse reflection and
early part truncated at 150 ms.
I_ss_rr_oct.PLT Echogram plot-files for each octave.
H_ss_rr_oct.PLT Echogram and interactive specular reflection trace (first order diffuse
reflections are colored red). In the lower right graph plane ids that are
encountered by each reflection is displayed (S = source and R =
receiver so that S-12-10-R means a 2
nd
order reflection in planes 12
and 10). The lower left shows source exit angles as the ray (line length
affected by directivity) projected in two planes. The upper right shows
the incidence angles to the receiver displayed in a similar manner (line
length affected by reflection strength). Note: the 3D view of the model
can be rotated unless the 2D version of this plot is selected in
Preferences.
I_ss_rr.TXT Hidden option (see Section 1.3): A text-file with all reflections are
created. The file is intended for those that may want to do a post-
processing of their own for some special purpose, 8k and 16k values
are included according to Preferences. The file has the following
structure (decimal point or comma is used depending on Windows
Control-panel Regional settings):

#HEADER
(header data similar to PARAM_ss.TXT, skip to #DATAFIELDS if not required)
#DATAFIELDS
TYPE DELAY ORDER AZIMUTH ELEVATION SPL125 SPL250 SPL500 SPL1K SPL2K
SPL4K SPL8K SPL16K IS_x IS_y IS_z (on one line)
(these fields indicate which fields are in the #DATA section below, and in what order:
TYPE is d = direct sound, s = specular, * = diffuse (not sorted in time);
DELAY is delay relative direct sound arrival in ms;
ORDER is reflection order (diffuse ones always have 1);
AZIMUTH is the standard azimuth relative the listener head (affected by head-
direction);
ELEVATION is the standard elevation relative the listener head (affected by head-
direction); x-axis is left to right, y-axis is in the nose direction, and z-axis is
up, frontal incidence will thus be at 90,90 degrees. Look at the history plot-
file in parallel if in doubt about the angle values;
SPL... is the SPL for the corresponding octaves);
IS_x,y,z image source location in in m.
#DATA
2. PREDICTION MODULE
127
d 0.00 0 90.00 90.00 69.1 69.1 69.1 69.1 69.1 69.1 ...
s 0.96 1 90.00 101.81 67.3 67.3 67.3 67.3 67.3 67.3 ...
s 5.81 1 90.00 89.20 66.7 66.7 66.7 66.7 66.7 66.7 ...
(rest of the data)
#END
S_ss_rr_oct.PLT Image source space plot-files where the circle area is proportional to
the image source power. The lower right graph displays the estimated
late part reflection growth together with actual early part growth (using
classical theory for the late part requiring a closed shape). In each view
are shown only those image sources that are contained in a slice of
space described in the other views. For example, in the x-y view only
the sources between the horizontal dotted lines in the y-z view are
shown so that they represent what is heard in the horizontal plane.
E_ss_rr.ECH Echogram files for the post-processing module (only for special cases).
E_ss_rr.ADD Echogram files for the Source addition module (only for special cases).
name.CMB Source combination file for the Source addition module automatically
created if ADD-files are selected. name is taken from the current
source-file.
Full detailed calculation results
Selected in the Full detailed calculation dialog
The calculation case for full detailed calculation is documented in the plot-file title (the yellow
bar below the plot) by a string:
N/tr
Where:
N Number of rays
tr Ray truncation-time, ms
For example: 2000/1500 means 2000 rays traced for 1500 ms.
E_ss_rr_oct.PLT Echogram plot-files for each octave with extensive information:
upper left:
full echogram (black curve) with backward integrated decay (red curve), reverberation
time regression lines and coefficients;
upper right:
early part discrete reflections: direct sound (blue bar with a ring), first and second order
specular reflections (blue bars), first order diffuse reflections (red bars), all other
reflections (black bars);
early part smoothed echogram (lower red curve, filter can be selected);
early part backward (upper red curve) and forward integrated (upper black curve), the
crossing of the forward and backward integrated curve will be an estimate of the Rise
time as defined by W.J. Jordan [Cremer, p. 433];
lower right:
early part cos
2
-weighted X (front-back, blue curve), Y (left-right, black curve) and Z (up-
2. PREDICTION MODULE
128
down, red curve) smoothed echograms;
lower left:
a small hall plan with source- and receiver locations, a scale and source data;
all estimated major parameters.
As a visual aid to understanding how noise affects speech intelligibility, if any of the
measures STI and RASTI (or U50, AI, PI or SII as Hidden options) are chosen, the
background noise is plotted as a heavy dashed line in echograms.
E_ss_rr_oct.PLT and similar echogram plots show a dual time axis. The upper axis
gives the time relative arrival of direct sound while the lower gives the time relative sound
emission.
E_ss_rr_INT.PLT Backwards integrated decays (Schrder plot) for all octaves marking
T-15, T-30 and their regression lines.
R_ss_rr_oct.PLT Sound rose plots indicating sound incidence projected onto three
planes and in six time-intervals. Within each time range the incident ray
vectors are projected (the length of the vector is its intensity value) onto
the horizontal plane, the vertical plane and the ear-to-ear vertical plane
where they are accumulated in 5 wide sectors and a 10 dB/division
radial scale is used. Each rose shows only the spatial incidence and not
the absolute level since the length of the lines are normalized by the
total incident sound energy in each the time-interval. At each rose a %
value is given calculated as the ratio of the energy projected to each
plane to the total energy in the time-range.
V_ss_rr_oct.PLT Vectorgram plots, an echogram where each reflection is drawn
according to the incidence. Imagine standing at the origin looking along
the time axis. Direct sound and first order specular reflections are
drawn with thick lines.
E_ss_rr_EKgrad.PLT
Echo-disturbance plots according to [Dietsch&Kraak-86]. The created
graphs show estimated 10% and 50% echo-disturbance for speech
(red) and music (blue) overlaid on the echogram for each octave (gray).
The right side scale indicates EKgrad and goes form 0 to 2, for details
see Theory. Note: EKgrad values sometimes exceed 2.0 but it is a
benefit to keep a fixed scale so overshooting values are plotted just
above the graph frame at 2.1 (a value of 2.0 is already very high).
RT_ss.PLT Reverberation time and mean absorption overview based on an
average over all receivers used. Also indicates the number of rays lost
and absorbed per octave-band and other statistical data. If the two
mean absorption coefficient curves (AbsC and AbsCg) differ it is likely
that overlapping planes have been used or that surfaces that can never
be reached by sound have been modeled.
PATH_ss.PLT Histograms over free reflection path lengths and the resulting mean
free path.
ABS_ss.PLT Histograms over absorption coefficients encountered by the rays and
the resulting mean absorption coefficient.
HITS_ss.PLT Interactive plane hit histogram. Each plot frame marks each plane's
share of all ray hits. Above the graph is displayed each plane's area
efficiency (for all eight octaves), its share of the total absorption area
and its classical absorption area. For area efficiency, a value of 100%
2. PREDICTION MODULE
129
indicates that a surface is hit according to classical Sabine theory (area-
proportional), < 100% means hit less often and > 100% means hit more
often.
PARAMn_ss.PLT Parameter overview plot-files (n = 1,2,3). The data for each octave is a
plot frame. If a value is too high to display with three digits ">>>" is
shown and if a value is too low "<<<" is shown. If a value could not be
estimated "***" is shown and if it is not applicable "---" is shown.
TRENDn_ss.PLT Parameter trend plot-files (n = 1,2,3). A plot frame line can be moved
marking the receivers. Receivers not used are indicated by a small ring
and values that could not be estimated are indicated by a small square.
NTREND_ss.PLT Similar to TRENDn_ss.PLT but with normalized parameters, see
Theory.
RASTI_ss.PLT Trend of RASTI values, 500Hz/2kHz average D-50 (Deutlichkeit), and
500 Hz/2 kHz SPL (RASTI is built from these two octaves). Receivers
not used are indicated by a small ring. Background noise levels are
indicated. Note: See Preferences option for STI weights.
STI _type_ss.PLT Trend of STI and octave band TI (Transmission Index) values.
Receivers not used are indicated by a small ring. Background noise
levels are indicated. Depending on the STI Preferences selection type
will be orig, mdfd, user, IECm or IECf.
SPECTRA_ss.PLT A plot of the SPL octave-band spectra for direct sound, first 50 ms and
total as an aid in overall system eq and coverage. Spectra for all
receivers are shown in light grey and each receivers data is as plot
frame (a 2DA plot-file) also indicating a line from the source to the
receiver (dashed if there is no direct sound). A reference or target
spectrum can be given for reference (plotted as rings with a 1 dB
radius).
LEAKS_ss.PLT If any ray leaks were encountered during the tracing of rays, this file is
automatically created showing where the leaks occurred. At the top of
the largest leak, the number of rays that escaped through that part of
the model is indicated. Note: the direction of a ray is not recorded but
only the location where it escaped. Causes to leaks are warped planes,
actual holes and a finite numerical accuracy. In addition is displayed a
graph showing the fraction of lost rays over time.
Walker.CAG This file is always created by the full version (CAG = CATT-Acoustic
Geometry) if (Save data for) Post-processing was selected. It is used by
CATT-Walker to display the room geometry during a walkthrough, it is
also needed for post-processing to create a CWI-file for CATT-Walker.
E_ss_rr.TXT Single receiver result text-file. If Include parameters normalized to
expected values has been selected the normalized values are shown
alongside with the absolute values. Example:

CATT-Acoustic v8.0g : Acoustic parameters Copyright CATT 1988-2007
============================================================================================
Original file name: C:\CATTDOCS\V8\EXAMPLE\OUT\E_A0_01.TXT
Original save time: 2007-06-22 15:23:51
--------------------------------------------------------------------------------------------
Project : v8.0 Manual Example Hall


2. PREDICTION MODULE
130
GEOMETRICAL INFORMATION
Src id and loc [m] : A0 3,000 -2,000 1,700
Rec id and loc [m] : 01 -7,600 5,000 0,600
VARIABLE SOURCE DATA
Directivity
Type (library) : OMNI.SD0
Dir. Index (DI) [dB] : 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0
Level
On axis 1m [dB] : 70,0 73,0 76,0 79,0 82,0 85,0 85,0 85,0
Total power [dB] : 80,9 83,9 86,9 89,9 92,9 95,9 95,9 95,9
Auxiliary delay [ms] : 0,0


VARIABLE AIR DATA
Temperature [C] : 20
Relative humidity [%] : 50
Density [kg/m] : 1,2
Sound speed [m/s] : 343
Impedance [Ns/m] : 412
Diss. coeff. [0.001/m] : 0,10 0,30 0,63 1,07 2,28 6,83 24,23 83,90 (estimated)

CALCULATION RESULTS
Head direction [m] :
01 head turned towards stage

GLOBAL RESULTS FROM TRACING RTC-II
--------------------------------------------------------------------------------------------
Trunc[s] Rays[-] Lost[-] Absorbed[-] Angle[]
............................................................................................
1,50 10088 0 0 2,0
--------------------------------------------------------------------------------------------
125 250 500 1k 2k 4k 8k 16k
.......... ..... ..... ..... ..... ..... ..... ..... ..... .................................
MFP [m] 10,45 10,45 10,43 10,44 10,46 10,47 10,47 10,49 Mean Free Path
Diffs[%] 15,11 18,71 22,66 27,86 31,76 32,42 33,19 33,91 Average scattering coefficient
............................................................................................
T-15 [s] 1,84 1,82 1,68 1,70 1,59 1,35 0,84 0,34 (LS-fit -5 to -20 dB)
T-30 [s] 1,92 1,91 1,79 1,81 1,73 1,47 0,85 0,32 (LS-fit -5 to -35 dB)
EyrT [s] 1,61 1,54 1,35 1,29 1,32 1,21 0,77 0,36 (MFP, AbsC)
EyrTg[s] 1,61 1,53 1,33 1,27 1,30 1,19 0,76 0,35 (MFP, AbsCg)
SabT [s] 1,79 1,71 1,52 1,45 1,46 1,30 0,81 0,37 (Vact, Sact, AbsCg)
AbsC [%] 22,9 23,7 26,3 27,0 25,6 24,2 25,4 26,3 (based on tracing)
AbsCg[%] 23,0 23,9 26,6 27,4 26,0 24,7 26,0 27,0 (area-proportional)
Back[dB] 45,0 38,0 32,0 28,0 25,0 23,0 21,0 19,0 (non-individual bkg noise level)
Resi[dB] 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 (indiv. resid. bkg noise level)
-----------------------------------------------------------------------------------------
--

AVERAGE/ACTUAL VOLUME/SURFACE INFORMATION
--------------------------------------------------------------------------------------------
V[m] Lx[m] Ly[m] Lz[m] S[m2] Sact[m] Vact[m]
............................................................................................
7892 21,0 31,7 11,9 3019 3019 7747

V is volume estimated from MFP and S
Lx,y,z is an average size of the model
S is surface area estimated by the rays
Sact is total surface area
Vact is actual estimated volume (requires a correct model)
2. PREDICTION MODULE
131
--------------------------------------------------------------------------------------------
Initial delay [ms] : 37,14
--------------------------------------------------------------------------------------------
RASTI [%] 56,3 (FAIR) 56,3 (FAIR) with background noise
STI orig [%] 57,6 (FAIR) 57,2 (FAIR) with background noise
--------------------------------------------------------------------------------------------
125 250 500 1k 2k 4k 8k 16k
........... ...... ...... ...... ...... ...... ...... ...... ......
TI [%] 54,6 52,7 56,2 56,7 56,0 59,2 67,5
TI(n)[%] 52,0 52,4 56,2 56,6 56,0 59,2 67,5
Weights 130 140 110 120 190 170 140 x 0.001 (orig.)
--------------------------------------------------------------------------------------------
Parameter 125 250 500 1k 2k 4k 8k 16k sum
........... ...... ...... ...... ...... ...... ...... ...... ...... ......
Ts [ms] 92,2 94,3 82,3 82,1 82,8 73,4 47,0 23,2 69,8
D-50 [%] 52,6 46,0 52,1 51,5 52,6 52,4 68,1 88,0 56,9
C-80 [dB] 3,1 2,5 3,5 3,9 3,1 3,8 7,1 14,3 4,4
LFC [%] 47,5 48,8 48,4 45,1 46,0 49,4 46,5 33,1 46,6
LF [%] 35,6 36,5 36,3 32,8 34,6 36,6 34,9 24,9 34,7
G [dB] 7,4 7,4 6,7 6,4 6,2 6,7 4,4 1,3 5,6
SPL [dB] 57,4 60,4 62,7 65,4 68,1 71,4 68,3 62,7 75,6
75,6 (A) (previous line)
EDT [s] 1,62 1,43 1,21 1,23 1,28 0,98 0,62 0,34 ---
T-15 [s] 1,84 1,82 1,68 1,70 1,59 1,35 0,84 0,34 ---
T-30 [s] 1,92 1,91 1,79 1,81 1,73 1,47 0,85 0,32 ---

--- not calculated
*** impossible to calculate with accuracy
PARAM_ss.TXT Multiple receiver result text-file. Similar to E_ss_rr.TXT but for all
receivers. Always created.
PARAM_ssX.TXT Multiple receiver result text-file to import into spread-sheet programs e.g.
MS Excel. Similar to PARAM_ss.TXT but tabular data is semi-colon
delimited and text data is quoted. Always created.
E_ss_rr.ECH Echogram files for the post-processing. The basic contents can be
checked by a Post-processing utility.
E_ss_rr.ADD Echogram files for the Source addition module. The basic contents can be
checked by a Source addition utility.
name.CMB Source combination file for the Source addition module automatically
created if ADD-files are selected. name is taken from the current source-
file.
2. PREDICTION MODULE
132
2.5 Theory
Prediction methods
CATT-Acoustic offers three independent prediction, or acoustic simulation, methods detailed
in this section:
Audience area mapping utilizes standard ray-tracing with a spherical receiver. Ray-tracing
is a robust method for prediction of numerical measures but the
echograms are difficult to use for auralization since the reflection
density growth over time is unnatural.
Early part detailed ISM utilizes the Image Source Model with added first-order diffuse
reflection. This method is meant for qualitative reflection path
analysis and does not estimate any room acoustic parameters.
The reason is that diffuse reflection is extremely difficult to
include in the ISM in a general manner. For special cases that
require high early part detail but no reverberation, post-
processing files can be generated.
Full detailed calculation utilizes Randomized Tail-corrected Cone-tracing (RTC) that
combines features of both specular cone-tracing, standard ray-
tracing and the ISM. The RTC is a general and robust numerical
prediction method and can as well create echograms that can be
used for auralization. Since this method (as all other prediction
methods) has drawbacks, the direct sound, first order diffuse and
specular reflections and second order specular reflections are
handled deterministically by the ISM.
The predictions method are based on geometrical acoustics and are partly documented in a
Ph.D. thesis [Dalenbck-95b], [Chalmers].
Speed of sound and air absorption
The speed of sound and air absorption is calculated according to the following expressions:

c = 331.4 1 +
273
)
0

(2.5-1)
m
b
= from ISO 9613-1 (6.2 Formulae) based on , f
b
, and (2.5-2)

where

air temperature, C
m
b
air dissipation coefficient, m
-1
(see [Cremer] p213, m
b
= 2m)
f
b
octave-band center frequency, Hz
relative humidity, %
2. PREDICTION MODULE
133
Audience area mapping
Audience area mapping estimates early sound pressure level, lateral energy fraction, and
parameters (D-50 etc.), or direct sound only over a grid covering selected audience-planes. A
separate ray-tracing with fixed-size spherical receivers, where also source directivity and
source delay is taken into account, is performed. "fixed-size receiver" means that, unlike cone-
tracing, the receiver radius does not change depending on how long a receipted ray has
traveled. Diffuse reflection is handled by randomizing the direction of rays reflected off
diffusing surfaces and the likelihood of diffuse reflection is determined by the scattering
coefficient, s, of each surface.
The map is divided into a square grid where the grid step can be selected in the Audience
area mapping dialog. The receiver diameter is set to slightly larger than the map step and the
receiver center is normally placed at half a map step above the mapping planes so that the
sphere does not penetrate the audience plane. Some squares may fall partly outside the room
(close to wall positions) causing a loss of energy received at those positions.
To arrive at correct pressure levels the number of rays used should ideally match the map
step chosen. To avoid this strict dependence, a different approach has been used. The
number of rays needed to give a possibility of one ray per square at the longest chosen time is
first calculated. The power of each ray is then adjusted dependent on the actual number of
rays used so that roughly the same levels are obtained even if the number of rays are "too
few". A systematic error is thus converted to a statistical error.
If audience surfaces overlap in z, only the surface with highest z is mapped in 2D map views
(i.e. if both balcony and stalls are included the stalls under the balcony will not be mapped but
has to be predicted separately). For static 3D map views the map points closest to the
viewpoint are drawn last thus covering points behind. If special separate 3D maps are chosen
all audience planes will be seen as the model is rotated.
The direct sound is handled separately connecting the source directly to each receiver center
taking into account any obscuring surfaces and is not effected by the number of rays chosen.
Early part detailed ISM
The Image Source Model (ISM) can determine all specular reflections between a source point
and a receiver point. The ISM works by calculating first order image sources (IS) of the main
source in all reflecting planes. From each of these first order IS, second order sources are
created by calculating new IS in all reflecting planes (except the plane that created the first
order IS since it would yield the previous order IS). This procedure is repeated until a re-
quested max order of reflection or max arrival-time is exceeded.
Once all valid IS are found, the corresponding reflection arrival times can be found simply by
calculating the length of the three-dimensional vector from each IS to the receiver. The level of
each reflection is calculated from the output power and directivity of the source, spherical
spreading (inverse square law) and is adjusted by absorption and diffusion (first order)
properties of the planes that created the IS and also by air absorption.
On each diffusing surface a number of square patches are placed. For first order reflections
these patches act as elementary sources radiating according to Lambert's law when excited
[Kuttruff]. Diffusing surfaces are automatically patched.
The Early part detailed ISM dialog selection Diffuse refl. order determines the maximum
order that will give diffuse reflection. All specular reflections up to and including the diffusion
order will be diminished by (1 - s). For higher order images sources the scattering coefficient,
s, is neglected (or the energy would be lost). The diffuse reflection order should typically be set
to 1.
2. PREDICTION MODULE
134
How transparency is taken into account
direct sound passing through a maximum of one semi-transparent surface is attenuated by
(1-) . For higher orders, transmission is treated as an additional absorption only.
1
st
order diffuse reflections are not transmitted (the transmitted sound would be extremely
weak) - the transmitted part is assumed absorbed.
Full detailed calculation
CATT-Acoustic v7 and v8 utilize a unique prediction method that is based on many years of
experience from using the ISM, ray-tracing and combinations thereof, in previous software
versions as well as on a Ph.D. thesis at Chalmers University [Dalenbck-95b], [Chalmers].
The design goals for the new method, called Randomized Tail-corrected Cone-tracing (RTC
for short, v7.2 uses RTC-II), were to create:
a general method that requires as few assumptions as possible e.g. regarding the
statistical properties of the room under consideration:
RTC only assumes that reflection density growth is quadratic and that can be shown to
hold generally for closed rooms with no coupling effects. For open rooms no use is made
of the reflection growth.
a method that uses the same algorithm for both the early part and the late part of the
echogram:
RTC-II employs randomized cone-tracing (cone-tracing that handles diffuse reflection in
the same manner as ray-tracing does) for the full response but handles the direct sound,
first order specular and diffuse reflection, and second order specular reflection
deterministically. What is labeled the "early part" in RTC is up to the time where details of
the echogram are considered to be valid and no extrapolation of the growth is necessary
(due to the divergence of rays cone- and ray-tracing do not detect all late reflections from
small surfaces). The more cones that are used the longer the "early part" becomes
(typically 300-500 ms in concert halls, i.e. longer than in most other combined methods).
The early part is limited to 1 s.
a method that can handle frequency dependent diffuse reflection for the full
echogram and not only for the late or the early part (this rules out pure ISM, specular
cone- or pyramid- tracing, the hybrid method etc.):
RTC handles diffuse reflection for order > 1 the same way as ray-tracing does i.e. for each
reflection a random number [0,1[ is generated and if the number is less than the scattering
coefficient, s, of the surface the ray direction is randomized according to Lambert's law
(ideal diffuse reflection [Kuttruff]) otherwise the reflection is specular. As a necessary
consequence of the frequency dependent diffuse reflections, an independent cone-tracing
is performed for each octave-band, so when 10000 rays are selected, 8x10000 rays are
actually traced.
RTC handles diffuse reflection for order = 1 by creating a number of elementary sources
on each diffusing surface (the density is governed by s(1-) giving hard diffusing surfaces
the highest density). The radiated power is according to Lambert's law and is proportional
to s(1-) where s is the frequency dependent scattering coefficient of the surface and the
absorption coefficient. Similarly, any first-order and second-order specular reflections
(handled by the ISM) are diminished by (1- s)(1- ). This procedure will generate a very
great number of weak first-order diffuse reflections.
a method that requires few settings (methods with different algorithms for the early and
the late part often have settings about the early-late transition that may be very critical and
difficult to select):
RTC just requires the selection of the number of rays/cones to use and how long to trace
2. PREDICTION MODULE
135
them and even offers an automatic choice.
a method that can handle open rooms:
RTC detects the case of an open room and does then not use extrapolation (since the
reflection growth is unknown in an open room). Good calculations for open rooms require
more rays than for the average closed room but no fundamental method limitations exist.
Calculations for open rooms also goes faster since all rays eventually escape. For very big
open rooms, such as stadiums, the ISM can be used as an alternative for auralization.
a method that can handle rooms with one or two dimensions very different from the
third (this rules out many methods that rely on e.g. classical statistical tails):
RTC requires the use of more rays for rooms with odd shapes than for the average closed
room but no fundamental method limitations exist (it is quite natural that unusual cases
require more rays).
However, extremely disproportionate rooms (say with dimension ratios of 1:1:10 and
worse) will be less well predicted. Since rooms like these are also less usual there is little
feedback from measurements.
a method that can resolve under-balcony positions and similar:
RTC requires the use of more rays (i.e. narrower cones) for good prediction of difficult
positions such as under balconies but no fundamental method limitations exist (it is quite
natural that under balcony positions require more rays because the shape is narrow).
However, extremely convoluted rooms where the direct sound is not present, and where
the first sound may not reach a receiver until after one or even more reflections, is unlikely
to be predicted well since diffraction effects will be considerable. Since rooms like these
are also less usual there is little feedback from measurements.
a method that is robust and gives reasonable results also with fairly few rays:
Since cone-tracing has an initially small receiver (or cone face) the likelihood for detection
of a randomized ray is less than for ray-tracing (using a larger fixed-size receiver) giving a
higher statistical variation from run to run. This is compensated for in the RTC by handling
the very important first-order specular and diffuse reflections, as well as second order
specular reflections, deterministically. Even with as few as 1000 rays, estimated para-
meters should typically not vary more between runs than the difference limen of each
parameter unless the statistical properties are very special (although minor details in the
early echogram for reflection order > 1 will differ from run to run). Since a stochastic
process is involved it may be necessary to perform test runs for each new hall to determine
the number of rays needed to give sufficiently repeatable results (this is no difference from
other methods using a stochastic process).
a method that can create echograms possible to use for auralization (this rules out
direct use of standard ray-tracing since the reflection density is not naturally increasing with
time, and specular cone-tracing since it creates unnatural late echoes when no diffusion is
applied):
RTC creates discrete reflections as were they created by the ISM and the reflection growth
goes as time squared up to the end of the "early part" where reflections are beginning to
become undetected. For numerical prediction, energy in the late part (the "tail") is corrected
using reflection density growth extrapolation but details are not valid and would give an un-
natural-sounding response. For post-processing only, the late part is re-created by
statistical generation of reflections (with the correct reflection density growth) using a
simplified model of the room taking into account the room shape. The late part ray in-
cidence distribution from the prediction is used for post-processing so that also the late part
of the synthesized impulse response has some spatial properties from the actual model.
Since the early part often is as long as 300-500 ms the details of the reverberation tail is
not so important. If a longer early part is required more rays/cones have to be used which
is only natural. This procedure means that late flutter echoes visible in predicted
echograms will not be audible in auralization unless they are in the early part. A truthful
auralization of the late part would require an extreme amount of rays so at the moment this
2. PREDICTION MODULE
136
is the only practical way of having both a natural-sounding late decay and a reasonably fast
calculation. Hopefully, cases with late flutter echoes would not need to be auralized since it
is so obvious from the echogram graphs that a good room acoustics has not been
achieved. For flutter echo demonstration purposes a high order ISM can be used but then
only to illustrate the phenomenon.
Algorithm option for the late part.
The option differs only for the late part of the echogram where randomized ray-tracing is used
instead of randomized tail-corrected cone-tracing (RTC). The benefit is that no tail correction
is necessary, and hence no assumptions are required about reflection density growth, and
coupled rooms or other unusual shapes can be better predicted. The penalty is a higher
random error in the late part and because of that more rays have to be used. However, the
new algorithm variant is slightly faster so the total calculation time may be about the same as
for the RTC (except for receivers close to a surface, see below). Typical cases where the new
option should be chosen are:
coupled rooms (rooms connected via open doors, large stage houses, reverb chambers)
rooms where semi-transparent surfaces are used (see below), option forced on if any
semi-transparent surfaces are used
unusual shapes (e.g. L-shapes, still requiring lots of rays to resolve unusual shapes and a
careful consideration regarding choice of scattering coefficients)
Ray-tracing for the late part uses a receiver sphere (as in audience area mapping) and
typically in ray-tracing a fixed-sized receiver sphere is used. However, to create a somewhat
smoother first part of the late decay the receiver sphere is allowed to grow up to when it
touches the closest surface where the size is locked. This means that if one receiver is very
close to a surface, the early part limit may instead be set according to when the sphere cannot
grow any longer and be shorter than if the normal RTC is used. In such cases more rays need
to be used to get a longer early part. Since this algorithm is designed to handle more complex
cases it is only natural that a larger number of rays is required. Do not expect identical results
from this algorithm option, reserve it for cases where you suspect unusual behavior such as
coupled volumes (say a large reverberant empty stage-house coupled to a hall).
How transparency is taken into account
direct sound passing through a maximum of one semi-transparent surface is attenuated by
(1-) . Higher order transmission is handled by a random process, see below.
1
st
order diffuse reflections are not transmitted (the transmitted sound would be extremely
weak) - the transmitted part is assumed absorbed.
for higher order transmission sound reflected in a semi-transparent surface is attenuated
by (1-) and the transmission coefficient determines the likelihood for transmission
Automatic edge diffusion
Reflections falling within a quarter of a wavelength from an edge can optionally be considered
not to give a valid specular reflection and the energy can instead be transferred to diffuse.
This is controlled globally in the General settings dialog and locally in GEO-files by appending
an asterisk "*" to the surface property name in a plane or sub-plane definition for those
surfaces that are to give edge diffusion. Edge diffusion is typically applied to reflectors,
windows, cupboards, tables etc. that often are flat and smooth and only give significant
diffusion if their size is small in relation to the wavelength.
2. PREDICTION MODULE
137
Example:
[ 10 reflector / 1 2 12 11 / wood* ]
The edge is assigned a scattering coefficient:
s
edge
= 0.5 (50%).
The frequency dependence is implied by the frequency dependent edge width rather than the
coefficient itself.
For first order reflections edge diffusion is handled as an extra diffuse reflection from the
edges so that specular reflections are multiplied by (1 - s
edge
) and diffuse reflections are
multiplied by s
edge
.
For orders > 1 in the RTC, as well as in ray-tracing (audience area mapping), the effective
scattering coefficient will be
s
effective
= s
surface
+ s
edge
S
edge
/S
surface

Where

s
surface
the normal surface scattering coefficient (if used)
S
edge
the area of an edge quarter of a wavelength wide
S
surface
the complete plane or sub-plane area.
If s
effective
exceeds 100% it is truncated to 100%. This treatment of edge diffusion as an added
surface diffusion for orders > 1, can be justified since diffuse reflection then is handled by
randomized ray directions and exact impact points are no longer significant.
For (too) small surfaces at low frequencies it might result in the whole surface being treated as
an edge and they will function as diffusers.
Actual edge scattering coefficients (i.e. s
edge
S
edge
/S
surface
) are displayed in the PLINFO.PLT
plot-file below the surface scattering coefficients.
Reverberant decay and reverberation time estimation
The reverberant decay is estimated from the RTC and by classical methods for reference.
There are five measures of the reverberation time calculated: SabT, EyrT, EyrTg, T-15, T-30.
The first is a classical Sabine RT, the second two are based on the Eyring formula [Cremer]
while the last two are derived from the decays estimated by the RTC for each receiver.
SabT is only valid for closed rooms and when surfaces are not overlapping each other (if they
are, the total area calculation will be wrong and the covered absorption will be included). Also
the volume calculation may be in error, see Fig. 2.6 2.9.
EyrT is based on the mean free path calculated from all ray segments (i.e. not from 4V/S) and
the mean absorption coefficient from the arithmetic mean of all absorption values encountered
by the rays, AbsC.
EyrTg is based on the mean free path as for EyrT but instead the classical area-weighted
mean absorption coefficient is used, AbsCg (g stands for "geometric"). Just like SabT, EyrTg
requires non-overlapping surfaces etc.
T-15 and T-30 are derived from straight-line least-square fits to receiver decay curves at the
intervals -5 to -20 dB and -5 to -35 dB respectively (the regression lines are shown in the
Low freq.
High freq.
Edge
2. PREDICTION MODULE
138
decay plot-files E_ss_rr_INT.PLT and in E_ss_rr_oct.PLT). T-30 is considered to be the
best estimate of the reverberation time and is used for re-creating the late part in the post-
processing module (if T-30 cannot be evaluated due to a too short echogram T-15 is used
instead).
The global T15 and T-30 values, as shown in RT_ss.PLT and PARAM_ss.TXT, are calcu-
lated as an average for all receiver positions.
In addition, Audience area mapping offers a special RT measure called RT that is derived
from Ts assuming an exponential decay (RT' = 13.8 Ts ; calculated from Eq. 2.5-6 and 2.5-7)
and relates well to EDT, see [Cremer]. To estimate a true T-30 for mapping would require an
echogram to be recorded at each map point which in turn would mean many MB of data. RT'
is often a good estimate of T-30 for positions far from the source.
The sometimes large differences between SabT/EyrT and T-30 values are typically explained
by a lack of diffuse reflection especially in simply-shaped halls with uneven absorption
distribution (a low amount of "mixing" by the shape itself). A good example of this is a
shoebox-shaped hall with an absorbing floor where, without diffusely reflecting walls, the
reverberation time estimated by Sabine/Eyring and the actual one estimated by the RTC are
very different (the ray-decay estimates a much longer RT). This phenomena has been
thoroughly investigated in [Kuttruff-88]. The ray-tracing procedure used by Kuttruff is different
from the one used in CATT-Acoustic but very similar results are obtained. Also in [Hodgson-
91] the need for including diffuse reflection in the calculations are emphasized. This behavior
can be observed for the simple shoebox example in Section 1.2. Default diffusion (General
settings) can be used to assign basic diffusion to surfaces that have not been assigned
specific diffusion in the geometry-files. Note: this phenomenon is also present in real rooms,
e.g. rectangular sports halls or factories where all surfaces but the ceiling have little
absorption. For more details see Calculation recommendations (end of Section 2-5).
Another reason why T-30 may be different from SabT/EyrT is if the ray truncation time has
been set too short. It should always be set to the longest estimated RT or T-30 will be
underestimated. In [ISO] it is said that at least 3/4 of the actual RT must be measured (i.e.
down to -45 dB) for T-30 evaluation and it is beneficial to view the prediction as a virtual
measurement.
Room acoustic parameters
Explanation of how the various room acoustic parameters (measures) are calculated.
Mean free path
The mean free path is calculated from all complete reflection paths with reflection order > 1.
Mean absorption coefficient
Mean absorption coefficient, AbsC, is calculated from the same reflection paths as the mean
free path. AbsCg is calculated area-weighted in the classical way and assumes that surfaces
are not overlapping. In a well built model, AbsC and AbsCg should be very close.
Early/late energy-ratio based parameters
Early-to-late energy-ratio based parameters (or measures) such as Deutlichkeit (D-50), Clarity
(C-80) etc. are calculated according to their respective definitions [Cremer,ISO].
2. PREDICTION MODULE
139
Lateral measures LF and LFC

=
ms 80
0
2
ms 80
ms 5
2
) (
| ) cos( | ) (
100 LFC
dt t h
dt t h
(2.5-3)
where
reflection angle related to the ear to ear axis on an assumed listener looking as
defined by the head-direction in General settings. [ISO] states that the head-
direction should be towards the source.
LF uses cos
2
( ) instead. LFC is better correlated to the spatial impression but LF is easier to
measure [Barron-81].
Strength (G)
G is the sound pressure level relative the free field sound pressure at 10 m from the source
(assuming an omni-directional source with the same output power as the actual source):

G ( ) ( ) p p
tot
2
10
2
log 10 log 10 = (2.5-4)
where
p
10
sound pressure rms for the direct sound at 10 m distance in free field, Pa
p
tot
total sound pressure rms, Pa
Multiple source G estimates
If more than one source is used (Audience area mapping or Source addition), G is calculated
as:

|
|
|
.
|

\
|
=
|
|
|
.
|

\
|
=

10
log 10 / log 10
10 2
10
2
G
i
i i
p p G (2.5-5)
where
p
I
total rms pressure squared at a receiver or map point caused by source i
p
i10
rms pressure squared at 10 m in free field for an omni source with the same total
output power as the real source i
G
i
G for source i
G is not really defined other than for a single source but better to include something
reasonable than not to show a requested plot. One can say that G for multiple sources
normalizes so that the level is independent of individual source power, as if all sources were
identical.
2. PREDICTION MODULE
140
Early Decay-Time (EDT)
EDT is the decay time evaluated from 0 to -10 dB on the backward integrated echogram. Due
to difficulties of doing a least square fit to the sometimes not very linear early backward
integrated curve this procedure, as suggested in draft standards for measurements, has its
problems (especially with a very strong direct sound). The best way to determine EDT remains
to be defined, see e.g. [Bradley-96].
RASTI
RApid Speech Transition Index is calculated from the echogram according to the procedures
described in [Houtgast-80] and [Jacobsen-86]. Background noise levels can be specified in
the General settings/Acoustic environment dialog. Rather than using generic speech levels
for the 500 Hz and 2 kHz octave-bands (with a 9 dB difference), the actual levels set by Lp1m
in the source-file are used. It is the user's own responsibility to set these to appropriate levels.
Predefined constants or Lp_voice shortcuts can be used for this purpose, see source-file
syntax section 2.3. No RASTI values will be given if the SPL is more then 10 dB Below the
background noise level.
STI
Speech Transition Index is like RASTI calculated from the echogram. Original STI is based on
14 modulation frequencies (0.63 - 12.5 Hz) and the octave-bands 125 - 8k Hz but fewer bands
and/or different weights can be selected by the user in Preferences. One available option is to
use "STI modified" based on the Articulation Index (AI) weights from French & Steinberg (AI is
a predecessor to STI but took into account only the S/N ratio in each band and no modulation,
see [Steeneken-67]. It appears that MLSSA [MLSSA] is the only measurement system where
these weights are used as an option. Further options are from CEI/IEC 60286-16, 2003-05
where also the redundancy correction (beta) factors are included. Background noise levels
can be specified in General settings/Acoustic environment. Rather than using generic
speech levels, the actual levels set by Lp1m in the source-file are used. It is the user's own
responsibility to set these to appropriate speech levels. Predefined constants or
Lp_voice_IEC shortcuts can be used for this purpose, see source-file. No STI values will be
given if the SPL is more then 10 dB below the background noise level.
Normalized values
It can sometimes be useful to compare estimated (or measured) parameters to values
expected from an exponential decay calculated from the reverberation time [Cremer, p434]. It
is simply a matter of using a pure exponential function in the integrals involved:

t
e E t E

=
0
) ( (2.5-6)
T
816 . 13
= (2.5-7)
where
T reverberation time, s
The values thus obtained do, however, not take into account the direct sound and can only
work far away from the source where the reverberant field dominates. Barron and Lee
therefore developed a new, but still simple, theory for expected values in concert halls [Barron-
88]. Theoretical calculations where compared with measurements in 15 different concert halls.
The new theory matched measured values much better. The formulas used were:
2. PREDICTION MODULE
141
For the direct sound:

2
0 2
4 r
Z W
p
dir

= (2.5-8)
where
W total output power of the source, W
directivity factor (not included originally)
Z
0
wave impedance in air, kg s /m
2

r distance from source to receiver, m.
For the subsequent decay:

A
e e Z W
t p
t - -
0 2
4
= ) ( (2.5-9)
0

=
c
r
(2.5-10)
where
A absorption area, m
2
Sabine
The directivity factor was not originally included in the theory as the measurements were
performed using an omni-directional source, but with computerized prediction also the
directivity can be taken into account.
The normalization can be switched on in the Full detailed calculation dialog. The parameters
G, D-50, C-80, and SPL will then have a line each (in E_ss_rr.TXT and PARAM_ss.TXT)
where the expected values have been subtracted. A positive value means that the predicted
value is higher than the expected. A plot-file (NTREND_ss.PLT) similar to TREND_ss.PLT is
also created if Normalized trend is selected.
Echo-disturbance (EKgrad)
The Full detailed calculation dialog has an option for an echo-disturbance criterion. The
calculated graphs are based on an article by [Dietsch&Kraak-86] and its application in
[Roy&Gimbott-93]. It is too much to go into the detailed background of EKgrad here, users are
recommended to study the article, this documentation will only give a shorter version. The
general hypothesis behind this criterion is that an echo disturbance is given by:

const p t
n
d d
= (2.5-11)
where
t
d
is the arrival time of a reflection (after the direct sound), s
p
d
total pressure of the reflection, Pa
n an exponent to be determined by listening tests
2. PREDICTION MODULE
142
i.e. an early reflection has to be strong to give a certain disturbance while for a late reflection
the level can be less. The result of the listening test resulted in a sliding evaluation of center-
time. To better apply to the hearing, it was not based on pressure squared as for ISO Ts (i.e. n
= 2) but on the absolute pressure |p| for music (n = 1) and |p|^2/3 for speech (n = 2/3). The
procedure is to first evaluate this special Ts as a function of time:
t t p
t t p t
t
n
n
s
d ) (
d ) (
) (
0
0

(2.5-12)
This function is then smoothed with a 9 ms window for speech and a 14 ms window for music.
The resulting two functions of time are differentiated and plotted (i.e. fast increases in the Ts
functions give high values and risks for echo disturbances). From listening tests criteria were
determined for 10% and 50% disturbance and indicates the risk for audible echoes. The
authors also indicate that if the EKgrad exceeds the limits at times separated by more than 50
ms (speech) and 80 ms (music) it indicates a risk for audible multiple echoes, see table below
for summary of all constants.

EKgrad constants Speech Music
Exponent n 2/3 1
Smoothing 9 ms 14 ms
EKgrad,10% 0.9 1.5
EKgrad,50% 1.0 1.8
Multiple echo risk 50 ms 80 ms

Note: The predicted curves may indicate echo risks also for reflections arriving before 50 ms
and that is highly unlikely. Fig. 11 in the D&K article indicates that predicted and measured
disturbance differ for < 50 ms reflection delays indicating that the method works best for > 50
ms delays. Strong reflections, or sound arrival from other sources in a PA, between ca. 20-50
ms can create coloration so they may still be important to consider, but they will typically not
be interpreted as echoes.
Stage support
The Stage support parameters (STearly, STlate, STtotal) [Gade-92] are calculated for any
receivers that are placed at 1 m (1 cm) from the source and at 1 m ( 1 cm) height above the
closest surface below the source. See also [O'Keefe] for an overview of stage acoustics
parameters. Note 1: Stage support assumes an omni source and if that is not the case a
warning is given along with the predicted values. The reason is that it could be interesting to
use an actual measured dodecahedron source that will not be ideally omni but may be useful
to compare to measured data using the same source. Note 2: the source is assumed to be
placed no closer than 4 m from a wall, this is up to the user to ensure. For further details, see
[Gade-92].
2. PREDICTION MODULE
143
Echogram calculation
All echograms presented begin at the arrival of the direct sound (marked by a small ring on
echogram graphs if the source is visible from the receiver). For receivers where the source is
invisible due to blocking walls or balconies, the echogram and thereby parameter calculations
still starts at the time the direct sound would have arrived had the source been visible. Note
that most parameters loose their meaning if the direct sound is not present and predictions
become less accurate.
Echogram graphs
Echogram graphs come in a variety of forms.
A forward integrated echogram approximates:

d ) ( ) (
0
2

=
t
h t F (2.5-13)
where
h
2
(t) impulse response squared, Pa
2

Shown in E_ss_rr_oct.PLT (Full detailed calculation) and in I_ss_rr_oct.PLT (Early
part detailed ISM, option).
A backward integrated echogram approximates:
d ) ( ) (
2

=
t
h t B (2.5-14)
Shown in E_ss_rr_oct.PLT, E_ss_rr_INT.PLT (Full detailed calculation) and in
I_ss_rr_oct.PLT (Early part detailed ISM, option).
The crossing of the forward and backward integrated curve will be an estimate of "Rise time"
as defined by W.J. Jordan [Cremer, p 433].
Although the time-constant of the ear is not easily defined, it is often useful to view echograms
convolved or smoothed with some kind of filter function, e.g. exponential (low-pass), so that
the effects of reflection gaps and/or many reflections arriving close in time can be studied in
the echogram:

( ) ( ) t G t
h
t M =
2
) ( (2.5-15)
where
G(t) filter-function (exponential/triangular/rectangular)
convolution symbol

Shown in E_ss_rr_oct.PLT (Full detailed calculation, filter-type/time-constant option).
By using a linear scale of Sone and also taking the ear integration into account, a function
more like how the ear hears it can be plotted. The function used for impulse sound is the
square root of h. See [Cremer, pp 456-464] and [Cremer-89]. The ear-simulated echogram
approximates:

2. PREDICTION MODULE
144
|
.
|

\
|

=


d h
t S
t
t
)/ - ( - 2
4 / 1
e ) (
) (

(2.5-16)
where
S(t) ear-simulated function, Sone
ear integration time constant, s
Shown in I_ss_rr_oct.PLT (Early part detailed ISM, option).
Directivity handling
The source directivity handling depends on the type of directivity selected. For the types SD0,
SD1, CF1 and CF2 the application is straightforward since they all have the value at the
source axis as the reference (set to 0 dB in the directivity balloon). For the SD2 type however,
based on the DLL Directivity Interface (DDI), a particular model may have a distance
dependent directivity (typically arrays). With SD2, the direct sound and first order reflections
are taking into account the distance dependence while for higher order reflections the far-field
directivity is used. For details on the various directivity formats, turn to the Directivity Module
section 4.
A note on arrays: If the physical dimensions of an array modeled in a DDI interface is
considerable, there is a risk of errors since the rays etc. originate from only one point in the
prediction (the acoustical center of the source; the reference point for an array) but with the
directivity of the full array. Consider the two examples below in Fig. 2.12 and 2.13.
In these cases the array will in reality not give the predicted directivity at the receiver because
some transducers may be blocked (for higher order reflections it is further complicated).
However, an array is seldom placed so that its direct sound is screened and with a long array
is also associated a strong directivity meaning that the direct sound will dominate so this error
is likely to be of limited importance. The ability to model the distance dependent directivity
while still handling the source as a single entity is of greater importance than any errors of this
kind.

receiver
Actual array
SD2 source

Fig. 2.12 Direct sound from SD2 arrays: some direct element paths are
cut off.
2. PREDICTION MODULE
145
Actual array
Wall A
receiver
Image array
Wall B
Image array

Fig. 2.13 Reflected sound from SD2 arrays: some reflected element
paths are cut off.
Semi-transparency
Each of the prediction methods handles semi-transparency slightly different since it is difficult
to implement it exactly the same in all cases. The basic procedure is however as follows:
The direct sound goes (deterministically) through a maximum of one semitransparent surface
and it is then attenuated by (1 - ).
1
st
order reflections are correspondingly attenuated by (1 - )(1 - ).
Higher order transmission is handled by a random process, see below, see Fig. 2.14.
The sum of the three components must be = 1 so that the energy is conserved:

(1 - ) transmitted
(1 - )(1 - ) reflected
absorbed
(1- ) + (1- )(1 - ) + =1

Fig. 2.14 Relations between absorbed, transmitted and reflected energy.
2
nd
order and higher transmission is random depending on the transmission coefficient.
Setting = 1.0 (100%) means a totally absorbing surface and there can be no transmission,
while setting = 1.0 (100%) will result in a material that has no reflection but only absorption
(much like air absorption). Neither of these selections are meaningful for semi-transparency.
It is not obvious how to select and since many materials such as cloths are measured
hanging against a hard wall and the resulting absorption coefficient is not the proper one to
1

(1- )(1- ) (1-)


2. PREDICTION MODULE
146
use here. To be able to estimate the transmission of e.g. cloths, see rererences [Ingaard],
[WinFlag] or [Cremer-2].
Sabine and other classical measures loose their meaning when semi-transparent materials
are used since coupled room systems may be created, so be careful not to over-interpret
them.
Note on : what is available from measurements is not necessarily what is suitable for use with
prediction. Consider a measured reduction index, R, defined as:
R = -10 log(W
in
/W
tr
) (2.5-17)
where W
in
is the incident power and W
tr
is the transmitted power. When measuring W
tr
the
effects of both absorption in the structure and reflection due to impedance mismatch is
included and they are hard to separate. Expressed in the quantities above it means:
R = -10 log(W
in
/W
tr
) = -10 log((1 - ) ) (2.5-18)
giving the values required for the semi-transparency to be calculated from R as:
= 10
-R/10
/ (1 - ) (2.5-19)
Note on : the needed is that due to pure dissipation (heat) rather than the normal
absorption coefficient that does not distinguish between what is absorbed and what is trans-
mitted. The AbsTex software [Ognedal] may be used to calculate the values required, contact
CATT for details.
Calculation recommendations
Audience area mapping
At least the number of rays estimated by the Auto number setting. If warnings are on
(File|Preferences) a warning will be given if the selected number of rays is less than half of
what would have been estimated by the Auto number setting. A ray truncation time
corresponding about -30 dB (50% of the RT).
Early part detailed ISM
No definite guidelines can be given here since it depends on what type of information is
wanted. For example, to check for potential late strong echoes a long truncation time should
be used but orders higher than 3 would in practice be diffused and would seldom cause
echoes.
Full detailed calculation
At least the number of rays estimated by the Auto number setting. If warnings are on
(File|Preferences) a warning will be given if the selected number of rays is less than half of
what would have been estimated by the Auto number setting. A ray truncation time
corresponding about -60 dB (100% of the RT). The longer truncation time as compare to
mapping is because the T-30 estimate.
2. PREDICTION MODULE
147
Diffuse reflection
Diffuse reflection heavily influences the RT estimate and many other parameters. It is very
important to give reasonable estimates for the coefficients.
a minimum of 20% default diffusion is recommended for average-size flat smooth surfaces
(10% for big flat smooth surfaces)
30 to 80% for the audience (30% for 125 Hz and increasing up to 80% at 4 kHz).
for rough surfaces a high value (80%) should be assigned where the roughness scale is of
the order of the wavelength (i.e. if the roughness is about 3 dm the 1 kHz diffusion should
be set high). If in doubt, it is better to assign too high than too low scattering coefficients.
The GEO-function estimate() can be used instead of giving values
automatic edge diffusion can be applied to reflectors, windows, cupboards, tables etc. that
often are flat and smooth and only give diffusion if their size is small in relation to the
wavelength.
with the advent of an ISO standard for measuring scattering coefficients guidelines [ISO-
scatt] measurements will gradually be available as guidelines but in the majority of rooms
most scattering coefficients will have to be estimated.
2.6 Tips and Tricks
This section contains a number of recommendations and examples on how to get the most
out of CATT-Acoustic.
It is strongly recommended not to make too detailed models but to rather model with less
detail and use a frequency dependent scattering coefficient to compensate for detail. This
is due to how geometrical acoustics works and affording the use of more rays with a
simpler model is highly likely to give better results than affording fewer rays with a more
detailed one, in fact even using the same number of rays for both, the less detailed model
is likely to give better prediction results especially at the low end.
Work in steps - first build the main parts of the hall then the details. View the geometry as
often as possible between changes. Dont add too much new geometry between each
viewing.
Use constants (LOCAL, GLOBAL) - it is much easier to make changes. Use constants
especially where you suspect changes. It might seem to be a great effort to plan the use of
constants and to do other structuring of the geometry but this initial effort almost always
pays off in the long run.
If one corner's z-value (for example) always has the same z-value as another corner use
the z() function (or x(), y() for x,y-values):

10 -3 5 12.5
...
20 -7 12 z(10)
This signals that corner 20 does not just happen to have the same z as corner 10 but that it
is always the same z and should automatically follow any changes in corner 10. This
makes the model both simpler to build, change and interpret.
To prevent warped plane use the lock() tool whenever possible, typically for slanted
floors or ceilings but also for walls.
The x(), y(), z() functions can be used to create a copy of a part of the model, which
then can be treated as an object and be "lifted off".
2. PREDICTION MODULE
148
The COPY function can be used to create multiple identical reflectors. As the structure of
the reflector is defined once, the structure can, initially, be made very simple (typically
rectangular) for rough tests and then, towards the final calculation, be changed to a more
realistic shape. If the coadd and pladd values, from start, are chosen to accommodate
for the realistic shape, all that is needed is to create the shape (around the same origin)
and the result will be instant multiple realistically-shaped reflectors.
The possibility to define one surface property to equal another (ABS name1 = name2)
can be used for fast and secure absorption changes. If e.g. all parts of the ceiling that will
have the same absorption are assigned e.g. ceilingabs, then ceilingabs can be
defined as e.g. wood and when changed to e.g. plaster all ceiling parts will change
absorption. This works in a similar manner to "styles" in a word-processor.
With symmetrical designs where the MIRROR directive can be used, add the ceiling and
other bridging planes as single planes instead of utilizing the mirroring to avoid potentially
dangerous edges in the middle of the ceiling. Since the mirror function creates all corners it
is just a matter of defining the plane and it can be defined in the same file since planes
bridging over from the negative x side to the positive x side are not mirrored. If all parts are
mirrored more planes are generated which increases the calculation time and also makes
wire-frame plots harder to interpret.
INCLUDE GEO-files - especially for parts of the hall you would like to compare with and
without. It is also possible to include alternative versions of e.g. ceiling reflectors and
compare them without having to make a complete new version of the hall. Use constructs
like:

GLOBAL highbalcony = TRUE
IF highbalcony THEN
INCLUDE highbalc.GEO
ELSE
INCLUDE lowbalc.GEO
ENDIF
Use a subset of planes (General settings/(Plane use)) or disable INCLUDEs by turning
them into comments when you build the model. This makes geometry plots and the debug-
file easier to interpret as you can view/check parts instead of the whole hall. With a
symmetrical hall and use of the MIRROR directive, all mirrored planes can be switched off
while building the model: if planes are mirrored by 500, switch off all planes e.g. 501-999.
This is better than to temporarily comment out the MIRROR directive since also non-
mirrored planes, such as floors bridging from -x to +x, will be included in the design and
plots, assuming they have plane ids 500).
Always define reflectors as objects. They are always separate from the main geometry and
are usually moved and rotated. Leave the work of calculating the corner coordinates to the
computer! If corners coordinates actually are needed - generate a debug file and read the
corresponding values from the corner list. If multiple identical reflectors are intended the
COPY directive will simplify the job.
Simulate audience areas by a plane at about shoulder height (about 0.8 m) having the
normal pointing up. The audience should be "walled-in" by planes and the floor below
should not be modeled, but if they are not (see Fig. 2.9), possibly for simpler runs for early
reflections or direct sound mapping, the back-side of the audience plane must also be
defined and assigned the pre-defined absorption TOTABS. The reason for this is that this
plane will then catch some impossible rays running under the audience. The audience
should typically have a high degree of diffusing properties assigned to it (30 to 80%
ascending from 125 Hz to 4kHz).
If the hall has audience areas the lock() tool can be used to set the receiver positions at
an exact height over the audience plane. First, create three help corners at a fixed height
above three audience plane corners. Then lock() the z-coordinate of all receiver
positions to a plane defined by these three corners.
Typically use the "sum" or "1k" for octave-band plot-file output. Only select all bands if you
2. PREDICTION MODULE
149
really want a detailed check (e.g. for a certain receiver position) or a lot of plot-files will be
generated. If all plot-file options are used together with many receivers and all octave-
bands several hundreds of plot-files may be created! This may seem strange but CATT-
Acoustic is built to give the possibility of a lot of information - but if you don't want/need it
you don't have to request it - at least not for all receivers!
Reminders about the source spectrum: If a "white spectrum" on the source axis is desired
the values should increase by 3 dB/octave (or use the predefined Lp_white). The octave-
band sum value of the acoustic parameters, D-50 etc., RASTI and STI are affected by the
source spectrum as are Source additions.
If a comparison between measurements and calculations in a certain hall is desired and
octave-band values cannot be extracted from the measurements, be sure to match source
spectrum to the actual source or the comparison may be meaningless.
To create a soffit- or ceiling-mounted source the source position must not be placed
exactly inside a wall or ceiling but slightly in front of it and an absorbing patch must be
placed behind it on the wall (unless the directivity is modelled as half-space radiating).
Soffit-mounted sources are difficult to handle since the directivity of a source when placed
in a large baffle changes from that of the free source. If a directivity measured in a large
baffle is not available a free-field directivity must be used with great caution.
To check for occurrence of late low-order reflections, that might cause echoes, do a lower-
order run with specular order 2-3, a long early part truncation time. The history plot-file
(H_ss_rr_oct.PLT) will give the echo information.
Avoid placing both source and receivers exactly on the symmetry-line of a model. Same
goes for measurements since it may introduce interference effects.
2. PREDICTION MODULE
150
2.7 Trouble-shooting
This section lists probable causes to Prediction module errors.
Geometrical errors
The program performs extensive checking on the consistency of the geometrical model. In
spite of this checking, some geometrical errors might be so severe that the program crashes
and even, occasionally, dead-locks the computer. Such errors will typically occur while the
program is calculating plane information. Below are some probable causes listed:
you have happened to "cross" a plane by a mistake in the entering order of the plane
corners (an example: what was intended to be a rectangular plane has been entered as a
"bow tie"). See Fig. 2.15.
1 2
4 3
1 2
3 4
correct wrong
/ 1 2 3 4 / / 1 4 2 3 /

Fig. 2.15 Plane corner entering order error
you have happened to make an edge of e.g. a reflector cut another plane. You should not
put a corner of a plane in the "middle" of another plane without using that corner in the
definition of both planes (see Fig. 2.5). By using immediate debug (Geometry view/check
dialog) errors of this kind will be trapped while building the model.
you have happened to make an error in a corner coordinate causing one or some of the
corners to be "out of the plane" (i.e. a warped plane) when a plane equation is built from
three of the corners. By using immediate debug (Geometry view/check dialog) large
errors of this kind will be trapped while building the model but smaller will pass and can
cause an error. the DEBUG.TXT file (Geometry view/check dialog) will always list all
corners even for planes not used and you can check if there is an error in coordinate
values or entering order.
when using SCALE together with external coordinates (defined in another GEO-file) by
using e.g. x(), a value may be scaled twice if the coordinate was scaled in the file it was
defined in too. In such cases use e.g. x(120)/s, if 120 is a corner defined in another file
with a global x scale-factor of s, to inhibit the extra scaling.
if the volume or Interactive RT estimation is impossible it is due to actual holes (i.e. an
actually open model), overlapping planes or inaccurate (warped) planes.
The problem plane id is often listed in the left status bar when an error occurs but it depends
on the error. One way to find a problem plane is to insert a RETURN statement in a PLANES
section and gradually move it down until the error occurs, thus identifying the problem plane.
For most efficient search, use a binary search technique so that the return statement is first
put in the middle of the PLANES section, thus identifying if the problem is in the first or last half
of the planes defined, and then moved to the middle of the problem half etc. However, best is
to not add too many planes before viewing the model.
Geometrical errors will confuse the algorithms and will result in calculation errors. There is no
2. PREDICTION MODULE
151
way of knowing for sure if the error will be of great importance or not - the geometry should be
as accurate as reasonably possible.
Even if a model is simple it should be correct!
A good way to summarize the modeling process for realistic results is:
Model all surfaces that can be reached by sound
but dont model any surface that cant be reached
by sound!
It also helps remembering that the model to be made is an acoustical one and not a visual
one.
Another one-liner that can help in understanding how a closed model must be is (here it is
assume that a ray is not stopped by a plane):
A ray from any position inside a room, sent out in any
direction, must pass an odd number of planes
on its way to infinity
For example, with a simple shoebox a ray will always just pass one plane (=odd number) while
if there is properly modeled reflector inside, a ray may pass three planes (=odd number) while
if the reflector is made just of one plane a ray may pass only two planes (=even=wrong
modeling), see fig 2.16.

1 3
1
2
2
1
correct wrong correct

Fig. 2.16 Modeling all surfaces that can be reached by sound.
Audience area mapping problems
If boxes are placed on top of a floor, defined as an audience plane, and with a big Map
step it may look like positions inside the box are hit. This is simply because some part of
the receiver spheres are outside of the box.
Early part calculation problems
-
Full detailed calculation problems
If you obtain strange results or numerical errors one probable cause is that you have
created an acoustically impossible or unreasonable model e.g. by using the predefined
absorption TOTABS carelessly or defined another absorption property that has 99.9%
absorption for all or some octaves. By using such non-realistic absorption values, the early
part might be possible to interpret but the late part will be very strange since rays
2. PREDICTION MODULE
152
encountering a totally absorbing surface will be truncated. If you want to test a "very high
absorption" use 95-99% instead. The 100% absorption is reserved for special purposes
such as under the audience surface as described in section 2.6 but is best avoided. Note
that measured absorption giving 100% (or even more) is due to a limitation in the
measurement method where a very high absorption destroys the diffuse field (that is
assumed when deriving the coefficients).

A small example illustrating the danger of using totally absorbing surfaces: Consider one
reflection on a 99% absorber followed by 5 successive reflections on a 25% absorber. The
reflection is then attenuated by a factor (1-0.99)(1-0.25)
5
= 0.0024. If there instead were 6
successive reflections on the same type of absorber it would correspond to (1-)
6
= 0.0024
= 0.63 i.e. not an absorber that would be approximated by total absorption. If TOTABS
were used instead of 99% the ray would be truncated while with 99% there is a chance that
the high absorption of one surface is compensated for by several subsequent hits on hard
surfaces.
If reverberation decay curves become very non-linear (E_s_rr_oct.PLT and
E_ss_rr_INT.PLT) and thereby T-30 very different from T-15 and EyrT the most
probable causes are a lack of diffuse reflection or that you have created a model with
TOTABS planes or that contains holes. In both types of output text-files (E_ss_rr.TXT and
PARAM_ss.TXT) and in the reverberation time overview plot-file (RT_ss.PLT) the number
of rays lost and/or absorbed as compared to the number of rays sent out can be seen. If
more then 10% are lost a warning is given. Lost rays are caused by holes in the model,
inaccurate planes and by the finite numerical accuracy. Absorbed rays are caused by use
of the predefined TOTABS absorption.
3. SURFACE PROPERTIES MODULE
153
3. SURFACE PROPERTIES MODULE
The Surface properties module manages an absorption/scattering coefficient library contained
in the Surface properties library file as selected in Preferences. The library files (*.DAT in the
CATTDATA-folder ABSLIBS) are in a private binary format but text-file import/export is
provided. The library file is implemented with variable-length records so it is only the records
that actually use long descriptions and/or references that occupy space in the library which
means a flexible but compact format. This module can also create a new empty library or a
copy of an existing library that then can be extended.
Absorption/scattering properties declared in the library will be known in every GEO-file. In
addition to using the library, properties can be defined directly in a GEO-file and an attempt to
re-declare a property will be trapped, see the ABS directive, Section 2.3.
Note that properties with no diffusion defined may still be assigned a default diffusion by
selecting Prediction:General settings/Surface default. It is also possible to complement an
absorption-only library property with scattering coefficients in the GEO-file using the ABS
directive.
For predictions, the Surface properties module does not have to be open, but they will run a
fraction faster since the library-file does not have to be loaded each time.
3.1 Menus
File|Save library
Saves the current library to disk. Before saving, the current version on disk is backed up to a
file with the same name but with extension .~DA.
File|Import|CATT Exchange TXT...
Imports an absorption/diffusion properties library in the extended text format intended for
library exchange and updates. The syntax is the same as used for the GEO-file directive (ABS)
in section 2.3 except that the ABS keyword is left out and that three extra mandatory fields per
record are added. If a key name already exists it may, at import, either replace the current one
or be skipped.
The file has the format:

absname = <125... 4k [: 8k 16k]> m <s125...s4k [: s8k s16k]> [m_data] [{R G
B}]
C: category
D: description
R: reference
...
Where the scattering coefficient part, 8k and 16k values and the RGB color are optional.
m_data is currently not used.
The C:, D: and R: fields may be empty but the field labels must be present.
Property names can be in mixed case but will always be converted to uppercase. CATT-Edit
can create an empty record template if some values are entered manually.
3. SURFACE PROPERTIES MODULE
154
If a category does not exist it will be created and if no category is specified, category "None" is
assigned.
Comments are introduced by ";" and blank lines are allowed
Example exchange-file with three properties:

CONCRETE = < 1 1 1 2 3 4 >
C: walls
D: painted
R: Building research data
HARDWOOD = < 12 10 8 7 6 5 > {200 100 0}
C: walls
D: 15 mm thick
R: estimated values
DIFFUSOR_1 = <12 10 10 10 10 10> L <30 40 50 60 70 80 >
C:diffusors
D:hand-made in wood
R:estimated values
File|Import |CATT v5.0 TXT...
Imports a text-file in the older CATT-Acoustic v5.0 for DOS absorption library format. The
syntax is the same as used for the GEO-file directive (ABS) in section 2.3 except that the ABS
keyword is left out. The category will be "None" and description/reference fields will be empty.
If a key name already exists it may, at import, either replace the current one or be skipped. A
better alternative than to import an old-format file directly, is to first load the old library into
CATT-Edit or another suitable editor, convert all comments etc. to the Windows ANSI
character set, and then transform comments to be descriptions or references as appropriate.
CATT-Edit can also assist with a new-format template. The new file format can then be
imported as CATT exchange text, see below where also the format is described.
The file has the format:

absname = <125...4k> [ m <s125...s4k> ]
...
Where the scattering coefficient part is optional.
Comments introduced by ";" and blank lines are allowed.
Example file with three properties:

CONCRETE = < 1 1 1 2 3 4 >
HARDWOOD = < 5 5 7 7 7 8 >
DIFFUSOR_1 = <12 10 10 10 10 10> L <30 40 50 60 70 80 >
File|Export CATT Exchange TXT
Exports the properties library in the extended text format, see above. This is intended for
library data exchange and updates, and possibly manual editing since it is sometimes faster to
work directly in a text editor.
Edit|Copy Key to Clipboard
Places the property name (e.g. "WOOD") on the Clipboard so that it can be pasted into a GEO-
file. This is the same as double-clicking on a property name in the list except that an open
Prediction:Interactive RT estimate dialog will not be updated with the new property. Note that
3. SURFACE PROPERTIES MODULE
155
an absorption-only property (say "WOOD") can be complemented by scattering coefficients
when used in a GEO-file: ABS MyWOOD = WOOD L <5 10 15 20 25 30> if the actual
wood construction is not flat.
Edit|Copy Definition to Clipboard
Places the complete property definition (e.g. "ABS WOOD = <12 10 8 7 6 5>") on the
Clipboard so that it can be pasted into a GEO-file and be renamed and edited e.g. to "ABS
MYWOOD = <12 10 8 7 6 5> L <10 20 30 30 20 20>".
Utilities|Create a New Library As...
Creates a new generic library that can be selected in Preferences and be filled in with more
properties.
Utilities|Save Copy of Library As...
Creates a new library as a copy of the current one. The new library can be selected in
Preferences and be filled in with more properties.
Category|New...
Creates a new category.





Category|Remove... / Category|Rename...
Displays a list of all current
categories and the selected one
can be removed/renamed. All
properties in the removed
category will be assigned the
category "None".





Options|Sort Order...
Sorts the entries according to various criteria.
3. SURFACE PROPERTIES MODULE
156
Key, Category, Reference
Sorts alphabetically according to Windows ANSI character set.
125/250 Alpha , 500/1k Alpha, 2k/4k Alpha
Sorts according to the type of absorber. The sorting function used is:

( ) ( ) ( )
( )

+
i
i f f f
/
2 1
2

where
f
1
= 125 and f
2
= 250 for 125/250 Alpha etc.
This means that with e.g. 125/250 Alpha a dedicated low-frequency absorber is sorted before
a wide-band absorber with the same values at f
1
and f
2
.
125-4k Alpha
Sorts according to average absorption coefficient (125 4k Hz).
125-4k Diffusion
Sorts according to average total scattering coefficient (125 4k Hz).
For all sorting options entries are sub-sorted after Key.
3. SURFACE PROPERTIES MODULE
157
3.2 Dialogs
The main dialog displays a scrollable list-box showing all defined properties. When a property
is selected the graphs and other related information about the property is updated.

List
Lists all defined properties according to the Options|Sort Order menu. The current sort order
is displayed in the module window title.
Search key
The key or name of the property. This key is the name that is used in GEO-files. To use a
property in a GEO-file without having to type it in, use any of the following:
double-click the property in the list-box
press Enter when a property is selected
select Edit|Copy Key To Clipboard
The property name is then transferred to the clipboard and can be pasted into a GEO-file
using the CATT-Edit Edit|Paste menu. A similar procedure can be used when assigning
surface properties in the AutoCAD interface. Property key names are always converted to
upper-case and may consist of a maximum of 15 characters being A-Z, _, 0-9, and native
language characters. A key must always start with a letter. Note: there are two predefined
absorption properties: TOTREF and TOTABS that do not appear in the library. TOTABS is an
artificial total absorption used for the back side of "floating" audience planes and similar
planes for quick tests but should be used very seldom (better to use 99,9%).
3. SURFACE PROPERTIES MODULE
158
Category
A property category e.g. Walls, Windows, Audience etc. See the Category menu for adding,
removing and renaming categories.
Description
A description of the selected property such as 13 mm plaster-board on studs etc.
Color
A color assigned to the property.
Reference
Source of the data. This is an important information since properties are of limited value if it is
not known how they are measured.
Add/Update
Updates (if already present) or adds to the list if a new Search key has been entered. A
property can be changed either by entering values in % in the edit-controls below the graphs
or by direct manipulation of the small handles attached to the curves. If Scattering is selected
as "None", the scattering coefficients still remain in the record so when turned back to
Lambert they appear as before. There is no special "New property" button. To add a new
property simply change the key and the coefficients as required and select the Add/Update
button. If the key name already exists you will be prompted for the action to take. In this
manner it is very handy to add several properties from the same source since the reference
field needs to be filled in only once.

4. DIRECTIVITY MODULE
159
4. DIRECTIVITY MODULE
The source Directivity module allows graphical and numerical editing of source directivity
library-files (native CATT *.SD0, *.SD1, *.SD2) and viewing the CLF format (*.CF1, *.CF2
[CLF]) in the CATTDATA-folder SD or in sub-folders to SD - one level deep). The directivity
key-name (i.e. the file-name including extension) is entered in a source-file at prediction. If
directivity files are located in an SD sub-folder the full name of is sub-folder\name.SDx or
sub-folder\name.CFx. "OMNI" is a pre-defined natural omni-directional source and need
not have a directivity-file. Five formats are available, a 15 polar-interpolated format (SD0), a
10 full-space measured format (SD1), The CLF formats (CF1,CF2) and a general format
capable of very high resolution and distance dependence based on a DLL Directivity Interface,
DDI (SD2).
4.1 Menus
File|Open From Collection...
Displays a dialog
where directivities from
defined collections can
be selected. A
collection is a list of
directivities but does
not contain the di-
rectivity files them-
selves.




Help (Collection) Select from collections
Displays collection-specific help if available (CHM, HLP, PDF, HTM or TXT)
File|Edit Collections...
Displays a dialog where
directivity collections
can be created and
edited. Typical use of
collections is to group
directivities into manu-
facturer groups but a
user can also make his
own collections of often
used or "favourite"
directivities.
New (Collection) Edit collections
4. DIRECTIVITY MODULE
160
Creates a new collection (stored as .COL files in CATTDATA-folder SD).
Delete (Collection) Edit collections
Deletes the selected collection. Note: the directivity files themselves are not deleted, only the
collection.
Help (Collection) Edit collections
Display collection-specific help if available (CHM, HLP, PDF, HTM or TXT).
Add... (Directivity) Edit collections
Adds a new directivity to the currently selected collection.
Remove (Collection) Edit collections
Removes a directivity from the currently selected collection. Note: the directivity file itself is not
deleted, only the reference to it in the collection.
File|New Directivity|15 format (SD0)
Creates new generic data for the 15 polar-interpolated format.
File|New Directivity|10 format (SD1)
Creates new generic data for the 10 full-space format.
File|New Directivity|DLL-format (SD2)
Creates new default data for the DLL-interface format. Displays a dialog listing all installed
Brand DLLs and the models they implement.

Each brand DLL is installed in a CATTDATA-folder SD2DATA sub-folder with the same name
as the DLL itself and will be automatically recognized. Optional dedicated help is included.
Example for the CATT_Generic module:

4. DIRECTIVITY MODULE
161
CATTDATA-folder
SD2DATA (folder)
CATT_Generic (folder)
CATT_Generic.DLL
CATT_Generic.CHM
File|Open Directivity|CLF format (CF1,CF2)...
Opens a CLF-format directivity file from the CATTDATA-folder SD or sub-folders [CLF]. Note:
CLF-format files cannot be edited or exported.
File|Open Directivity|15 format (SD0)...
Opens a 15 interpolated format directivity file from the CATTDATA-folder SD or sub-folders.
File|Open Directivity|10 format (SD1)...
Opens a 10 full-space format directivity file from the CATTDATA-folder SD or sub-folders.
File|Open Directivity|DLL- format (SD2)...
Opens a DLL-interface format file from the CATTDATA-folder SD or sub-folders. An SD2-file is
normally only edited via the interface but it is in text-format and can be loaded into an editor for
more efficient editing of e.g. complex array definitions:
Syntax (keywords in BOLD, values in italic, explanations in plain text, [ ] items are optional):

CATT-SD2
Version = file-version
Model = model-name
Accuracy = level
Description = description
Visuals = none|extents|marker (version 1 only)
Brand = dll-name
DLLversion = dll-version
lines of optional model dependent data

CATT-SD2 a file-type tag

Version a file-format version number, 0 for v7.1 and v7.2, 1 for v8.0

Model a model name as defined in the DLL help.

Accuracy some models may have optional accuracy levels (see DLL help). If not this
value should be 1.

Description a descriptive name of the source

Visuals for version 1 only: If marker then the DLL returns marker-files for all
array elements.

Brand name of the DLL (without .DLL) that handles the model. An SD2 DLL is
placed in the CATTDATA-folder SD2DATA sub-folder with the same name
as the DLL (assuming that Brand = BrandX, the DLL will be
CATTDATA-folder\SD2DATA\BrandX\BrandX.DLL).

DLLversion the optional model-dependent data assumes a DLL with this version.

4. DIRECTIVITY MODULE
162
lines of optional model dependent data
any number of lines of data that each DLL knows how to interpret.
The model-dependent optional data can be edited via the SD2 dialog but for some models it
may be more efficient to use an editor to edit the SD2-file directly. An SD2-file has optional
dedicated help on each model implemented (Help button in the SD2 dialog). An example SD2-
file:

CATT-SD2
VERSION = 1
MODEL = Intellivox-2B
ACCURACY = 3
DESCRIPTION = Duran column array
VISUALS = marker
BRAND = Duran_CATT
DLLVERSION = 4
OPENINGANGLE = 10
FOCUSDISTANCE = 20
AZIMUTH = 0
CALIBRATED = yes

File|Open Directivity|Any Format...
Opens any supported format (SD0, SD1, SD2, CF1 or CF2 and possibly future formats).
File|Save Directivity
Saves the directivity to the current file.
File|Save Directivity As...
Saves the directivity to a new file of the same type in the CATTDATA sub-folder SD folder or in
sub-folders to SD (one level deep). The file-name can have max. 15 characters including the
sub-folder name and \ if saved in a sub-folder. Source directivity file names can use hyphens
(-), underscores (_), letters and numbers. If a file is saved in a sub-folder it may start with a
number so that BRAND\modelnumber can be used. Note: CLF files cannot be saved.
File|Import Directivity|CATT-SD0 TXT...
Imports the 15 interpolated format. In the SD0 text-format the source directivity is entered as
polar measurements for horizontal and vertical directivity-values for each of the six octave
bands 125Hz to 4kHz, see Fig. 4.1.
Keywords are case-insensitive, blank lines and comments allowed (introduced by semi-colon).
Syntax (keywords in BOLD, values in italic, explanations in plain text, [] items are optional):
4. DIRECTIVITY MODULE
163
front
top
Side
view
vertical
0
180
bottom
back
270 90
15
front
left
Top
view
horizontal
0
180
right
back
270 90
15

Fig. 4.1 15 source directivity angle convention (SD0).


CATT-SD0
Version = n
Description = loudspeaker name
OctaveBands = <[125] [250] [500] [1k] [2k] [4k] [8k] [16k]>

If electro-acoustic source:
Sensitivity = <[S125Hz] [S250Hz] [S8kHz] [S16kHz]>

If natural source:
NomSPL_at_1m = <[N125Hz] [N250Hz] [N8kHz] [N16kHz]>

MaxSPL_at_1m = <[M125Hz] [M250Hz] [M8kHz] [M16kHz]>
Extents = xmin xmax ymin ymax zmin zmax
[125
polar data for 125 Hz]
[250
polar data for 250 Hz]
[500
polar data for 500 Hz]
[1k
polar data for 1kHz]
[2k
polar data for 2kHz]
[4k
polar data for 4kHz]
[8k
polar data for 8kHz]
[16k
polar data for 16kHz]
CATT-SD0 a file-type tag
Version a file-format version number, 1 for v7.2, 2 for v8.0
Description a descriptive name of the source e.g. manufacturer model (max 30
characters).
OctaveBands defines which of the octave-bands 125 to 16k (version 1 only 125 to 4k)
that are measured (in the order of increasing center frequency). The
octaves not measured are extrapolated.
4. DIRECTIVITY MODULE
164
Sensitivity source sensitivity i.e. the SPL at 1 m distance on the axis for 1 W electrical
input. Only values for the OctaveBands included are specified (in the
order of increasing center frequency). Used for electro-acoustic sources
instead of NomSPL_at_1m.
NomSPL_at_1m nominal SPL at 1 m distance on the axis. Only values for the
OctaveBands included are specified (in the order of increasing center
frequency). Used for natural sources instead of Sensitivity.
MaxSPL_at_1m max. SPL at 1 m distance on the axis. Only values for the OctaveBands
included are specified (in the order of increasing center frequency).
Extents (for Version >= 1) lists the min-max 3D-extents of a rectangular box
surrounding the source. The origin is the acoustic center. The x-axis is
forward along the source axis, the y-axis is right to left as viewed from the
source, the z-axis is upwards. Note that v8 also allows actual source 3D
visuals.
For all OctaveBands polar data for every 15th degree is given.

H125Hz,0 ... H125Hz,180 sym
or
H125Hz,0 ... H125Hz,345

V125Hz,0 ... V125Hz,180 sym
or
V125Hz,0 ... V125Hz,345
where
Hb,a horizontal directivity in dB ( -15dB, 50dB) in relation to (0,0) for octave-
band b and angle a for every 15th degree.
Vb,a vertical directivity in dB ( -15dB, 50dB) in relation to (0,0) for octave-band
b and angle a for every 15th degree.
sym can be entered instead of the remaining values if the directivity is symmetrical
The amount of attenuation is in dB relative the on-axis value that should be zero (if the first on-
axis value for each band is non-zero the value is subtracted from all sub-sequent values for
that band). The resulting numbers must lay in the range -15 to 50 dB. The sign is reversed
only not to have to enter a lot of minus-signs.
Hb,180 and Vb,180 must have the same value.
Data is specified comma, space or TAB delimited and decimal point must always be used
independent of language settings.
Sample SD0 TXT-file:

CATT-SD0
Version = 2
Description = none
OctaveBands = < 125 250 500 1k 2k> ;Note: no 4k 8k or 16k values
Sensitivity = < 100.0 100.0 100.0 100.0 100.0> ;electro-acoustic source
MaxSPL_at_1m = < 100.0 100.0 100.0 100.0 100.0>
Extents = -0.2 0.1 -0.1 0.2 -0.2 0.3 ; >= version 1
125
0 0 0 0 0 0 2.0 4.0 6.0 8.0 9.0 9.0 9.0 9.0 9.0 8.0 6.0 4.0 2.0 0 0 0 0 0
0 0 0 0 0.5 1.5 2.5 4.5 6.5 8.0 9.0 9.0 9.0 9.0 9.0 8.0 6.5 4.5 2.5 1.5 0.5 0 0 0
250
0 0 0 0 0 2.0 4.0 6.0 8.0 10 12.0 12.0 12.0 12.0 12.0 10.0 8.0 6.0 4.0 2.0 0 0 0 0
4. DIRECTIVITY MODULE
165
0 1.0 2.0 3.0 4.0 3.0 4.0 6.0 8.0 10.0 12.0 12.0 12.0 sym
500
0 0 0 0 2.0 4.0 6.0 8.0 10.0 12.0 14.0 14.0 14.0 sym
0 1.0 2.5 3.0 5.0 6.0 8.0 8.0 10.0 12.0 14.0 14.0 14.0 sym
1k
0 0 0 2.0 4.0 6.0 8.0 10.0 12.0 14.0 16.0 16.0 16.0 sym
0 0.5 1.5 3.0 6.0 8.0 10.0 10.0 12.0 14.0 16.0 16.0 16.0 sym
2k
0 0 2.0 4.0 6.0 8.0 10.0 12.0 14.0 16.0 18.0 18.0 18.0 sym
0 1.0 3.0 5.0 7.0 10.0 11.0 12.0 14.0 16.0 18.0 18.0 18.0 sym
Note that a file must be correct or it will not import.
File|Import Directivity|CATT-SD1 TXT
Imports the 10 measured full-space format (*.TXT), see Fig. 4.2. The SD1 text-format is
made flexible so that the row order is selectable.
Keywords are case-insensitive, blank lines and comments allowed (introduced by ";").
Syntax (keywords in BOLD, values in italic, explanations in plain text, [] items are optional):

front (on-axis)
left right
bottom
top
arc direction 0
180
170
10
top
left
Back
view
rot direction
0
180
right
bottom
270 90
10

Fig. 4.2 10 source directivity angle convention (SD1).

CATT-SD1
Version = n
Description = loudspeaker name
RotGroups = from - to [, from - to ...]
OctaveBands = <[125] [250] [500] [1k] [2k] [4k] [8k] [16k]>

If electro-acoustic source:
Sensitivity = <[S125Hz] [S250Hz] [S8kHz] [S16kHz]>

If natural source:
NomSPL_at_1m = <[N125Hz] [N250Hz] [N8kHz] [N16kHz]>

MaxSPL_at_1m = <[M125Hz] [M250Hz] [M8kHz] [M16kHz]>
Extents = xmin xmax ymin ymax zmin zmax
[125
4. DIRECTIVITY MODULE
166
matrix for 125 Hz]
[250
matrix for 250 Hz]
[500
matrix for 500 Hz]
[1k
matrix for 1 kHz]
[2k
matrix for 2 kHz]
[4k
matrix for 4 kHz]
[8k
matrix for 8 kHz]
[16k
matrix for 16 kHz]

CATT-SD1 a file-type tag
Version a file-format version number, 1 for v7.2, 2 for v8.0
Description a descriptive name of the source e.g. manufacturer model (max 30
characters).
RotGroups defines how the groups of source rotation data is stored in the file. Angle
convention according to Fig. 4.2 is used but an imported file may have
another convention. This field describes the convention used in the
imported file in terms of the convention used in CATT-Acoustic. Arcs for
rotation values not stored in the file are created assuming symmetry.

If the data to be imported assumes full symmetry the possible values are:

RotGroups = 0-90
RotGroups = 90-0

and 100-180 is created as a vertical mirror copy of 80-0 and then 190-350
is created as a horizontal mirror copy of 170-10.

If the data to be imported assumes horizontal symmetry some possible
values are:
RotGroups = 0-180
RotGroups = 180-0
RotGroups = 0-90,180-100
RotGroups = 90-0,180-100
RotGroups = 90-0,100-180

and 190-350 is then created as a horizontal mirror copy of 170-10.
If the data to be imported assumes no symmetry at all, many combinations
are possible, e.g.

RotGroups = 0-350
RotGroups = 350-0
RotGroups = 0-180,350-190
RotGroups = 90-0,180-100,270-190,350-280
OctaveBands defines which of the octave-bands 125 to 16k (version 1 only 125 to 4k)
that are measured (in the order of increasing center frequency). The
octaves not measured are extrapolated.
4. DIRECTIVITY MODULE
167
Sensitivity source sensitivity i.e. the SPL at 1 m distance on the axis for 1 W electrical
input. Only values for the OctaveBands included are specified (in the
order of increasing center frequency). Used for electro-acoustic sources
instead of NomSPL_at_1m.
NomSPL_at_1m nominal SPL at 1 m distance on the axis. Only values for the
OctaveBands included are specified (in the order of increasing center
frequency). Used for natural sources instead of Sensitivity.
MaxSPL_at_1m Max. SPL at 1 m distance on the axis. Only values for the octave-bands
included are specified (in the order of increasing center frequency).
Extents (for Version >= 1) lists the min-max 3D-extents of a rectangular box
surrounding the source. The origin is the acoustic center. The x-axis is
forward along the source axis, the y-axis is right to left as viewed from the
source, the z-axis is upwards. Note that v8 also allows actual source 3D
visuals.
For each octave-band 125 - 16k a matrix of data according to the header definition
(RotGroups and OctaveBands) must be included. A file must at least contain values for the
range 0 to 90. Each octave band matrix is preceded by the octave-band label (125, 250,
500, 1k, 2k, 4k, 8k, 16k).
The amount of attenuation is in dB relative the on-axis value that should be zero (if the first on-
axis value for each band is non-zero the value is subtracted from all sub-sequent values for
that band). The resulting numbers must lay in the range -15 to 50 dB. The sign is reversed
only not to have to enter a lot of minus-signs.
The value at 180 must always be equal for all octave-band arcs.
Data is specified comma, space or TAB delimited and decimal point must always be used
independent of language settings.
Sample SD1 TXT-file:

CATT-SD1
Version = 2
Description = Sample speaker
RotGroups = 90-0 ; i.e. data is specified in reverse order from Fig 4.1
OctaveBands = < 125 250 500 1k > ; i.e. no data for 2k 16k are available
Sensitivity = < 100 100 100 100 >
MaxSPL_at_1m = < 120 120 120 120 >
Extents = -0.2 0.1 -0.1 0.2 -0.2 0.3 ; version 1

125
;according to RotGroups rows correspond to 90, 80, 70, ..., 0 rotation
0 1.7 4.2 6.3 8.5 11.7 13.9 16.4 19.6 22.6 26.2 27.9 30.0 31.7 30.0 29.8 28.0 33.6 31.4
0 0.8 3.5 5.8 8.4 10.9 13.8 16.3 19.1 22.0 25.3 27.3 29.0 30.7 30.7 30.9 30.3 30.0 31.4
0 0.7 3.2 5.7 8.5 10.5 12.7 15.4 18.5 21.9 24.9 27.6 29.7 31.4 30.6 31.7 33.3 31.7 31.4
0 0.8 3.0 5.3 7.8 10.0 11.6 14.5 17.8 21.6 24.5 27.1 29.3 30.4 31.7 33.7 33.1 33.6 31.4
0 0.6 2.4 4.8 6.8 9.2 11.6 13.9 17.4 21.3 24.2 26.1 27.3 28.1 30.8 33.2 34.2 35.9 31.4
0 0.1 2.0 4.3 6.8 9.6 11.1 13.8 17.6 20.6 24.1 25.4 26.5 26.0 26.7 28.0 31.6 34.9 31.4
0 0.5 1.7 4.0 6.1 9.0 11.4 14.0 17.5 21.3 24.0 26.4 26.8 26.7 26.2 26.2 29.4 33.2 31.4
0 0.1 1.3 3.6 5.8 8.0 10.4 13.4 16.5 20.5 23.5 26.6 28.3 28.3 27.3 26.0 28.5 32.1 31.4
0 0.3 1.5 3.2 5.0 7.2 9.3 12.0 15.2 19.0 21.9 25.2 27.7 29.3 29.6 30.1 31.6 31.3 31.4
0 0.3 1.5 3.0 4.7 7.5 8.8 11.4 14.4 18.0 21.3 23.8 26.2 27.3 27.5 29.0 34.4 32.0 31.4

250
;same principle for 250 Hz
4. DIRECTIVITY MODULE
168
...

500
;same for 500 Hz
...

1000
;same for 1kHz
...

;2k-16k
;no data
Note that a file must be correct or it will not import.
File|Export Directivity|CATT-SD0 TXT...
Exports the current SD0 or SD2 format to the 15 interpolated text format. If the current format
is SD2, the export is made at the selected plot distance (if distance-dependent).
File|Export Directivity|CATT-SD1 TXT...
Exports the current SD1 or SD2 format to the 10 measured text format. If the current format
is SD2, the export is made at the selected plot distance (if distance-dependent).
File|Export Directivity|CATT-SD2 Interpolated...
Exports a current distance-dependent SD2 format to a set of 10 3D-ballons valid at different
distances. A new SD2-file is created based on the CATT_Generic DDI model INTER-
POLATED0 that is less accurate than an actually run-time array-modeled SD2 but is much
faster and can be used for faster initial aiming. For details see the CATT_Generic help-file.
The set of SD1 3D-balloons are placed in
CATTDATA-folder SD2DATA\CATT_Generic\Interpolated0
rather than in CATTDATA-folder SD since they do not represent actual sources. These files
are named expname_01.SD1, expname_02.SD1 etc. where expname is selected at export.
Note: the currently selected Plot distance is used as the far field limit.
Utilities|Make Omni
Makes the directivity of the currently selected octave band be omni-directional.
Utilities|Copy From
Copies the directivity of another octave-band to the current one. Since most sources have a
directivity gradually increasing with frequency, it is often practical to start from the 125 Hz band
and then copy and modify the next band until all bands are created. This function is most
useful for the SD0 format since it is often entered manually creating generic directivity
patterns.
Utilities|Calculate DI|Re Axis
Calculates and displays the directivity index, DI, re the axis for the currently selected directivity
and octave-band. DI is also shown in prediction output text-files (E_ss_rr.TXT and
PARAM_ss.TXT) and with "3D balloons".
4. DIRECTIVITY MODULE
169
Utilities|Calculate DI|Re Beam
Calculates and displays the directivity index, DI, re the beam axis (for SD2-sources with beam-
steering).
Utilities|Copy Name to Clipboard
Copies the currently loaded directivity name into the clipboard. It can then be pasted into
CATT-Edit while editing a source-file.
Utilities|Protect Data
An option to protect the data in an SD0- or SD1-type
directivity file (CLF-format files are always protected).
If a file is protected no data can be changed unless it
is exported as text and imported again. A protected
file shows the protection info in a special field on the
dialog. The purpose of the protection is to prevent
accidental alteration of files supplied from manu-
facturers. SD2-files do not need this protection
because data is locked in a DLL anyway and can't be
tampered with (except for the CATT_Generic DLL
that is supposed to be more open). The demo version
cannot fully use protected files (CLF-format files are
always protected).
Utilities|Show Array Elements
Creates a plot-file for showing the location and aim of all array elements as well as their polar
patterns and weights. The polar patterns are in |p| rather than dB and 1.0 is at the same scale
as 1 m. Any applied weights are indicated by a correspondingly changed radius for the polar
pattern concerned. The x-,y-, and z-axis have large tics every meter and small tics every half
meter. Lines are drawn from each element location to a point on the array axis located at the
selected plot distance from the array origin. The plot-files are named CATTDATA-folder
SD\PLT\ELEMENTS_oct.PLT. Note: the element information is not necessarily available for
all kinds of DDI array modules. The ARRAY0 model of the CATT_Generic DDI module does
however supply the information.
4. DIRECTIVITY MODULE
170
4.2 Dialogs
SD0, SD1, CF1, CF2 and SD2 formats have several dialog items in common as described
after the format specific dialogs.
15-degree interpolated format (SD0)
This format requires horizontal and vertical polar measurements for every 15 to be entered or
imported.

Symmetrical
Makes the current polar graph be horizontally or vertically symmetrical mirroring the values
from the side with the active angle to the other side. The active angle is marked by a black
handle.
Cylindrical
Creates a cylindrical symmetry by first making the current polar graph symmetrical and then
copies the values to the other graph.
4. DIRECTIVITY MODULE
171
10-degree measured format (SD1, CF1, CF2)
This format requires arcs rotated in 10 steps around the source axis and with values every
10 along each arc to be entered or imported. Note: CF1 and CF2 files are converted internally
to SD1 format and cannot be edited, saved or exported. A more extended view is available via
the CLFViewer button (assuming the viewer is installed [CLF]). CLF files do not indicate a max
SPL per octave band, use the max voltage if available as shown by the CLFViewer.

Slight interface variation for CLF-format files:

Symmetrical
Makes the current directivity be horizontally symmetrical mirroring the arcs on the current side
of the sphere to the other side.
Cylindrical
Creates a cylindrical symmetry by copying the current arc to all rotation angles.
4. DIRECTIVITY MODULE
172
CLFViewer
If a CLF-format file is loaded, the CLFViewer can be launched to give fuller information about
the file [CLF]. This function relies on that the viewer has been assigned to handle CF1- and
CF2-files as is done by the CLF software installer.
DLL-format (SD2)
This format is based on the DLL Directivity Interface (DDI) and requires DLLs that translate or
calculate the directivity. DLLs are placed in sub-folders to the CATTDATA-folder SD2DATA.
The sub-folders have the same names as the DLLs.

Name (Model)(DLL Directivity Interface (DDI))
The model name, the info field below shows additional model info.
Ver (Model)( DLL Directivity Interface (DDI))
The minimum DLL-version that this model's optional data is meant for.
Name (Brand)( DLL Directivity Interface (DDI))
The name of the DLL (.DLL removed). Assuming the name BrandX the DLL is CATTDATA-
folder SD2DATA\BrandX\BrandX.DLL. All data needed by the particular DLL is placed in its
own folder as well as any help available (BrandX.CHM, BrandX.HLP, BrandX.PDF,
BrandX.HTM or BrandX.TXT) that is shown when Help is pressed.
Ver (Brand)( DLL Directivity Interface (DDI))
Version of the DLL, the info field shows additional DLL info.
4. DIRECTIVITY MODULE
173
Help (Brand)( DLL Directivity Interface (DDI))
Displays the DLL help if available. Help in CHM, HLP, PDF, HTM or TXT format (searched in
that order) placed in the DLL folder with the same name as the DLL but with
.CHM,..HLP,.PDF,.HTM or .TXT extension. This gives a manufacturer an opportunity to
include custom made on-line documentation for their loudspeaker models.
{Plot-distance (DLL Directivity Interface (DDI))
For distance dependent models the directivity is plotted and exported at this distance.
Accuracy (DLL Directivity Interface (DDI))
For models where accuracy can be selected for a trade-off between speed and accuracy.
Far-field at (DLL Directivity Interface (DDI))
For distance dependent models this value marks where the far-field starts (approximately).
Ref (DLL Directivity Interface (DDI))
For distance dependent models the reference (what is set to 0 dB when plotting) can be
selected. The options are:
on axis (1 m) the reference is the directivity on axis at 1m
on axis (r) the reference is the directivity on axis at the selected plot distance, r
on beam (r) the reference is the directivity of the main beam at the selected plot distance, r
(same as on axis (r) if the source has no beam-steering indicated). Because
the polars are created with 2 resolution a beam angle of e.g. 5 may cause
the value at the beam not to be exactly 0 dB.
Note: the air absorption is not applied in polar and balloon plots but only at prediction.
(Additional model-dependent data) (DLL Directivity Interface (DDI))
A list-box with the optional model-dependent data along with some edit and manipulation
buttons. Press Help to learn about optional data for each model implemented in the current
DLL.
Update model data
Reads the model-dependent data and passes it to the DLL. Can be used to check the validity
of the added or edited data without creating any plot-files.
Elements common to SD0, SD1, CF1, CF2 (and SD2) formats
A polar value can be changed either by entering a value in dB in the Value edit-control below
the left graph or by direct manipulation of the small handles attached to the graphs. If Enter is
pressed, with the cursor in the Value edit-control, the current value is updated and the active
angle is incremented.
Natural (Source type)
A natural source such as a talker, singer or an instrument.
4. DIRECTIVITY MODULE
174
Electro-acoustical (Source type)
An electro-acoustical source such as a loudspeaker or loudspeaker array.
Sensitivity/Nominal SPL 1m (Source type)
The sensitivity information is not directly used except in the but source-file using Lp1m_a =
Lp_Sensitivity but should be given for reference and future use, for natural sources the
nominal (typical) spectrum can be used in the source-file using Lp1m_a = Lp_nominal.
Notes: CF1 and CF2 files of type "powered" or "active" do not have Sensitivity.
For SD2 this data cannot be changed via the dialog displayed since it is read from the DLL.
Max. SPL (Source type)
Max SPL at 1m on axis. These values are compared to the Lp1m values entered in the
source-file. These maximum level can be set in the source-file using Lp_max.
None (Visuals)
When plotted, the source has no visuals except for a point and the source id.
3D Extents... (Visuals)
For sources the 3D extents (a min-max box) can be set (relative the acoustic center).
This will serve as a
reference and give a feeling
for the actual size of the
source in plot-files as well as
VRML exports and
SHADED.OGL. Note that for
SD2 the extents can not be
changed from the dialog like
SD0 and SD1 since the
extents of an SD2 is typically
taken from the DLL (for
CATT_Generic models, the
extents may be entered in
the Additional model-
dependent data list but
typically it will be given by the
DLL in question and cannot
be altered).
3D marker (Visuals)
The source visual is defined by the selected CATT marker-file located in the CATTDATA-
folder SD or a sub-folder of SD. Marker-files can be created in GEO-format using the NOROOM
directive and be exported using Prediction module File|Export|CATT Marker MRK. The
coordinate system used should be x as the source axis, z up and y to the left and the origin at
the acoustical center, see dialog above for 3D extents.
Note: For SD2-files the marker-files (if any) are supplied by the DDI module DLL. CLF files
may have 3D cabinet data embedded and it is then automatically converted to an MRK-file the
first time the Visuals button is clicked (CLF files with no cabinet get a +/-1 dm box).
4. DIRECTIVITY MODULE
175
Description
For reference purpose e.g. for the real name of the loudspeaker or source e.g. "Female talker"
or "Horn, type 15" (SD0/SD1/SD2).
(Octave-band)
The radio-buttons selects what band to edit (SD0/SD1) and/or to create 3D balloons for. If
bands are extrapolated or estimated it is indicated.
Locked
When the check-box is selected no change of directivity data can be made but only inspection.
Each time a new directivity is loaded or imported, editing is initially locked to prevent
accidental changes. See also Utilities|Protect Data.
For plot-files this module will create a CATTDATA-folder SD\PLT where all plot-files are
created.
(Plot)
Note: for SD2 arrays with a distance dependent directivity, the air absorption is not included in
polars and balloons even if Plot distance is set far away but is added only at prediction.
Oct (Balloon) (Plot)
Creates plot-files for the interpolated 3D directivity for the selected octave-band
(SD\PLT\BALLOON_oct.PLT). The directivity is sampled at 7.5 steps for SD0 and 5 for
SD1, CF1 and CF2 while SD2 has an option of 5 or 2 (Preferences) and is thus not simply a
plot of the entered values. For SD0 seamless interpolation is inherent in the procedure
employed, for SD1 3D interpolation is performed between the closest 4 data points and for
SD2 (depending on the DLL, this may either be exactly simulated angles or be interpolated
from measured data). A Preferences option allows for balloons to be colors-shaded.
All (Balloon) (Plot)
Similar to Oct above but all octave-bands are plotted, each as sub-frame in a single file. The
file-name is BALLOONS.PLT.
Polars (Plot)
Creates a plot-file for all octaves (SD\PLT\POLARS.PLT) with polar directivity plot-file octave
bands 125Hz - 16kHz. For SD0 and SD1 the data at is plotted from the data set at the
respective resolution while SD2 is plotted at 2 resolution.
Contours (Plot)
Creates a plot (CATTDATA-folder SD\PLT\CONTOURS.PLT) of the -3, -6 and -9 dB contours
at selected distance and angle to a fictive audience plane. For details on directivity contours,
see Section 4.3.
4. DIRECTIVITY MODULE
176

Visuals (Plot)
Creates a plot-file (SD\PLT\VISUALS.PLT) for the source visuals (if not None).
4.3 Theory
Five types of directivities are available. Type SD0 is interpolated from horizontal and vertical
polar measurements entered at 15 steps. This format is most suitable for sources that are
entered manually from polar data supplied on loudspeaker data-sheets or for creating generic
loudspeaker types. Type SD1 is based on full space measurements in 10 steps (often
assuming symmetry so that only a fourth or half of the values are actually measured),
intermediate values are interpolated. Type CF1 and CF2 [CLF] are measured at 1/1-
octave:10 steps and 1/3-oct:5 respectively and are converted internally to SD1 format. Type
SD2 is based on the DLL Directivity Interface (DDI) defined by CATT and is capable of
arbitrary data-format translation, array modeling and other special functions.
The 15-degree interpolated format (SD0)
The directivity approximation can handle any type of polar patterns, also non-symmetrical
ones. The only constraints are to ensure consistent and logical patterns:
1) the on-axis value must be 0 since it is the reference (enforced);
2) the horizontal and the vertical value at 180 (in the back) must be equal (enforced);
3) values must be in the range -50 dB to 15 dB .
The 10-degree measured format (SD1)
Can handle any type of polar pattern, also non-symmetrical ones. The only constraints are to
ensure consistent and logical patterns:
1) the on-axis value must be 0 since it is the reference (enforced);
2) all values at 180 (in the back) must be equal (enforced);
4. DIRECTIVITY MODULE
177
3) values must be in the range -50 dB to 15 dB.
The any-degree measured, interpolated or simulated format
(SD2)
The SD2 directivity format is based on a DLL interface rather than a data format. This means
that the data that a DLL interfaces with may:
1) be measured, analytical or simulated at any resolution;
2) be based on unorthodox spacing (e.g. 1 in the front and 10 in the back of a directive
speaker);
3) have > 15 dB overshoot.
4) be distance dependent e.g. for arrays that typically do not have 1/r behaviour and that may
have very long near-fields (up to 100 m is not uncommon)
5) be in higher frequency resolution that 1/1-octaves (v8 still only handles 1/1-octaves but the
SD2-format opens up for a future higher resolution)
To achieve the above it is "only" a question of writing a DLL for it since the interface towards
the prediction software is the same.
Prediction using array-modelling takes at least one magnitude longer with a full array modelled
(say 16 transducers that all call an internal DLL SD0-, SD1- or CLF-version of the transducer
directivity and for every 1/6-octave it makes a summation for the octave band value so it has
to take some extra time). On the positive side is that when predicting using high directivity
fewer rays can be used since the direct sound (that is not solved by rays) is dominating and
that compensates some for the longer calculation.
Note regarding auralization with calibrated SD2 sources
Some SD2 format sources are absolute calibrated (typically arrays, see each individual DDI
module help-file) and use the actual assumed Lp1m_a in the source-file that should look like
this:

srcid x_pos y_pos z_pos model.SD2 x_aim y_aim z_aim or aim(H,V)
Lp1m_a = Lp_voice_normal or other desired acoustic input
Gain_a = < Gain_a-values <= 0 > use negative values to attenuate below max
Delay_e = delay
With Gain_a all zeros, the predicted SPL will correspond to the max possible SPL with pink
input no matter the values of Lp1m_a. Gain_a can be used with negative values to control
how much below max to operate. The reason for giving an actual Lp1m_a spectrum that does
not affect the SPL is because this spectrum must be removed for auralization since it is later
to be replaced by the spectrum of the anechoic file at convolution. It also makes it possible to
mix calibrated and non-calibrated sources in auralization (e.g. a main array and delayed
under-balcony fill speakers) as long as they all use the same Lp1m_a.
In prediction result files, the source level at 1 m is not indicated for a calibrated SD2, instead
the Gain_a values are shown.
4. DIRECTIVITY MODULE
178
Directivity Index
The Directivity Index (DI) is:
DI = 10 log10()
where is the directivity factor defined as in [Beranek], p109:
...the ratio of the intensity on a designated axis of a sound radiator at a stated distance r to the
intensity that would be produced at the same position by a point source if it were radiating the
same total acoustic power as the radiator. Free space is assumed for the measurements. Usually
the designated axis is taken as the axis of maximum radiation, in which cases always exceeds
unity...
DI is always calculated on the main axis and if directivities are entered with the maximum
radiation off axis, DI may become negative. This causes no problems in the predictions. For
SD2-sources that have beam-steering, the DI re the beam angles can be displayed.
To obtain the total acoustical power and DI of a source and octave-band the directivity is
sampled at 412 uniformly spaced points for SD0 and SD1 (4/412 steradians) and at 1652
points for SD2 (4/1652 steradians).
Directivity Contours
Directivity contours are created by backing off from the axis until -3 dB (for the -3 dB contour)
is reached. This is done for every 5 around the axis and by stepping back 1 at the time.
Since the contour calculation starts out from the axis, sources that do not have their maximum
radiation on-axis will have somewhat misleading contours, see Fig 4.1. for a 3dB contour
example.

Fig. 4.1 Contours for max radiation off-axis
Caching of DI and contours
The calculation of DI and contours can be time-consuming for some types of sources so the
results are cached in a parallel file named after the directivity file, e.g. for a myarray.SD2 file
the cached data will be stored in myarray_SD2.SDC. The actual caching takes place the first
time a directivity is used in prediction and is updated if the directivity file has changed. SDC
files can be deleted at any time and will be created when needed.

5. PLOT-FILE VIEW/PRINT MODULE
179
5. PLOT-FILE VIEW/PRINT MODULE
CATT-Acoustic creates four types of plot-files. Static 2D, static 3D and 2D-, 3D-files with
dynamic sub-frames. Depending on the type, different buttons on the optional Plot-file
control dialog and the toolbar are enabled. The plot-file type is displayed in the left status bar
after the plot-file name.
The plot-file viewer module has a near identical standalone version, CATTPLT32.EXE, that
can be loaded from the File|External CATT Tool menu and can be used e.g. for viewing and
comparing plot-files side by side.
If a plot-file called startup.plt is found in the CATTDATA-folder it will be shown at startup.
When the mouse is passed over 2D graphs, maps and geometries the left status-bar shows
values corresponding to the current mouse position:
2D geometry projections shows ( x ; y ; _ ), ( x ; _ ; z ) or ( _ ; y ; z ) depending on view,
graphs show (x_value ; y_value),
2D maps show (x ; y ; map_z ; map_value).
In addition to viewing, printing, and exporting plot-files, the module can also play Windows
WAV-files. A Preferences option allows the View module to be automatically minimized when
another module becomes active or to not show the Plot-file control.
5.1 Menus
File|Open Plot-file...
Opens a particular plot-file (.PLT) for viewing.
File|Save Plot-file
Saves the current plot-file (only meaningful for 3D plot-files - the perspective will be saved).
File|Save Plot-file As...
Save current plot-file under a new name.
File|Export Plot-file To|Meta...
Exports the current plot-file to the 32-bit
Enhanced Windows Meta-file format to insert in
e.g. MS Word. Displays a dialog for Meta-file
settings. File extension is set to .EMF. See also
Edit|Copy below.

Plot width Windows Enhanced Meta-file export
Width of the plot-area to use, in mm. The height will be calculated to preserve true aspect.
5. PLOT-FILE VIEW/PRINT MODULE
180
File|Export Plot-file To|Bitmap...
Exports the current plot-file to Bitmap (BMP) file for import into e.g. MS Word. Depending on
the type of plot-file a 4, 8 or 32-bit color file is created.
File|Export Maps For Spreadsheet...
If the current plot-file contains one or more audience area maps they can be exported to a
semi-colon delimited text-file for import into e.g. MS Excel, the maps will be written including
x, y coordinates and some general info. If the complete data set is marked and a Surface
graph is chosen it can be viewed inside Excel. Map points with no data will show up as blank
cells in Excel. This is a function requested by several users but using Excel's Surface graph
instead of the actual map in a PLT-file is not recommended, see below. There may be other
reasons to export the data though.
Note: The map values are upside down in Excel as compared to the map shown by the PLT-
viewer. This is because a different convention in Excel but a Surface graph will have the
same principal look as the original in the PLT (since the x-y coordinates are given they will
help the interpretation). However, carefully note that the Excel Surface graph interpolates the
values to create a nice-looking smooth graph and that can sometimes be deceptive. For maps
with a small Step value the x- and y-values on the graph axis must be set as Numbers with
say 2 decimals to display well. A further note is that the actual data values are located at the
crossing of the lines in the Surface graph rather than in the middle of each map square as in
the PLT-file.
File|Create Header Plot-file...
Creates a plot-file with only a header text displayed in the center. This can be used e.g. to
create a plot-file list interleaved with short descriptions. If a list-file is currently open the header
file is inserted in the list after the currently selected plot-file (to simplify creation of lists with
header plots). To edit the list, see List menus below.
File|Page Setup...
File|Print Plot-file...
Prints the current plot-file to the printer. The print-out is WYSIWYG so if you zoom a 2D plot
also the print-out will be zoomed. To change printer, paper, size, or orientation, use Page
Setup that displays a standard Page Setup dialog for selection of printer, page size, margins
and orientation. These settings are local to the software and are kept until the application is
terminated. Since the plots have a fixed aspect ratio (640x385) the print-out is maximized and
placed towards the top margin of the selected print area.

margins
Portrait mode Landscape mode paper
plot
plot
plot
plot
title
margin

Edit|Copy As 32-bit Meta
Copies the current plot-file into the Windows Clipboard in Enhanced (32-bit) Meta-file format.
5. PLOT-FILE VIEW/PRINT MODULE
181
The picture can then be pasted into some 32-bit programs (e.g. MS Word or PageMaker). The
size of the plot is preserved. Note: the size of the plot-file viewer window is displayed in the
right status bar. This makes it easier to copy/paste using a particular size since the size can
be noted and if a new export/copy must be done with the same size, the window can be
resized to match the previous export/copy.
Edit|Copy As Bitmap
Copies the plot-window to a clipboard bitmap. Palette information is included so that true
colors are preserved. The size of the plot is preserved. See note above about plot size.
Edit|Copy 3D-view to PRD
Copies the current 3D view parameters to be the default settings in the current PRD-file (the
Geometry view/check dialog)
List|Open List-file
Opens a text-file with a list of plot-files (and optionally WAV-file) names. Each time plot-files
are created a list of all the names are written to a module-dependent text-file (e.g.
PLT_GEO_FULL.TXT for the Prediction module). The View module then receives a message
to display the list.
The format of a list-file is:

[PATH]PLOTFILE.PLT [[,][PATH]WAVFILE.WAV]
...
where the WAV-file is optional. If folder- or file-names contain spaces the whole path and
name must be enclosed in "".
Sample list-file:

C:\temp\view4.PLT
C:\temp\shaded.PLT c:\temp\sound.WAV
"C:\temp\view4 old.PLT"
"C:\temp\shaded old.PLT" "C:\temp\sound old.WAV"
"C:\temp\shaded old.PLT" C:\temp\sound.WAV
"C:\temp\shaded old.PLT", C:\temp\sound.WAV
Note: if edited manually, be sure to include the full path to the files so that the viewer always
can find them, if no path is given the viewer assumes the files to be in the same folder as the
list-file.
List|Save List-file
Saves the current list-file.
List|Save List-file As
Saves the current list-file under a new name. The current plot-file then becomes the first file in
the new list.
List|Insert Plot-file...
Inserts a new plot-file after the current one. To insert multiple files use Ctrl-LMB or Shift-LMB.
5. PLOT-FILE VIEW/PRINT MODULE
182
List|Remove Plot-file
Removes the current plot-file from the list. Note: if only one file remains in the list it can not be
removed.
List|Associate WAV-file
Associates a WAV-file with the plot-file. The WAV-file can be played by pressing the Play
WAV-file button on the Plot-file control dialog or the toolbar. When Options|Auto Play WAV
is on the WAV-file is played automatically when the plot-file has loaded.
List|Deassociate WAV-file
De-associates the WAV-file associated with the current plot-file.
List|Prev Plot-file, List|Next Plot-file
Display previous/next plot-file in the list (PgUp/PgDn). The File << and >> buttons on the Plot-
file control dialog and the toolbar duplicates these actions. If the previous/next plot-file has an
associated WAV-file and Options|Auto Play WAV-file is on the WAV-file is played.
List|Select Plot-file...
Displays a small list-box where plot-files in the list can be selected and the list be edited.
List|Auto View List
Toggles auto view the list of files the list (Ctrl+A). Use Options|Auto View Delay to set inter-
file delay. If plot-files have associated WAV-files and Options|Auto Play WAV-file is on
WAV-files are played automatically.
List|Print All Files In List
Prints all plot-files in the list with an option to skip files.
List|Export All Files In List To|
Exports all plot-files in the list to either Meta or Bitmap with an option to skip files.
List| Export All Maps In List
Has the same functionality as Print All Files In List but each plot-file in the list that has an
exportable map will instead be exported with the extension changed to .TXT. In other ways
similar to File|Export Maps For Spreadsheet.
Options|Plot-file Controls
Show/hide the floating dialog (Ctrl+R). Most functions on the control can be accessed via the
toolbar or by direct mouse-actions on the plot window. A Preferences option can be selected
so that the dialog is never opened.
Options|Auto Play WAV-file
Automatic play of a WAV-file attached to a plot-file when it is loaded.
5. PLOT-FILE VIEW/PRINT MODULE
183
Options|Auto View Delay...
Selects the inter-file delay (in ms) for plot-file list auto view.
Options|Select Frame...
Displays a small list-box where any plot-file frame can be selected.
For 3DA files with shaded polygon frames (notably PLINFO.PLT)
can be selected by the left mouse button by pressing F for Frame,
pressing F again returns to normal mode.

Options|Map Scale...

Choice of scale for color mapping.
Use original scale in plot-file Mapping scales
If this option is checked the original scales selected in Audience area mapping dialog is used
instead of the ones selected here.
Options|Map Smoothing
2D maps can optionally be smoothed to an apparent double resolution. The procedure chosen
does not actually paint a very false and too beautified picture but is rather just easier on the
eye. The procedure is as follows:
each map square is divided into 9 parts:
5. PLOT-FILE VIEW/PRINT MODULE
184

1/4 1/2 1/4
+---+------+---+
| | | |
+---+------+---+---+
| | A | B | C | B' => (B+C)/2
| |as is | | |
+---+------+---+---+
| | | D | E | D' => (D+E+F+G)/4
+---+------+---+---+
| F | G |
+---+---+
the center square (A) is left as is
each side rectangle (B) is mixed with its neighbouring rectangle (C)
each corner square (D) is mixed with its three neighbouring squares (E,F,G)
Note: 3D rotatable maps are not smoothed.
Options|Map Palette|...
Choice of palette for color mapping. The status line at the bottom of the frame window spells
out the abbreviations.
Options|Shaded 3D Palette|...
Choice of palette for shaded 3D plots. The status line at the bottom of the frame window spells
out the abbreviations.
Options|Remove 3D Shading
Converts a shaded or colored 3D plot to wire-frame. The process is irreversible but the file on
disk is not changed. To permanently convert a file to wire-frame it must be saved after
conversion.
5.2 Dialogs
Plot-file control
Most functions can also be performed with click-drag with the
mouse directly on the plot window where the value under mouse-
control is updated according to the speed of mouse movement.
Angle and movement step factor is according to the value selected
on the plot-file control or the toolbar. In the descriptions below LMB
means Left Mouse Button and RMB
5. PLOT-FILE VIEW/PRINT MODULE
185

General buttons
<< File >> Display previous/next plot-file in a list (duplicates the function of menu-
selections List|Prev Plot-file / List|Next Plot-file). (toolbar)
Reset Reset to initial or saved settings
Play WAV-file Plays a WAV-file if attached to a plot-file. (toolbar)
2D buttons
(Zoom) Zoom out/in. (toolbar)
Scroll bars Moves the plot
Scroll arrows Moves the plot
Click in the plot window.
When the plot is currently not zoomed: zooms and moves directly to the
corresponding fourth of the screen; when the plot is currently zoomed: the zoom
will be reset (same as the Reset button); If the dialog is closed, or not activated,
pressing the 1, 2, 3 or 4 on the keyboard while the plot window is active
gives the same result.
If 2D plots are zoomed, pressing/releasing the SHIFT key toggles the size of the text.
2DA buttons
2D buttons plus:
< Frame > Previous/next "frame" in the animation list. If the dialog is closed, or not
activated, left and right arrow keys performs the same function allowing for
basic list operation with PgUp/PgDn and arrow keys. (toolbar). If the mouse has
a wheel it can also be used to change frame as can LMB dragging across the
yellow title bar. Using Options|Select Frame any frame can be selected
3D buttons
When a button is pressed, the current value is displayed.
(Dist.) "Distance", move closer/farther (for Camera and Camera Set move forward/
backward). (RMB + toolbar)
(Lens) Lens angle smaller/larger for Natural, Camera and Camera Set (Ctrl-RMB +
toolbar).
(Move) Horizontal arrows: moves the picture left/right (for Camera and Camera Set
moves the camera left/right). Vertical arrows: moves the picture down/up (for
Camera and Camera Set moves the camera down/up). (Ctrl-LMB + toolbar)
(Rotate) Horizontal arrows: horizontal view angle (for Camera and Camera Set rotate
camera horizontally). Vertical arrows: vertical view angle (for Camera and
Camera Set rotate camera vertically). (LMB + toolbar)
5. PLOT-FILE VIEW/PRINT MODULE
186
(Step) Decrease/increase factor when selecting e.g. Dist. (1/64 to 64). If the dialog is
closed, or not activated pressing keyboard < decreases and pressing > increases
the step (can be done while click-dragging) (toolbar).
(View)
Natural Selects Natural point perspective. If the dialog is closed/not activated press N.
Parallel Selects Parallel perspective. If the dialog is closed/not activated press P. When
in parallel perspective, pressing I selects an isometric view.
Camera Selects Camera perspective. If the dialog is closed/not activated press C.
Set Shows and moves the camera in the current perspective (Natural or Parallel).
If the dialog is closed/not activated press S.
X, Y, Z Pressing these keys align the perspective along the X, Y or Z axis, most useful
with a parallel projection e.g. when viewing directivity balloons.
3DA buttons
3D buttons plus:
< Frame > See 2DA buttons above.
F Pressing F will enable by the LMB selection of frames with shaded polygons
(notably PLINFO.PLT), pressing F again returns to normal mode. If the plane
has sub-divisions they follow directly after the plane-frame and can be moved to
as usual e.g. by the mouse wheel or the right arrow key. While in Frame selection
mode - "select frame" is append to the text in the left status bar.
The extensive toolbar duplicates most controls on the floating Plot-file control dialog:



The toolbar tool-tips display the current value for a 3D setting (the current camera position and
target for camera mode, i.e. the aim line end-points as seen in the Camera Set mode)

6. SOURCE ADDITION MODULE
187
6. SOURCE ADDITION MODULE
The Source addition module is used for adding echograms from Full detailed calculation (or
for special cases from Early part detail ISM) for multiple sources when analyzing one or more
PA-loudspeakers interacting with the natural speaker and similar situations. The module can
optionally create ECH-files for the Post-processing module so that multiple source auralization
can be fine-tuned without requiring a new complete calculation for every source change.
Note: The actual addition for multiple source auralization is made after Post-processing by
adding created SIM- or WAV-files.
Several source parameters can be varied without the need for a recalculation in the Prediction
module. The files created by the Source addition module follow basically the same principles
for name syntax as for the Prediction module, see 6.3.
Note: for purely numerical estimates the Audience area mapping directly predicts maps for
multiple sources with delays.
To use this module the (Save data for) setting in the Prediction dialog for Full detailed
calculation must have been selected at prediction (for special cases also the Early part
detailed ISM can be used). The Prediction module then creates files with the name syntax
E_ss_rr.ADD which are read by the Source addition module. With the exception of source
directivity-files, ADD-files contain all necessary information to perform the source addition.
When prediction is made with (Save data for) Source addition selected, a CMB-file is
generated for the calculation case with the same base-name as the current source-file (typical
name SRC.CMB). A CMB-file can also be generated with only a geo-check by selecting Create
.CMB in the Geometry view/check dialog. This can be used to change the source aims and,
at the same time, generate SRCINFO plot-files where all source aims can be seen.
The module always works with files in the directory where the CMB-file was loaded from and
when a CMB-file is first loaded all ADD-files are searched and the module figures out which
source-receiver combinations are possible. Also the geometry check-sums are compared.
No information regarding source data (other than source locations) are saved in the ADD-files.
It is possible to create each source separately and then later add them together as long as the
geometry check-sums and the head-direction match and ADD-files have been created. The
quality of the calculations is up to the user to decide as no comparison is made concerning
number of rays used etc.
The following parameters can be varied for each run:
source combination (i.e. which sources to add together)
source directivities
source aims and roll angles
source level spectrum
electrical delays
background noise level (for RASTI and STI).
a project name
receiver combination (i.e. which receivers to use)
summation of direct sounds with or without phase.
Zero time (from where D-50 etc. is calculated) is set to when the first sound arrives (electrical
6. SOURCE ADDITION MODULE
188
delay taken into account) i.e. the "law of the first wavefront" is used. The length of the sum
echogram created is set from the shortest of the added echograms (delay taken into account).
6.1 Menus
File|Open Combination...
Opens an existing source combination/data CMB-file.
File|Save Combination
Saves the current source combination/data CMB-file.
File|Save Combination As...
Saves the current source combination/data under a new name.
Utilities|Latest Results List
Each time text-based result-files are created the corresponding filenames appear in a small
list in the main window. This item toggles the list on and off while preserving its contents. To
load a file for viewing in CATT-Edit double-click the filename.
Utilities|Show Source Combination...
Displays an overview over currently selected source combination settings. Example:

Project: Example
---------------------------------------------------------------------------------------------------
S# Directivity Aim_x Aim_y Aim_z 125 250 500 1k 2k 4k 8k 16k Delay
...................................................................................................
A0 LSP1.SD0 1.0 3.7 1.7 70.0 73.0 76.0 79.0 82.0 95.0 95.0 95.0 0.0
A1 LSP2.SD0 1.0 3.7 1.7 70.0 73.0 76.0 79.0 82.0 95.0 95.0 95.0 0.0
A2 LSP3.SD1 1.0 3.7 1.7 70.0 73.0 76.0 79.0 82.0 95.0 95.0 95.0 0.0
...................................................................................................
S# Hor Ver Roll
......................
A0 -0.0 0.0 0.0
A1 -26.6 0.0 0.0
A2 45.0 0.0 0.0
---------------------------------------------------------------------------------------------------
This is then followed by delay matrices (delays for all source-receiver combinations, one for
the initial delay only and one for initial delay plus electrical delay). The source aim angle
definition (Hor, Ver, Roll) is documented in section 2.4 about SRCINFO.PLT.
Utilities|Addition-file Info...
Displays essential information from an ADD-file created by the Prediction module and that is
read by the Source addition module (reverberation time, etc.). Example:

6. SOURCE ADDITION MODULE
189
Essential ADD-file info
--------------------------------------------------------------------------------------
Source location [m] : ( 1.000 1.700 1.700 )
Receiver location [m] : ( -3.000 20.000 1.300 )
Early part trunc. [ms] : 178
Early part max order : 18
No of reflections : 17111 (all 8 octaves) + direct
Mean free path [m] : 7.49
Mean abs. coeff. [%] : < 18.77 18.37 19.68 20.02 19.69 20.15 20.96 24.57 >
Reverberation time [s] : < 1.44 1.47 1.35 1.30 1.27 1.09 0.72 0.33 >
Background noise [dB] : < 45.00 38.00 32.00 28.00 25.00 23.00 21.00 19.00 >
-------------------------------------------------------------------------------------
6.2 Dialogs
The main Source addition dialog controls the combination of sources and receivers to add
echograms for.

(Sources)
Enable/disable the corresponding source(s).
Show all (Sources)
Displays all currently selected and enabled sources.
Add direct sound with phase (Sources)
With this option selected direct sounds from each of the sound sources are allowed to inter-
fere (two equal in-phase source contributions give close to +6dB while out-of-phase signals
can be -10 dB down or more). Without this option the direct sound is, just like higher order
reflections, added on a power basis (two equal source contributions always give +3dB). The
interference calculation is based on digital octave-band filters and not only on the octave-band
center frequencies (i.e. the interference is calculated with full bandwidth but the result is
filtered in octave-bands so interference patterns will be somewhat smoothed). With this option,
the direct sound in the echograms displayed will appear to have a short decay due to the
digital filters used but it is numerically insignificant. Note: the addition with phase affects LF
6. SOURCE ADDITION MODULE
190
values too since a figure-of-8 microphone is simulated for the lateral sound taking into account
the reversed phase of reflections registered at the left side of the microphone. LFC is not
calculated if direct sound is added with phase.
(Sources)
Displays a dialog where the source data is selected: SPL at 1m distance, eq/gain, electrical
delay, source directivity, source aim coordinate and source roll angle.

(Level control, dB) Data source
For a natural source only Lp at 1m acoustic (Lp1m_a) can be varied, for an electro-acoustic
source all three (Lp1m_a, Gain_a, Lp1m_ea) can be varied and a change in one causes a
change in one of the other according to:
Change in Gain_a Lp1m_ea = Lp1m_a + Gain_a
Change in Lp1m_a Lp1m_ea = Lp1m_a + Gain_a
Change in Lp1m_ea Gain_a = Lp1m_ea - Lp1m_a
Clicking the scrollbar arrows changes a level with 0.2 dB.
Directivity Data source
To select OMNI natural directivity select (none) after using the Any format button.
Aim Point / Angles Data source
As an alternative to specifying the aim point, aim angles can
be used. The angle conventions are the same as for the
aim() function in the source file. When switching aiming
mode from point to angles, the aim vector length is calculated
and saved so when switching back again the new aim point is at the same distance from the
source as before (just switching aim mode changes nothing).
6. SOURCE ADDITION MODULE
191
Receivers
Selection of the set of available
receiver positions to use.
Show all Receivers
Displays all currently selected and
enabled receivers.
Different types of output-files are
created depending on if a single
receiver is selected or if multiple receivers are selected, see Section 6.3. Note: all parameters
are calculated with the direct sound from the source that arrives first as the reference (utilizing
the "law of the first wave-front").
Show source aims Receivers
Creates a simplified plot-file over the geometry showing a wire-frame room view and the
chosen source aims. The plot-file created for this purpose will have the same base name as
the current CMB-file. Additional plot-files are created automatically, see Section 6.3. For a
more detailed view of the how the sources are aimed, create a CMB-file together with
SRCINFO plot-files using the Prediction module.
(Octave-bands (for plots))
Selection of octave-bands for detailed output. Text-file results are created for all bands.
Project
A comment describing the project.
Create E_ss_rr.ECH
Creates files for the Post-processing module. In the files, information on source eq. and delay
is contained which can be taken into account at post-processing using the SIM- or WAV-file
addition utilities (Post-processing:Utilities|SIM-file addition) or WAV-file addition utility (Post-
processing:Utilities|WAV-file addition). These ECH-files are identical to those that may have
been created by the Prediction module at the same time as the ADD-files were created,
except for any source changes applied in the addition module.
Bkg noise change
This option enables a change of background noise level to study the effects on RASTI and
STI. This option or the values given are not saved in the CMB-file but are just to be used for
experimenting. If the option is off, the background levels as found in the ADD-files from
prediction are used. Note: if individual receiver background noise has been used it will apply
also with Source addition until Bkg noise change is selected where all receivers will get the
selected noise.
6. SOURCE ADDITION MODULE
192
6.3 Output-files
This section contains a list of all result plot- and text-files created by the Source addition
module. It complements the general overview of file-types in Section 1.4. For the sample
output text-files below, the case in Fig. 6.1 has been used.
5m
Y
Z
X
Y
X
Z
A0
B1
01
02
Audience:240m Volume:1921m (approx.)

Fig. 6.1 Sample source addition configuration for two sources (A0 and
B1) and two receivers (01 and 02).
General
MULTPLT.TXT list of the latest result plot-files.
E_ss_rr.ECH optional echogram files for the Post-processing module.
src.PLT source aim view with simplified geometry here src is taken from the name
of the current CMB-file.
Single receiver result-files
If a single receiver is selected detailed data for that receiver is created in two types of result
files.
E_nn_rr_oct.PLT
(nn is 01, 02, 03 etc. depending on the number of sources used and with
8 sources per page). In each small diagram both the echogram of the
specific source (solid lines) and the total echogram from all used sources
(dashed lines) can be seen. In each diagram the direct sound from the
corresponding source is marked by a small circle. The responses are
integrated using a time-constant roughly corresponding to the length of the
response divided by 500 (for typical 300 ms responses the time constant
6. SOURCE ADDITION MODULE
193
will be 0.6 ms).
E_rr_INT.PLT gives multiple source decay curves T-30 and EDT estimates. This decay
may be useful with large systems and long geometrical delays. When
multiple sources are used (especially widely spaced) the RT is no longer
only a room property but a property of the electro-acoustical system as a
whole. Note that the latest part of the decay may have a steep slope that is
caused by limited lengths of individual originally calculated full echograms.
If the late part data is missing (e.g. when using Early detailed ISM for
special purposes, no decay file is created).
Note: EDT is given but a multiple source decay can be very uneven in the
early part and then the EDT value be of little use since according to the
ISO standard it is calculated using a straight line regression and if the
decay is not very straight EDT can have an unexpected value.
E_rr_EKgrad.PLT
EKgrad calculated from the sum echogram (note that any values > 2.0 are
plotted at 2.1 to be able to keep a fixed scale). The EKgrad for the source
sum echogram potentially indicating problems with echoes due to
inappropriate source delays, levels or aiming. No values are given in the
E_rr.TXT result file since it is then better to look at the graphs.
E_rr.TXT contains source combination/data and results in the form of acoustic
parameters. The parameters included are D-50, C-80, LFC, LF, Ts, SPL,
RASTI and STI with and without background noise. 8k and 16k Hz values
can optionally be included (see Preferences). Example:


CATT-Acoustic v8.0a : source add. acoustic param., Copyright CATT 1988-2007
===================================================================================================
Original file name: C:\CATTDOCS\v8\SHOEBOX_multsrc\OUT\E_01.TXT
Original save time: 2007-03-25 12:04:21
---------------------------------------------------------------------------------------------------
Project : v8 Shoebox
Receiver id : 01
Location : -3.00 20.00 1.30
Head direction : -3.00 19.00 1.30

SOURCE COMBINATION
---------------------------------------------------------------------------------------------------
S# Directivity Aim_x Aim_y Aim_z 125 250 500 1k 2k 4k 8k 16k Delay
...................................................................................................
A0 CATT.SD0 1.0 4.7 1.7 70.0 73.0 76.0 79.0 82.0 95.0 95.0 95.0 0.0
B1 CATT.SD1 -2.0 7.7 1.7 70.0 73.0 76.0 79.0 82.0 95.0 95.0 95.0 0.0

S# Hor Ver Roll
......................
A0 -0.0 0.0 0.0
B1 -0.0 0.0 0.0

Direct sound power addition.

DIRECT SOUND DELAY/LEVEL (re first arrival)
---------------------------------------------------------------------------------------------------
S# delay 125 250 500 1k 2k 4k 8k 16k sum
...................................................................................................
A0 9.5 -3.3 -1.1 -1.3 -4.3 -0.1 -0.8 -1.6 -3.1 -1.4
B1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0

Sound from Src B1 arrives first (becomes the reference). Sound from Src A0 arrives 9.5 ms after Src
B1 and with relative level 125 Hz to 16 kHz <-3.3 -1.1 -1.3 -4.3 -0.1 -0.8 : -1.6 -
3.1> dB i.e. slightly weaker than that of Src B1.

6. SOURCE ADDITION MODULE
194
PARAMETERS
---------------------------------------------------------------------------------------------------
Parameter 125 250 500 1k 2k 4k 8k 16k sum
...................................................................................................
Ts [ms] 90.4 79.3 71.9 64.2 56.2 53.9 40.7 28.9 45.4
D-50 [%] 42.4 49.3 54.5 59.5 69.9 70.8 75.7 90.8 75.3
C-80 [dB] 2.5 3.5 4.4 5.5 6.3 6.4 10.2 16.6 8.5
LFC [%] 39.5 39.7 37.3 30.5 29.0 31.5 37.9 32.2 34.5
LF [%] 23.8 24.1 22.4 17.5 15.1 16.6 20.3 15.1 18.0
SPL [dB] 61.9 62.7 63.7 64.3 65.8 79.2 79.5 75.5 83.4
82.8 (A)
---------------------------------------------------------------------------------------------------
STI orig [%] without / with bkg. noise : < 45.0 38.0 32.0 28.0 25.0 23.0 : 21.0 - > dB
...................................................................................................
63.5 / 63.3
---------------------------------------------------------------------------------------------------
RASTI [%] without / with bkg. noise : < - - 32.0 - 25.0 - > dB
...................................................................................................
62.5 / 62.5
---------------------------------------------------------------------------------------------------
125 250 500 1k 2k 4k 8k
...................................................................................................
Weights 0.13 0.14 0.11 0.12 0.19 0.17 0.14 (original)
---------------------------------------------------------------------------------------------------
Parameters are calculated assuming the sound from the source arriving first as the reference. SPL
is the total SPL of all sources.
E_rrX.TXT same as E_rr.TXT but made for MS Excel import (text is within "" and
data is semi-colon delimited).
Multiple receiver result-files
If multiple receivers are selected two types of overview result files are created.
TREND1,2.PLT this file is similar to TRENDn_ss.PLT created by the Prediction
module, as it concentrates the results for all selected receivers
(D-50, SPL, RASTI, STI and Ts, C-80, LF and LFC). The
sources used are marked along the top of each of the four
graphs. Within each source group the numbers used are
marked by a dot pattern see fig.
TREND3.PLT An EKgrad plot in showing max value for > 50 ms from the first arrival
(high values for < 50 ms are not likely to create echoes, see Prediction
theory). If a receiver indicates high values it can be checked in detail by
doing a single receiver calculation. PARAM.TXT and PARAMx.TXT also list
the max values for > 50 ms.
SPECTRA.PLT A plot of the SPL octave-band spectra for direct sound, first 50 ms and
total as an aid in overall system eq and coverage. Spectra for all receivers
are shown in light grey and each receivers data is as plot frame (in a 2DA
plot-file) also indicating a line from the sources added to the receiver
(dashed if there is no direct sound).
PARAM.TXT contains source combination/data and results in the form of acoustic
parameters. Example:

0
1
2
3
4
5
6
7
8
9
A
6. SOURCE ADDITION MODULE
195
CATT-Acoustic v8.0a : source add. acoustic param., Copyright CATT 1988-2007
===================================================================================================
Original file name: C:\CATTDOCS\v8\SHOEBOX_multsrc\OUT\PARAM.TXT
Original save time: 2007-03-25 12:11:11
---------------------------------------------------------------------------------------------------
Project : v8 Shoebox
---------------------------------------------------------------------------------------------------
Rec id Location Head direction
---------------------------------------------------------------------------------------------------
01 -3.00 20.00 1.30 -3.00 19.00 1.30
02 3.00 12.00 1.30 3.00 11.00 1.30

SOURCE COMBINATION
---------------------------------------------------------------------------------------------------
S# Directivity Aim_x Aim_y Aim_z 125 250 500 1k 2k 4k 8k 16k Delay
...................................................................................................
A0 CATT.SD0 1.0 4.7 1.7 70.0 73.0 76.0 79.0 82.0 95.0 95.0 95.0 0.0
B1 CATT.SD1 -2.0 7.7 1.7 70.0 73.0 76.0 79.0 82.0 95.0 95.0 95.0 0.0

S# Hor Ver Roll
......................
A0 -0.0 0.0 0.0
B1 -0.0 0.0 0.0

Direct sound power addition.

DIRECT SOUND DELAY/LEVEL (re first arrival)
---------------------------------------------------------------------------------------------------
S# delay 125 250 500 1k 2k 4k 8k 16k sum
01.................................................................................................
A0 9.5 -3.3 -1.1 -1.3 -4.3 -0.1 -0.8 -1.6 -3.1 -1.4
B1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
02.................................................................................................
A0 4.5 -1.5 2.0 3.4 2.3 7.6 8.5 9.4 9.9 8.7
B1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0

Sound from Src B1 arrives first (becomes the reference) to both Rec 01 and 02. Sound from
Src A0 to Rec 01 arrives 9.5 ms after Src B1 but 4.5 ms later at Rec 02.

PARAMETERS
---------------------------------------------------------------------------------------------------
Ts [ms] 125 250 500 1k 2k 4k 8k 16k sum
...................................................................................................
01 90.4 79.3 71.9 64.2 56.2 53.9 40.7 28.9 45.4
02 86.5 77.5 72.3 65.9 55.3 54.3 36.8 24.4 39.0

---------------------------------------------------------------------------------------------------
D-50 [%] 125 250 500 1k 2k 4k 8k 16k sum
...................................................................................................
01 42.4 49.3 54.5 59.5 69.9 70.8 75.7 90.8 75.3
02 48.6 53.9 57.6 60.7 64.8 66.0 80.0 96.4 80.6

C-80, LFC, LF, SPL, RASTI, STI

Note: results for receivers that are not reached by any direct sound are always hard to interpret
since most measures assume that the direct sound is present. In the PARAM.TXT and E_rr.TXT
result-files, an absent direct sound will not give a DIRECT SOUND DELAY of 0.0 ms for the source-
receiver combination concerned even if the source is the closest one to the receiver (had the direct
sound not been blocked).
PARAMX.TXT same as PARAM.TXT but made for MS Excel import (text is within "" and
data is semi-colon delimited).

6. SOURCE ADDITION MODULE
196
7. POST-PROCESSING MODULE
197
7. POST-PROCESSING MODULE
The post-processing (PP) module synthesizes binaural as well as other types of room impulse
responses (IRs) from generic octave-band echograms created by the Prediction module or by
the Source addition module. The module can create multiple source auralization, convolve
synthesized or measured impulse responses with anechoic WAV-files, perform relative
calibration, as well as file-format conversions and many other supporting functions.
The PP module uses settings-files with the extension .PST that store all necessary
information to perform a post-processing (except for the echogram-file itself). The settings
consist of sample-rate, IR length, output data format, processing methods and more. Several
settings-files can be created for different purposes. PST-files can also be used in the
Sequence processing module for batch processing.
By selecting (Save data for) post-processing in the Full detailed calculation (or for special
cases in the Early part detailed ISM dialog) in the Prediction module, files with the name
syntax E_ss_rr.ECH are created (ECH is short for echogram). ECH-files are read by the PP
module and contain all hall-specific information needed to synthesize a binaural room impulse
response (BRIR), as well as various mono, stereo, B-format (for Ambisonic [B-format]) and 5-
channel impulse responses (IRs) and files for CATT-Walker. The prediction project name is
included in the file but it is recommended to keep a copy of the corresponding E_ss_rr.TXT
or PARAM_ss.TXT for reference. Note: the more rays that are used the longer the early part
will be and more of the unique spatial properties at a receiver position will be included.
See Fig 7.1 for an overview of the data-flow for binaural post-processing (source A2 and
receivers 01 and 02).

Fig. 7.1 Data flow from prediction to post-processing and auralization,
binaural example
The synthesis of a BRIR is explained in the Theory section 7.3.
The convolution of a BRIR and anechoic music/speech can be done directly on the PC (a few
seconds to a few minutes processing) and the processed sound be listened to using a 16-bit
stereo soundcard capable of playing WAV-files - desktop auralization (WAV-files or "RIFF
Wave" is part of the Windows Multimedia specification).
7. POST-PROCESSING MODULE
198
Optionally Lake DSP CP4 or Huron convolution processors can be used which then enables
real-time convolution, head-tracking and virtual reality applications [Lake]. Information on the
Lake DSP SIM-file format, which is used to feed the BRIR data to the convolution processors,
can be obtained from Huron/CP4 manuals. To limit the number of file-formats used the SIM-
file format is used also with software convolution. In the software convolution case all tools
necessary are provided and detailed knowledge of the SIM-format is not necessary. The two
alternative processing paths are shown in Fig. 7.1.
CATT-Walker (documented in its own help-file Walker.PDF) allows for real-time walkthrough
based on pre-calculated B-format impulse responses, CATT-Walker is documented in its own
help-file Walker.PDF and can be loaded via File|External CATT Tool.
The PP module utilizes HRTF libraries (in the CATTDATA-folder HRTFs), headphone
equalization filters (in the CATTDATA-folder HEADPHONES). These are selected in
Preferences. Anechoically recorded WAV-files must be placed in the CATTDATA-folder
ANECHOIC, a default file to use at convolution can be selected in Preferences
7.1 Menus
File|New Settings...
Creates new post-processing settings. If a Template.PST file exists in the CATTDATA-folder
it will be used as a template for the created settings-file.
File|Open Settings...
Load new post-processing settings (*.PST).
File|Save Settings
Saves current settings.
File|Save Settings As...
Saves current settings under a new name.
Utilities|
Various utilities for file-format conversion etc. Some of the provided functions may also be
performed by Lake DSP software, see Lake manuals. The CATT utilities below manipulating
Lake SIM-files assume real vectors only (i.e. FIR filters as created by the PP module). The
most used utilities have toolbar buttons.
Utilities|Information|CATT ECH-file...
Displays essential information from an echogram ECH-file, that is created by the Prediction or
the Source addition modules, and that is read by the PP module (reverberation time,
prediction project name etc.). Example:
Essential ECH-file info
--------------------------------------------------------------------------------------
Prediction project : Sample project
Source location [m] : ( 1.500 3.500 1.500 )
Receiver location [m] : ( 0.000 7.500 1.200 )
Head dir. coord. [m] : ( 1.500 3.500 1.500 )
Detailed refl. to [ms] : 134
7. POST-PROCESSING MODULE
199
Early part max order : 44
No of reflections : 19830 (all 8 octaves) + direct
Mean free path [m] : 4.19
Mean abs. coeff. [%] : < 15.65 12.95 13.35 15.24 13.20 13.71 : 14.57 14.99 >
Reverberation time [s] : < 0.99 1.20 1.15 0.99 1.12 0.96 : 0.65 0.33 >
Source gain/eq. [dB] : < 0.0 0.0 0.0 0.0 0.0 0.0 : 0.0 0.0 >
Source aux. delay [ms] : 0.0
--------------------------------------------------------------------------------------

Utilities|Information|Lake SIM-file...
Displays the impulse response (IR) file-header of a Lake SIM-file and displays the IR in
various ways. The comment section before the actual SIM header is used by the PP module
for comments stating the PP version, the prediction project name, initial scale factor needed
for calibration, and some other data required for SIM- and WAV-file addition and calibration.
General notes:
the Play button plays the IR over the soundcard, the complete IR is played independent of
Time selected. If the IR is one of a binaural or stereo pair, both channels are played.
Impulse response (IR) :

7. POST-PROCESSING MODULE
200

the Impulse Response (h) is always scaled to the max sample strength and displayed in %
(or not much will be seen), with the dB option the actual levels are shown.
the dB,Range option displays 10 log10(h
2
)
if the Window option is chosen the effect of the windowing as well as the window itself (a
raised cosine window) is shown.
Frequency Response (FR) :

the FR is created by an fft of the time length chosen in the IR and is displayed with all scale
factors and eq (Gain_a from the source-file) applied. IRs for normal sources are created
re 1m so if only the direct sound is made for a receiver at 1 m from the source on axis (like
order = 0 in Early part detailed ISM), if Gain_a is zero or with a natural source, the FR will
be at 0 dB as a nice straight line. Consequently, if Gain_a is set at e.g. -10 dB the FR will
be at -10 dB and if the Gain_a is set with differing values over the bands it will be a
corresponding filter shape.
the fft size used is for the closest 2
n
(the IR is zero-padded as necessary)
the Window option smooths the FR. It has most effect when a short time segment is
shown.
7. POST-PROCESSING MODULE
201
Spectrogram (SG) :

a Spectrogram is one way to analyze an IR in both time and frequency and to reveal e.g.
high-frequency echoes that may not be visible in the bare IR. Most useful time and
frequency resolution is ca. 20 ms and 1/3-octaves corresponding well to the human
hearing.
the SG time length is the same as is chosen for the IR but the Window option does not
affect the SG.
the time resolution is selected by Time res.: max resolution will give one value per
horizontal pixel, max x 3 will give one value for every 3 pixels. Actual time step is displayed
above the graph.
it may happen, for some combinations of time resolutions and IR lengths, that a time step
is too short to evaluate the low frequency contents. The valid frequency range is indicated
to the left of the graph with a heavy red line starting at the frequency where the time step
corresponds to one period.
it may happen with the fixed time resolutions that there should be more than one point per
pixel (long IR and short time step) and the results are ambiguous, "(pixel aliasing)" is then
shown above the graph.
when analyzing the data for each time step, 50% overlap and a Hann window is used.
the frequency resolution is selected by Freq res.: max resolution will give one value per
vertical pixel, max x 3 will give one value for every 3 pixels. Actual frequency step is
7. POST-PROCESSING MODULE
202
displayed above the graph.
after a settings-change the SG is first calculated in the background to find current max and
min values and the color scale is auto-adjusted (same as using the Auto button). The +
and buttons can be used to manually change the scale e.g. to enhance the later part.
Values that are out of range (above the ceiling and below the floor) get the max and min
color values and a white dot. The color-scale is based on 10log10(|H|
2
) just like the FR but
the level depends on the time and frequency resolution used.
if a time step is empty (e.g. when selecting to show a 2 s IR when the actually IR is just
1 s), white is displayed.
Utilities |Information|CATT CWI-file...
Displays the impulse responses contained in a CWI-file for CATT-Walker. It is identical to the
dialog for the file-information about a Lake SIM-format file but a selection of receiver is also
given. If more details are desired regarding individual positions, they can be post-processed
the normal way e.g. with a binaural receiver model. If a CWI is the result of a multiple source
CWI-addition, time zero is set to when the sound from the first source arrives.
Utilities|Information|Windows WAV-file...
Displays information about a 16-bit WAV-file: If a CATT SCL-file, as created at a software
convolution, is present the contents are displayed for reference. If the file is an anechoically
recorded file and a CATT AWI-file is found the contents are displayed for reference. Example:

16-bit WAV-file
--------------------------------------------------------------------------------------
Sample-rate [Hz] : 44100
Type : binaural
HRTF-lib : CATT1_PLAIN_44.DAT
Headphone : BEYER_DT990PRO_PLAIN_44.DAT
Head dir. : 2.500 5.000 -2.500
Receiver : 1
Init Delay : 39.69 ms
Aux Delay : 0.00 ms
No of samples : 223369 stereo samples
Length corresponds to 5.065 seconds @44100Hz
--------------------------------------------------------------------------------------
D:\temp\V72DOC\ADD\Ftb_a0_01.wav is
Anechoic file C:\CATT32\ANECHOIC\FTB_44_AN.WAV
(1998-02-19 13:12:12)
Convolved with D:\TEMP\V72DOC\ADD\E_A0_01_L.SIM
(1999-09-23 08:54:56)
and D:\TEMP\V72DOC\ADD\E_A0_01_R.SIM
(1999-09-23 08:54:56)
Scale-factors for the WAV calibration utility:
Filters : 4.09200E+06
WAV-file : 2.83603E-06
Total : 1.16050E+01 (21.3 dB)
Not yet calibrated/scaled
--------------------------------------------------------------------------------------
The calibration count (last line) gives a measure of the numerical degradation of the file (see
WAV-file calibration below).
7. POST-PROCESSING MODULE
203
Utilities|Information|HRTF-library...
Displays information about a binary CATT HRTF library. Example:

Description : CATT-Acoustic v7 HRTFs
Copyright : CATT 1997
Subject/Type : Unknown
HRTF-type : single person
Normalization : plain
FIR-size : 256
Sample-rate : 44100Hz
Utilities|Information|Headphone filter...
Displays essential information about a binary CATT headphone filter file. Example:

Description : Beyer Dynamic DT990 Pro
Copyright : CATT 1998
Subject/Type : HRS II
Left/Right : same filter
For HRTFs w. : normalization plain
FIR-size : 4096
Sample-rate : 44100Hz
Description : Beyer Dynamic DT-990
Copyright : CATT 1997
Subject/Type : Unknown
Left/Right : same filter
For HRTFs w. : normalization plain
FIR-size : 512
Sample-rate : 44100Hz

Utilities|WAV-file Player...
Opens the CATT WAV-file player (can also be made to open automatically after a convolution
or a WAV-file addition). The player has three modes.

Single file player A/B file player Play-list player
A CATT play-list is a text-file. Example:

CATT-PLAYLIST
VERSION = 0
C:\Temp\mt_A1_21.WAV
C:\Temp\mt_A1_22.WAV
"C:\Temp\folder 2\mt_A0_21.WAV"
"C:\Temp\folder 2\mt_A0_22.WAV"
7. POST-PROCESSING MODULE
204
where "" must be used for filenames with space. CATT-PLAYLIST has to be on line one and
the VERSION statement on line two. Note: the free standalone GratisWavPlayer works in a
similar way to the built-in one.
Utilities|File Scaling...
Enables scaling of either a Lake SIM-file
or a Windows WAV-file. The scale factor
to be selected must be > 1 and scales the
data down.
Lake SIM-file (adds factor to text header)
(File-type) Scaling
The selected factor is added to the header
so that the calibration utility below can
keep track of the total scale-factor. The
major reason for scaling a SIM-file is that
it may overflow the 24-bit integer convolution in a Lake DSP convolver. An output SIM-file from
the PP module is optimally scaled so it should normally not be necessary. For software
convolution using the PP module, SIM-file scaling is never required.
Windows WAV-file (updates SCL-file if found) (File-type) Scaling
The software convolver reads and writes WAV-files. The processed sound is auto-scaled for
maximum dynamic range. If, however, several receiver-positions in the same hall are going to
be compared their relative levels must be correct. With files created by CATT, an SCL-file is
also maintained by the scaling and calibration utilities and documents each scaling operation.
This utility is not used very often.
Utilities|Calibration
Enables relative calibration of
either Lake SIM-files or Windows
WAV-files (with corresponding
SCL-files).
Note: Only files created or
manipulated by CATT-Acoustic
can be correctly calibrated and
SIM-file calibration is only
necessary for use with a Lake
convolver. For details on
calibration, see section 7.3.

Lake SIM-files (contained in a single folder) (File-type) Calibration
This utility performs relative calibration of all SIM-files in the selected folder that matches the
specified pattern.
Lake SIM-files (across several folders) (File-type) Calibration
This utility performs relative calibration of all SIM-files in the folders that are listed in the
selected list-file and that matches the specified pattern. The list-file is simply a text-file listing
the folders with one entry/line. This utility is useful should more source-receiver combinations
7. POST-PROCESSING MODULE
205
than allowed for by 260 sources and/or 100 receivers be used.
Windows WAV-file (corr. SCL-files required) (File-type) Calibration
Relative calibration of a set of Windows WAV-format files. The software convolver reads and
writes WAV-files. The created WAV-files are auto-scaled for maximum dynamic range. This
utility uses the specified WAV-file template and performs relative calibration of all WAV-files in
the same folder that have SCL-files stating exactly the same anechoic source-file as in the
template. The SCL-file is updated so the same WAV-file can be calibrated again against other
files. If the scale-factors of the WAV-files are very different, repeated calibration may cause
noticeable numerical degradation. The SCL-file therefore also keeps track on the calibration
count as a measure of the degradation (quantization noise). The Utilities|Information|
Windows WAV-file utility above reads and displays the contents of an SCL-file if present.
Note: to use the WAV-file addition utility, the WAV-files do not have to be calibrated in
advance since the scale-factors are applied at addition. WAV-file calibration can also be
performed by the Sequence module, Section 8.
Utilities|SIM-file addition
Adds created SIM-files to enable
multiple source auralization where each
source sends out the same source
material (only available in the full
auralization version). The result SIM-file
can then be convolved with
anechoically recorded material in the
usual manner. To make SIM-file
addition meaningful, the SIM-files must
be compatible with each other. To
determine the compatibility the file-
name syntax E_ss_rr_f.SIM is relied
upon and also that the SIM-file header
has not been altered after post-pro-
cessing (other than by CATT utilities
described in this section). The following
properties are checked:
same receiver-model (for binaural
also the headphone eq and HRTFs
must be the same)
same receiver position (file-name
check)
same sample-rate
same head-direction (note that
head-direction source cannot have
been used at prediction since the head-directions then will be incompatible)
If in doubt about compatibility, use the Utilities|Information menu to display the SIM-file
header.
Gain Impulse response (SIM-file) addition
Additional wideband gain for the selected SIM-file.
Aux delay Impulse response (SIM-file) addition
Auxiliary electrical delay.
7. POST-PROCESSING MODULE
206
Update Impulse response (SIM-file) addition
Updates the selected SIM-files with gain and delay settings. If Enter is pressed when gain or
delay edit boxes are active it performs the same action.
The list-box displays all selected files (only the base-name where e.g. for binaural _L.SIM
and _R.SIM will be appended at addition). It also displays the initial delay (source-receiver
delay, ms), current gain (dB), and auxiliary delay (electrical, ms) for each file.
Add first SIM-file/Add SIM-file(s) Impulse response (SIM-file) addition
Displays a standard Open File dialog. The first file selected determines the compatibility. Sub-
sequently, only compatible files and such that are not already listed can be added. It is
sufficient to select e.g. the left file (E_ss_rr_L.SIM) for binaural and e.g. the omni
(E_ss_rr_W.SIM) file for B-format. When the actual addition is performed all files required
for a format will be used. Several files can be selected in one operation by using multiple
selection in the Open dialog (Shift-LMB, Ctrl-LMB etc.). Note: If 2
nd
(R,S,T,U,V) or 2
nd
and 3
rd

order (R,S,T,U,V,K,L,M,N,O,P,Q) SIM-files are found they are also added and the sum PLT-
file created shows all 1
st
and 2
nd
order components (when adding 2
nd
and 3
rd
order files, either
the W, X, Y or the Z file has to be selected, rather than one of the higher order components).
Remove Impulse response (SIM-file) addition
Remove the currently selected file from the list-box.
Result SIM-file base-name Impulse response (SIM-file) addition
The base-name of the resulting SIM-file. _M.SIM, _L/_R.SIM, _W/_X/_Y/_Z.SIM (and
higher order components if available), or _1/_2/_3/_4/_5.SIM_will be added depending
on receiver model.
OK Impulse response (SIM-file) addition
Performs the addition and creates the result SIM-file as well as a plot-file with the same base-
name as the result-file and with _I.PLT added (e.g. E_01_I.PLT). This 2DA plot-file shows
plot-frames indicating the direct sound of each source as well as file-names, Gain and Aux-
delay of each added file. With B-format addition, if 3rd or 2nd order SIM-files are found added
the sum PLT-file created shows all nine 1
st
and 2
nd
order components (any 3rd order
components are added but not plotted). Note: with binaural SIMs, due to headphone eq, a
delay may exist so that the actual direct sound comes a few ms after the dotted line. This
delay has no audible effect since it is contained in all responses added.
7. POST-PROCESSING MODULE
207
Utilities|WAV-file addition
Adds created stereo/binaural WAV-files
to enable multiple source auralization
but with possibly different anechoic
source material for each source (only
available in the full auralization
version). To make WAV-file addition
meaningful, the WAV-files must be
compatible with each other. To
determine the compatibility an
accompanying SCL-file is required
(created at convolution). The following
properties are checked:
same receiver-id
same receiver-model (stereo or
binaural, for binaural also the head-
phone eq and HRTFs must be the
same)
same receiver position (info saved
in SCL-file created at convolution
based on SIM-file name)
same sample-rate
same head-direction (note that
head-direction Source cannot be
used at prediction since the head-
directions then will be incompatible.
If in doubt about compatibility, use Utilities|Information that can display WAV/SCL-file head-
ers. WAV-files do not have to be relative calibrated to take part in addition since all scale-
factors are applied properly at addition. The addition is documented in a text-file (.TXT) with
the same name as the created sum WAV-file (which WAV-files have been added etc.) so that
operations can be tracked. Note: for addition of B-format or 5-channel use the MultiVolver that
will convolve and add in one step.
Gain Binaural/Stereo WAV-file addition
Additional wideband gain for the selected WAV-file. A major problem with WAV-file addition is
that the scale-factors in most anechoic WAV-files are unknown. The Gain factor can be used
to compensate so that if it is known that a weak signal has been amplified e.g. 10dB before
sampling as compared to a strong signal, the weak-signal WAV-file must be assigned a Gain
of -10dB so that the two anechoic signals will be compatible in level. The addition is made
using floating point so there is no major numeric loss in adding a weaker signal to a stronger.
Note: v8.0 does not use scale information in anechoic WAV-info files (AWI-files).
Aux delay Binaural/Stereo WAV-file addition
Auxiliary electrical delay.
Update Binaural/Stereo WAV-file addition
Updates the selected WAV-file with Gain and Aux delay settings. If Enter is pressed when
Gain or Aux delay edit boxes are active it performs the same action. The SIM and WAV scale
factors are both automatically taken into account when adding.
7. POST-PROCESSING MODULE
208
The list-box displays all selected files. It also displays the initial delay (source-receiver delay),
current gain, and auxiliary delay for each file.
Add first WAV-file/Add WAV-file(s) Binaural/Stereo WAV-file addition
Displays a standard Open File dialog. The first file selected determines the compatibility.
Subsequently, only compatible files can be added. Several files can be selected in one
operation by using multiple selection in the Open dialog (Shift-LMB, Ctrl-LMB etc.).
Remove WAV-file Binaural/Stereo WAV-file addition
Remove the currently selected file from the list-box.
Result WAV-file name Binaural/Stereo WAV-file addition
The full name of the resulting WAV-file.
Auto play after addition Binaural/Stereo WAV-file addition
If selected, the resulting sum WAV-file is played automatically after completed addition using
the CATT WAV-file player.
OK Binaural/Stereo WAV-file addition
Performs the addition and creates the result WAV-file.
Some notes on the addition with a schematic explanation with 6 files to be added:
i initdelay
a auxdelay
1, 2, 3,... data in file 1, 2, 3,
s sum of files 1-6

1 iiiiiiiiiiiaaaaaaaaaalllllllllllllllllllllllllllllllllllll
2 iiiaaaaaaaaaa2222222222222222222222222222222222222
3 iiiiiiiiiiiiiiiiiiiiiaaaaa3333333333333333333333333333333333333
4 iiiiiiiiiiiaaaaaaaaaa444444444444444
5 iiiiiiaaaaaaaaaa555555555555555555555555555
6 iiiiiiiiiiiiiiiiiiiiiaaaaa66666666666666666666666
-> sssssssssssssssssssssss
i.e. the new sum WAV-file will start at t_start= minimum(initdelay+auxdelay) time (i.e.
determined by file 2) and last to t_end= minimum(initdelay+auxdelay+datalength) time (i.e.
determined by file 4) and be t_end-t_start long. It is thus of interest to have all WAV-files of
similar lengths (delays taken into account) to get a long enough common sound to listen to.
Sample use of this utility is binaural auralization of stereo replay:
1) Place two sources on stage, one for the left channel and one for the right channel;
2) Predict and post-process both sources using a head-direction typically in-between the two
speakers;
3) Convolve the left speaker impulse responses with the left channel of the anechoic WAV-file
and then the right response with the right channel of the anechoic file;
4) Select WAV-file addition and add the two WAV-files and binaural auralization of stereo
replay is created.
7. POST-PROCESSING MODULE
209
The initial delay (source to receiver) and any extra (aux) delay will be taken into account and
just like for SIM-file addition (that assumes the same anechoic material for all sources) the
aux delay can be altered.
It is most natural to use the WAV-file addition utility with several sources using different
material (e.g. stereo, 5-channel (see below) replay, or speech+noise) but it can also be used
to add WAV-files using the same anechoic material just like the SIM-file addition (but it is less
efficient).
Note: stereo to binaural can also be performed by the MultiVolver using a 2x2 setup.
Utilities|CWI-file Addition...
Analogous to SIM-file addition but for
CATT-Walker. A text-file is created with
the same name documenting the
addition. No matter how many CWI-
files (sources) are added, roughly the
same amount of CATT-Walker CPU is
required as for a single source. Note
that for CWI-files to be added, they all
have to be created from ECH-files
saved at the same time, this is to
ensure that added CWI-files are
compatible. Also note that to resolve
source interference at e.g. 1 kHz you
need to have a receiver spacing of half
a wavelength or less at 1 kHz (17 cm)
so dont over-interpret interference
effects (or lack thereof) for big receiver
spacings. A similar caution is advised
regarding fine directivity details, to be
resolved a sufficient receiver density is
required.

7. POST-PROCESSING MODULE
210
Utilities|File conversion
16-bit INT -> Mono WAV File conversions
Conversion from a mono "signed 16-bit
integer" to Windows WAV-format
(extension is changed to .WAV). This
utility may come in handy when
converting anechoic material from other
sources (many sound-file conversion
programs can create header-free
signed 16-bit integer files). Also the
sample-rate in Hz needs to be
specified.
MATLAB MAT -> Lake SIM File conversions
Conversion from MATLAB v4 .MAT
[MATLAB] to Lake SIM-format
(extension is changed to .SIM). The
data has to be properly scaled since the
Lake-format files are 32-bit integers.
For Lake convolution only 24 bits or
less can be used (see Lake manuals),
for software convolution the full 32 bits
can be used. Note: this utility only reads
the first variable in the file - save only the IR from MATLAB or save it as the first variable.
Lake SIM -> MATLAB MAT File conversions
Conversion from Lake SIM-format to binary MATLAB v4 MAT-format (extension is changed to
.MAT). The MATLAB variable name of the vector will be sim_data. If the sample-rate is
contained in the SIM-file header, it is named sim_fs.
Lake SIM -> MLSSA TIM File conversions
Conversion from Lake SIM to a binary MLSSA TIM-file [MLSSA] (extension is changed to
.TIM). Also the sample-rate in Hz needs to be specified. The sample-rate may be defined in
the SIM-file header. If it is, it is compared to the given value.
Lake SIM -> Windows WAV mono File conversions
Conversion from Lake SIM to Windows WAV mono (extension is changed to .WAV). The
sample-rate may be defined in the SIM-file header. If it is, it is compared to the given value.
This utility enables direct listening to a IR (equivalent to first convolving it with a unit impulse
and then listen), see note below.
Lake SIM -> Windows WAV stereo File conversions
Conversion from Lake SIM to Windows WAV stereo (extension is changed to .WAV). The
sample-rate may be defined in the SIM-file header. If it is, it is compared to the given value.
Left and right SIM-files, output WAV-file name, and the sample-rate needs to be specified.
This utility enables direct listening to a BRIR (equivalent to first convolving it with a unit
impulse and then listen). A SIM-file can also be listened to directly via Utilities|Information|
Lake SIM-file.
7. POST-PROCESSING MODULE
211
MLSSA TIM -> MATLAB MAT File conversions
Conversion from MLSSA TIM to MATLAB v4 MAT-format (extension is changed to .MAT). The
MATLAB variable name of the data will be tim_data and the sample-rate in Hz will be
tim_fs. The data can optionally be saved as double precision floats instead of single
precision. Note: only a PC MATLAB can read the single precision format.
Windows WAV mono -> MATLAB MAT File conversions
Conversion from Windows WAV mono to binary MATLAB v4 MAT-format (extension is
changed to .MAT). The MATLAB variable name of the vector will be wav_data and the
sample-rate in Hz will be wav_fs.
Windows WAV mono -> Lake SIM File conversions
Conversion from Windows WAV mono to Lake SIM-format (extension is changed to .SIM).
Windows WAV stereo -> Lake SIM File conversions
Conversion from Windows WAV stereo to two Lake SIM-format (one SIM-file/channel,
_L.SIM and _R.SIM will be added to the name and extension is changed to .SIM).
MLSSA TIM -> Windows WAV stereo File conversions
Conversion from two MLSSA TIM to Windows stereo WAV-format (extension is changed to
.WAV). This utility enables direct listening to a measured BRIR using a sound-card. Left, and
right TIM-file and the output WAV-file names need to be specified. Note: the sample-rate has
to be one supported by Windows soundcard (typically 11025, 22050 or 44100 Hz) or it may
not play correctly.
Utilities|SIM-file Filtering...
A general FIR-filtering tool for SIM-
files (only available in the full aural-
ization version).
Typical use is to apply a loud-
speaker on-axis filter, band-limit the
response, or apply a head-phone eq
(for binaural SIM-files where no eq
was made during processing i.e. the
headphone "(none)" was selected in
Preferences). This tool is quite open
and general and not a lot of checks
are performed on the validity of a
filtering action (mainly that sample-
rates are compatible for TIM and
Headphone eq).
Input SIM-file SIM-file filtering
SIM-file to be filtered.
FIR filter SIM-file filtering
FIR-filter file-name. The file can be in the following formats: MATLAB v4 (.MAT), MLSSA
(.TIM) or a CATT headphone eq filter (.DAT, assumes that left and right filters are identical).
7. POST-PROCESSING MODULE
212
Output SIM-file SIM-file filtering
SIM-file to be created as a result of filtering.
Truncate output to input length SIM-file filtering
If a vector length N is filtered with an FIR-filter length M the resulting length is N+M-1. This
option makes also the output be N long by skipping the M-1 last samples. For a typical long
decaying SIM-file and a short filter this truncation will not be audible.
Normalize filter to unit power gain SIM-file filtering
Typically, filters used should have the proper normalization but this option gives a reasonable
overall gain change by normalizing the filter to unit power gain.
Utilities|SIM-file Sample-rate Conversion
A tool that can samplerate convert SIM-files (only available in the full auralization version).

Input SIM-file SIM-file sample-rate conversion
SIM-file to be converted.
Sample-rate in SIM-file sample-rate conversion
Sample-rate of the file to be converted.
Output SIM-file SIM-file sample-rate conversion
SIM-file to be created as a result of conversion.
Sample-rate out SIM-file sample-rate conversion
Sample-rate of the converted file. The OK button is disabled for not supported conversions.
Conversions implemented are:

From/To 16000 22050 32000 44100 48000 88200 96000
16000 - x x
22050 - x
32000 x - x
44100 x - x
48000 x - x
88200 x -
96000 x x -
7. POST-PROCESSING MODULE
213
Utilities|Calculate IACC...
Calculates the Inter-Aural Cross Correlation Coefficient for a binaural SIM-file pair. Select one
of the files in the pair (left or right) and the IACC will be displayed, See Theory for details. As a
General settings option, IACC can also be calculated after completed post-processing and
be put in the SIM-file header. Note: the responses are assumed to have no significant
common initial delay (i.e. no initial zeros) since that is how CATT SIM-files are created.
Utilities|Crosstalk Cancelling...
Crosstalk cancelling enables loudspeaker listening to binaurally recorded or simulated sound.
The background is that when listening to a binaural recording over loudspeakers (in a typical
symmetrical stereo configuration), the left as well as the right ear is reached by sound from
both left and right speakers while for binaural replay the left signal is supposed to be sent only
to the left ear and the right signal only to the right ear. The crosstalk cancellation technique
uses the HRTFs for the angle to the loudspeakers from the listening position and creates
filters that cancels the "error" signal i.e. the signal from left to right and right to left. If this can
be done perfectly, one will hear the same sound as one would in headphones but there are
several problems that need to be addressed. The implementation here uses the so called
"Shuffler" filter configuration and a more thorough description and discussion is found in the
Theory section. The description below concentrates on the interface.

Spacing, S Crosstalk cancelling for loudspeaker replay
Loudspeaker spacing as measured between the acoustic centers.
Distance, D Crosstalk cancelling for loudspeaker replay
Loudspeaker distance as measured between the center of the head and the line joining the
two loudspeakers.
7. POST-PROCESSING MODULE
214
Apply loudspeaker correction Crosstalk cancelling for loudspeaker replay
Optionally uses two supplied inverse filters to correct the on-axis response of the loud-
speakers used. Files must be Finite Impulse Responses (FIRs) in MATLAB v4 PC format and
be created for the samplerate used, see Theory. There is no practical limit on the length of
these filters.
(Crosstalk option) Crosstalk cancelling for loudspeaker replay
The Crosstalk cancellation can operate in three basic ways:
Normal operation operates on a binaural room impulse response SIM-file pair (without
headphone eq). The new SIM-file pair will have its first filename character
changed to "X" (E_ss_rr_L.SIM becomes X_ss_rr_L.SIM) and the
"HEADPHONE EQ=" fields in the SIM-file headers are changed from
"(none)" to "TRANSAURAL" so that pure binaural and transaural cannot
accidentally be mixed in SIM- and WAV-file additions). The new SIM-file
pair can then be convolved with anechoic sound in the normal manner but
the resulting WAV-file is to be played over loudspeakers instead of over
headphones. If the same basic response is to be used for headphone
replay the original SIM-file pair can be filtered for headphones using the
SIM-file filtering utility or the Sequence processing module. In this
operational mode, the samplerate is given by the SIM-file pair.
Left (or Right) channel calibration
creates calibration filters for finding and evaluating the sweet-spot, see
Theory. When convolved with e.g. pink noise they will give a left (or right)
calibration signal. If the filters work well and the listener is in the sweetspot,
sound should appear to come only in the left (or the right) ear. A good way
to find the sweet-spot is to cover the left ear and move the head sideways
until a minimum in the right ear is heard. When the left ear is uncovered
the sound should be as if it was played in the left headphone only. In this
operational mode the desired samplerate must be specified and the files
created are calib_L.SIM and calib_R.SIM where calib is the given
base-name.
Create X-talk filters only
creates dedicated crosstalk cancellation filters that can be used to process
e.g. binaural recordings. In this operational mode the desired samplerate
must be specified and the files created are xtalk_L_L.SIM,
xtalk_L_R.SIM, xtalk_R_L.SIM and xtalk_R_R.SIM where xtalk
is the given base-name. To crosstalk cancel a binaural recording the
simplest is to use the MultiVolver with a 2x2 setup.
The dummy head should typically have had microphones at the blocked ear canal entrance
but also simple clip-on binaural microphones can give excellent results.
(Filter smoothing) Crosstalk cancelling for loudspeaker replay
Various options for smoothing affect how well the cancellation works and the size of the
sweet-spot. See Theory for a description of the filters S and A and further details.
HRTFs smoothes the S and A (HRTF) magnitudes before creating the crosstalk cancellation
filters. Makes the left and right HRTFs have minimum phase with an added pure
delay to A. In general, smoothing the HRTFs affects the crosstalk cancelling ability
too much.
Filters smoothes the magnitude of the S+A and S-A filters and forces them to minimum
phase before inverting. In general, smoothing the filters improves the crosstalk
7. POST-PROCESSING MODULE
215
cancelling ability at the expense of affecting the direct signal for the higher
frequencies (i.e. left to left and right to right).
Recommended settings are 1) both options set to None or 2) HRTFs set to
None and Filters set to 1/3-octave smoothing (or finer).
Samplerate Crosstalk cancelling for loudspeaker replay
The desired samplerate for calibration and dedicated crosstalk filters. For Normal operation
the samplerate is taken from the SIM-file pair given.
10kHz LP-filter Crosstalk cancelling for loudspeaker replay
Applies a 10 kHz low-pass filter to the resulting crosstalk cancelled filters. This has the effect
of making the localization less sensitive to head rotations and widens the sweet-spot some-
what at the expense of some high frequency loss.
SIM-file name Crosstalk cancelling for loudspeaker replay
Name of the SIM-files to read and/or create. For Normal operation either the left SIM-file (e.g.
E_A0_01_L.SIM) or the right (E_A0_01_R.SIM) is selected and (for the example)
X_A0_01_L.SIM and X_A0_01_R.SIM are created, i.e. the first letter is changed to X.
Note: to enable cross-talk cancellation of files created for HeadScape, an exception is if the
first letter is H where the old files instead are overwritten (make a copy in another folder before
processing). The reason is that SIM-files created for HeadScape have the syntax
HhhhvvvL.SIM and HhhhhvvvR.SIM and HeadScape cannot load files if they start with X. If
files are created for HeadScape (but without headphone eq) followed by a batch crosstalk
cancellation in the Sequence module, the tracking mechanism can be used to rotate the
sound around the head with a transaural replay. If nothing else, this is a great way of testing
the head-tracking and cross-talk operation.
Save Crosstalk cancelling for loudspeaker replay
Saves the current settings. If crosstalk cancellation is applied using the Sequence processing
module the latest saved settings are used.
OK Crosstalk cancelling for loudspeaker replay
Performs the requested processing and saves the settings.
Cancel Crosstalk cancelling for loudspeaker replay
Leaves the dialog without saving the settings (unless Save has been pressed).
Utilities|Make Anechoic WAV-file Info
Compilation of an anechoic WAV info file (AWI-file) for an anechoic recording. The information
is used e.g. when the Post-processing:Utilities menu for file information is selected and it can
also be used while specifying data in the source-file. For future revisions, this calibration info
may also be used with WAV-file addition.
7. POST-PROCESSING MODULE
216

Anechoic file Compile an anechoic WAV info-file
The anechoic WAV-file to compile the info-file for.
Distance (Anechoic recording) Compile an anechoic WAV info-file
The distance that the recording was made at, measured from the acoustical center of the
source.
Pre-amp (Anechoic recording) Compile an anechoic WAV info-file
Assuming that, for example, the calibration file (see below) is recorded with a setting of 0 dB
on the microphone pre-amp and the recording is made with a setting of 10 dB, 10 dB should
be entered here. The reason for this option is that a fixed-level calibration signal may have
been made that is stronger or weaker than the actual material recorded thus forcing a pre-
amplification change to record to full scale on e.g. a DAT or a PC sound-card.
Source (Anechoic recording) Compile an anechoic WAV info-file
For example "Guitar", for reference purposes.
Description (Anechoic recording) Compile an anechoic WAV info-file
A more detailed description, for reference purposes. For extended information, place the
description in a file and enter the filename.
Copyright (Anechoic recording) Compile an anechoic WAV info-file
For reference purposes.
Measured SPL (Calibration) Compile an anechoic WAV info-file
The measured SPL of the calibration signal (e.g. a loudspeaker sending out pink noise). This
7. POST-PROCESSING MODULE
217
front
angle
info is used to calculate the Lp1m in octave-bands of the source. Note: if no calibration signal
has been measured but the level of the source at 1m on axis is known anyway (or can be
estimated) the anechoic WAV-file itself can be given as the calibration file together with the
known value at e.g. 1 kHz.
Calibration file (Calibration) Compile an anechoic WAV info-file
A WAV-file (at the same sample-rate as the recording) containing the calibration signal at a
known level.
Name (Recommended directivity) Compile an anechoic WAV info-file
If a directivity is known for the source in question, it should be entered here.
OK Compile an anechoic WAV info-file
Creates the WAV info-file. The filename will be wavname.AWI in the CATTDATA-folder
ANECHOIC assuming that the name of the WAV-file is wavname.WAV). If calibration info is
given, the SPL at 1m is calculated as an average using a Hanning window with 50% overlap
sliding over the data in the calibration file and the anechoic file. Also standard deviations are
displayed to give an idea of how much the level varies during the sample.
The following Utilities menu items are only available in special full versions with add-ons for
Lake DSP convolution processors [Lake] or for users that are about to measure HRTFs or
headphone eq., available on request.
Utilities|Create Sphere HRTFs...
This item creates analytical HRTFs from
a solid sphere that can be compiled into
a CATT-format HRTF-library (see
below). A short text-file describing the
HRTFs is created in the selected HRTF
folder (name HRTF_info.TXT).
HRTF folder Create individual sphere HRTFs
Folder for the HRTFs to be created.
Sphere diameter (HRTF information) Create individual sphere HRTFs
Diameter of the solid sphere.

Sphere ear angle (HRTF information) Create individual sphere HRTFs
Angle from the front to the point on the sphere surface to act as ear, see
figure (top view):

FIR size (HRTF information) Create individual sphere HRTFs
Size of the created FIRs. For better results use long filters.
7. POST-PROCESSING MODULE
218
FIR sample-rate (HRTF information) Create individual sphere HRTFs
Sample-rate for the created HRTFs.
Frontal normalization (HRTF information) Create individual sphere HRTFs
Makes HRTFs be frontal flat by dividing all HRTFs by the frontal ones. To be used with
headphone eq normalization frontal. Without this option checked the headphone eq type
must be plain. When compiling an HRTF library from the created filters the normalization
type most be set according to this choice (see the created HRTF_info.TXT).
Utilities|Compile HRTF-library...
This item compiles individual measured or analytical HRTFs into a CATT-format HRTF-library.
With the more general handling of HRTFs introduced with v8.0c, libraries can not be created
from within CATT-Acoustic, this utility will only create the previous fixed 15 resolution. To
convert measured HRTF data in other resolutions and for further details on HRTF library
creation contact CATT. Libraries are created in the CATTDATA-folder HRTFs folder and can
then be selected in Preferences.

HRTF MAT-files folder Compile HRTF-library
Folder where the HRTFs in MATLAB v4 format are to be read.
Type (HRTF information) Compile HRTF-library
sphere HRTFs originate from an analytical sphere approximation
artificial head HRTFs originate from a measurement on an artificial head
person HRTFs originate from an individual
7. POST-PROCESSING MODULE
219
person average HRTFs originate from some kind of average over several persons
simple ITD/ILD HRTFs are simple Inter-aural Time and Inter-aural Level Differences
other HRTFs are of any other kind (specify in Description)
Sphere diameter (HRTF information) Compile HRTF-library
If Type = sphere : Diameter of the solid sphere. To be set the same as when the sphere
HRTFs were created (see the created HRTF_info.TXT).
Sphere ear angle (HRTF information) Compile HRTF-library
If Type = sphere : Angle from the front to the point on the sphere surface to act as ear. To be
set the same as when the sphere HRTFs were created (see the created HRTF_info.TXT).
Normalization (HRTF information) Compile HRTF-library
What kind of normalization the HRTFs have:
plain the HRTFs are as directly measured at the blocked ear-canal entrance
frontal the HRTFs are measured at the blocked ear-canal entrance but all filters are divided
by the frontal filters (requires frontal filters to be included in the headphone eq)
diffuse the HRTFs are measured at the blocked ear-canal entrance but all filters are divided
by an average "diffuse-field" HRTF. Requires the headphone used to have a
corresponding diffuse-field eq.
other Any other measurement type (e.g. measurements at the ear drum). Use Description to
document. This will require special headphone eq filters measured to fit to the
particular normalization or HRTF measurement made.
Sample-rate (HRTF information) Compile HRTF-library
Sample-rate of the FIRs specified in the MAT-files and of the created library.
FIR-size (HRTF information) Compile HRTF-library
Size of the FIR-filters to be used for the library. Must be the same size or larger than the FIRs
specified in the MAT-files.
Library name Compile HRTF-library
Library name (max 28 characters since a string specifying normalization and sample rate is
added). Example: for 44100 Hz and plain normalization the full name will be
name_plain_44.DAT.
Description (Library information) Compile HRTF-library
Library description (max 30 characters) to be used e.g. for the name of the person or artificial
head whose HRTFs have been measured. For reference purposes only.
Copyright (Library information) Compile HRTF-library
Name of the HRTF copyright holder and other similar information.
7. POST-PROCESSING MODULE
220
Subject/Type (Library information) Compile HRTF-library
Name of the measurement subject such as an individuals name or type of artificial head.
Utilities|Make Headphone Filter...
This item creates a CATT-format headphone eq filter from MATLAB v4 MAT-files. The
resulting filter is placed in the CATTDATA-folder HEADPHONES and can be selected in
Preferences for use at processing. Filters are assumed to have been measured at the blocked
ear-canal entrance unless normalization type other is specified. Details on creating new filters
are supplied only with the special Huron add-on version, available on request.

FIR MAT-file Make headphone filter
Name of filter-file in MATLAB v4 format.
Separate left and right filters Make headphone filter
Uses separate left and right headphone filters. Note that this option will make the eq be tightly
coupled to a particular set of HRTFs or a particular pair of headphones that has be found to
have different left/right responses.
For HRTFs with normalization (Filter information) Make headphone filter
Specify what type of HRTF normalization the filter is made for. Unless the type other is used
HRTF and filter normalization cannot accidentally be mixed.
Sample-rate (Filter information) Make headphone filter
Sample-rate of the MAT-file filter and the created CATT-format eq file.
FIR size (Filter-information) Make Headphone filter
Size of the equalization FIR-filters. Must be the same size or larger than the FIR(s) specified in
the MAT-file(s).
7. POST-PROCESSING MODULE
221
Headphone (Filter-information) Make Headphone filter
Brand name and type of headphone.
Copyright (Filter-information) Make Headphone filter
Name of company that holds the copyright of the measurement and similar information.
Subject/Type (Filter-information) Make Headphone filter
The subject used for the eq measurement e.g. an individual's name or type of artificial head.
Filter name (Filter-information) Make Headphone filter
Descriptive headphone name e.g. "BRAND_TYPE". Max 28 characters, normalization type
and sample-rate will be added.
Utilities|5-Ch Binaural Setup...
This is a very special option and should only be used if the steps involved are fully understood.
It is not meant for general-purpose room acoustic simulation but for research and
experimentation with various recording and replay techniques. Basically, it creates binaural IR
SIM-files as from five surround speakers.

Distance Anechoic 5-channel binaural setup
Distance from the listening position (receiver 01 placed at 0;0;0).
Angle Anechoic 5-channel binaural setup
Angle from the negative y-axis.
Symmetric setup Anechoic 5-channel binaural setup
Makes R1 and R2 be mirror copies of L1 and L2 and forces C0 to be at x = 0.
7. POST-PROCESSING MODULE
222
Include initial delays in response (for Lake convolution) Anechoic 5-channel binaural setup
The distances to the speakers affect the initial delay and 1/r attenuation but all responses
normally start at time 0 and the initial delay is included in the SIM-file header just as for
normally created SIM-files. With WAV-file convolution/addition and SIM-file addition the delays
are taken into account. With Lake convolution the delays will have to be added by DSP unless
this option is checked. The different initial delays are then taken into account by shifting the
responses in time so that only the response of the closest speaker starts at time zero.
Create GEO-files for non-anechoic setup Anechoic 5-channel binaural setup
Optionally prediction project-files are created: MASTER.GEO, SRC.LOC, REC.LOC,
Speakers.PRD that can be used as templates to create a non-anechoic 5-channel simulation
either by using the simple shoebox shape with diffusing walls (see instructions in the created
GEO-file) or by using the receiver layout for an existing room model.
Speakers.PRD: Sources C0,L1,L2,R1,R2 represent speaker positions describe below,
receiver 01 represents the listening position.
Sample-rate Anechoic 5-channel binaural setup
Sample-rate of the created SIM-files.
Result folder Anechoic 5-channel binaural setup
Folder were all created files are placed.
OK Anechoic 5-channel binaural setup
5 speakers, all pointed at an assumed listener and 5 SIM-file Left/Right pairs, containing the
HRTFs concerned, are created in the selected folder:

E_C0_01_L.SIM Front Center
E_C0_01_R.SIM

E_L1_01_L.SIM Front Left
E_L1_01_R.SIM

E_L2_01_L.SIM Back Left
E_L2_01_R.SIM

E_R2_01_L.SIM Back Right
E_R2_01_R.SIM

E_R1_01_L.SIM Front Right
E_R1_01_R.SIM
The name syntax is the same as for normally created binaural impulse response SIM-files and
can be used as such (SIM-file addition and the WAV-file addition after convolution). In addition
a plot-file Ch5.PLT is created showing the speaker layout.
SIM-files created are optimized in level for Lake convolution (makes no difference for software
convolution).
The goal is to binaurally simulate 5 ideal loudspeakers as placed in a perfect anechoic
chamber. The main use of this option is together with a Lake Huron to be able to listen to a 5-
channel recording (e.g. Dolby Surround) binaurally.
C0
L1 R1
L2
x
y
R2
01
7. POST-PROCESSING MODULE
223
With software convolution, a mono WAV-file for each of the 5 channels can be convolved with
the corresponding filters and the 5 resulting stereo WAV-files be added together (the WAV-file
addition utility). After convolution the WAV-files can be calibrated only if all 5 channels use the
same anechoic material. WAV-file addition can be used to create a binaural replay of a
simulated 5-channel system.
Non-symmetrical setups are allowed so that, for example, the effect of non-symmetrical
speaker placement can be studied.
For the HRTFs and the headphone eq the Preferences settings are used just like for normal
post- processing and are documented in the SIM-file headers.
Actual processing is simplest to perform in the MultiVolver using a 5x2 setup a.k.a. binaural
down-mix.
If a non-anechoic replay is desired (e.g. a living-room using another configuration of
MASTER.GEO) a full prediction of C0->01, L1->01, L1->01, L1->01, L1->01 followed be
binaural post-processing must be made so that new E_C0_01_L.SIM etc. will be created for
a non-anechoic 5-speaker setup and a 5x2 process can be run again.
To compare the 5-channel recording to a full binaural simulation (i.e. an artificial head
recording, use A0->01 (head-direction source) but post-process binaurally and convolve with
the anechoic material.
7. POST-PROCESSING MODULE
224
7.2 Dialogs

The main Post-processing dialog controls settings for the combination of actions to be per-
formed, which types of data-files to create, and software convolution options. For research
and other special uses, it is possible to create only the early, or only the late part. For normal
auralization both the early and the late part should of course be included. When Save and
Run... is clicked the current PST settings-file is saved, and an ECH-file to post-process must
be selected. The PP module then performs the actions requested.

7. POST-PROCESSING MODULE
225
General settings
The General settings dialog controls basic settings such as receiver model, length and
sample-rate of the room Impulse responses (IR) filters to be created.

Length (Impulse response (IR)) General settings
Length in ms (per channel) of the total synthesized IR in Lake SIM-format. Each time this item
is altered the corresponding IR size in points is updated. Recommended length corresponding
to a 60 dB decay (at least a 40 dB decay i.e. 2/3 of the reverberation time or the truncation is
clearly audible). If the low frequency T-30 is much longer than at mid frequencies, choose a
Length according 60 dB for the mid frequencies.
Samplerate (Impulse response (IR)) General settings
Sample-rate (sampling frequency) of the synthesized and saved IR in Lake SIM-format. Each
time this item is altered the corresponding IR Size is updated. For software convolution
44100 Hz is recommended, while for Lake convolution 48000 Hz is used with analog I/O and
with digital I/O it depends on Huron settings (typically 44100 Hz).
Transform-size (Reflections) General settings
Transform-size for use in digital octave-band filters, spline, Hilbert transform, IFFT, FFT etc.
for synthesizing reflections in the IR. Each reflection path transfer function will be approx-
imated with half this number of points ranging from 0 to the Nyqvist frequency. Recommended
sizes:
Rate, Hz Size
44100 512 (lower not allowed)
48000 512 (lower not allowed)
7. POST-PROCESSING MODULE
226
Apply source eq/gain (Reflections) General settings
The normal case is to include the source eq/gain (based on Gain_a from the source-file) so
that the created impulse responses are affected by the system eq/gain for an electro-
acoustical source (it has no effect for a natural source). If this option is not checked, it is as if
the acoustical input was through a system with unit gain but with the directivity of the
loudspeaker selected. See Section 2.3 and 7.3 for details.
Fractional delay (Reflections) General settings
Fractional delay means that a reflection is not added at the nearest sample bin but an
interpolation technique is used to add it at the exact "fractional" delay. Slightly longer
processing but useful for some special applications.
(Stopband suppression)(Reflections) General settings
How much to suppress above the upper limit of the highest octave-band and optionally below
the lower limit of the 125 Hz band (88 Hz). These settings affect only direct sound and first-
order specular reflections that are constructed using a spline magnitude, see Fig 7.3 in
Section 7.3.
Level (Stopband suppression) (Reflections) General settings
The suppression is made using a raised cosine bell from the lower limit of the 125 Hz octave-
band to 0 Hz. Recommended value -40 dB.
Suppr. below 88 Hz (Stopband suppression) (Reflections) General settings
How to handle the low frequency part of the reflection path transfer function amplitude (below
the lower limit of the 125 Hz octave-band: 88 Hz). Suppresses the low frequencies using a
raised cosine bell function 88 to 0 Hz. If "off" a flat response down to 0 Hz is created for each
synthesized RP impulse response. LF suppression should in most cases be off since it
requires large transform-sizes to work well. Recommended setting off.
(Receiver-model) General settings
Type of directional response to use for the receiver.
Omni-directional Apply no receiver directivity at all. Creates a mono omni-directional
response (same as using a (1.0;0) Mono microphone). _M is added to
the ECH-file base-name.
Binaural Apply measured HRTFs. Headphone equalization and HRTF library are
selected in Preferences (Prefs button). IACC can optionally be cal-
culated and will be put in the SIM-file header (use Utilities|
Information|Lake SIM-file to check the values) _L and _R are added
to the ECH-file base-name.
Mono microphone Mono microphone directivity. The microphone direction is the same as
the head direction selected at prediction. See Mic settings below. _M is
added to the ECH-file base-name.
Blumlein/X-Y stereo Create a two-channel conventional coincident stereo IR where Mic
settings and Angle between the mics can be selected.
_L and _R are added to the ECH-file base-name.
7. POST-PROCESSING MODULE
227
Mic settings (Receiver-model)
Pre-made types available are: Omni, Cardioid, Hyper-cardioid,
Super-Cardioid, Figure-of-8. For User defined and further
details see Section 7.3.
B-format (WXYZ ) (Receiver-model)
B-format [B-format] is mainly intended for use with CATT-
Walker, a Lake Huron workstation running AniScape or a
Convolver connected to a Speaker Decoder or a Binaural
Decoder but also the The FIReverb Suite (MultiVolver) or 3
rd

party convolvers/decoders can be used. _W, _X, _Y and _Z etc.
are added to the ECH-file base-name
Order (Receiver model)
1. Creates four different responses according to 1
st
order B-format as if measured by four
microphones where X, Y, and Z are figure-of-8 types pointing in X, Y, and Z directions (X
is at the front i.e. same as the head-direction) and W is an omni-directional response
divided by 1.414. For CATT-Walker choose 1
st
order.
2. Creates 1
st
and 2
nd
order components WXYZ RSTUV.
3. Creates 1
st
, 2
nd
and 3
rd
order components WXYZ RSTUV KLMNOPQ.
For 2
nd
and 3
rd
order, see Theory.
Note: CATT tools only utilizes WXYZ so external software is required to utilize 2
nd
or higher
order. The exception is SIM-file addition that will add also higher order components if found
and PureVerb v3.2e can convert WXYZ + RSTUV + KLMNOPQ to WAV-format with
retained relative channel calibration.
AniScape (Receiver model)
(Full Huron version) When checking this button enabled with 1
st
order B-format, the following
is performed creating all required files for Lake AniScape:
output samplerate is the selected one divided by 3. For Huron digital I/O typically choose
44100 Hz (giving reverb processing at 14700 Hz) and for Huron analog I/O choose 48000
Hz (giving reverb processing at 16000 Hz).
reflection orders lower then 2 are excluded (Early part settings)
a GEO-file for Lake AniScape is automatically created along with the SIM-files. The files-
name syntax is E_ss_rr_.GEO and the file is created in the same folder as the SIM-files.
The created GEO-file can be selected in the Huron Sound Field Filter VRack application for
real time direct sound and first order reflections + a reverberation valid for the room model in
question (that uses the names E_ss_rr_W/X/Y/Z.SIM in the same folder). If the actual
room model is not rectangular an approximate rectangular outline is created in the GEO-file
for first order reflection generation in AniScape. An alternative is to use The FIReverb Suite
(PureVerb) that also can be set to create AniScape files (Options menu)
7. POST-PROCESSING MODULE
228
5-channel (Receiver model)
Creates five different responses according to the 5-channel microphone setup selected. 5-
channel is mainly intended for use with the MultiVolver. _1, _2, _3, _4 and _5 are added to
the ECH-file base-name corresponding to Center, Left, Right, Left surround and Right
surround.
5-channel microphone setup (Receiver model)
The position, aim and directivity patterns for the five microphones. Pre-made types available
are: Omni, Cardioid, Hyper-cardioid, Super-cardioid, Figure-of-8 and a special Figure-of-8+
(only the frontal lobe exists).

Load/Save 5-channel microphone setup
Loads and saves a 5-channel mic setup file (.CH5). CH5-files can be exchanged with
PureVerb and are normally kept in CATTDATA-folder PV_MICS.

Plot 5-channel microphone setup
Plots the current setup and shows it in the stand-alone PLT-viewer. The
plot includes the selected directivity patterns for reference and mouse-over
location read-out is shown in the status-bar. Example shows L,C,R
cardioids and Ls,Rs figure-of-8.

7. POST-PROCESSING MODULE
229
Output-files
The resulting IR output data-files (Finite Impulse Responses, FIRs) will be saved to the same
folder as the ECH-file and have names that are dependent on the receiver model selected.

The name syntax is (assuming that name.ECH was the original ECH-file name):
Mono: name_M.frm
Binaural/stereo: name_L.frm (left)
name_R.frm (right)
B-format: name_W.frm (omni)
name_X.frm (x-axis figure-of-8 head-direction)
name_Y.frm (y-axis figure-of-8)
name_Z.frm (z-axis figure-of-8)
for 2
nd
order R, S, T, U, V and 3
rd
order K, L, M, N, O, P, Q
5-channel: name_1.frm (Center)
name_2.frm (Left)
name_3.frm (Right)
name_4.frm (Left surround)
name_5.frm (Right surround)
The extension .frm stands for format:
MATLAB v4 binary .MAT
MLSSA ASCII .MLS
Lake DSP binary .SIM
Windows WAV .WAV (also has an additional _16 or _32 code added and _LR if
stereo)
The SIM-file addition utility relies on the file-name syntax described above. See the Utilities
menu for manipulating output-files.
Binaural/stereo example names below for ECH-file E_A0_22.ECH.
7. POST-PROCESSING MODULE
230
Lake SIM-format (.SIM) for the convolver (IR) Output-files
Create a SIM-file for convolution using either the software convolver, MultiVolver or the Lake
DSP convolution processors. This is a binary file in the Lake SIM-format. The format allows
any number of comments before the file-header. The PP module uses this to document the
prediction project name and some other parameters such as initial scale-factor needed for
calibration. For Lake convolution the data is optimally scaled not to overflow the integer
convolution. Software convolution auto-scales to give optimal dynamic range (introduces a
second scale-factor). SIM-files will have the sample-rate and IR size selected in General
settings. The header contents of a SIM-file can be inspected using a Utilities|Information
submenu.
Sample file-names: E_A0_22_L.SIM and E_A0_22_R.SIM.
MLSSA ASCII-format (IR) Output-files
Create an MLS-file for MLSSA [MLSSA]. This is an ASCII-file to be imported to MLSSA by the
"TRANSFER IMPORT" command. An alternative to use this function is to use the file
conversion utility from SIM to TIM format. The resulting file can then be loaded into MLSSA by
the "TRANSFER LOAD" command. MLS-files will have the sample-rate and IR size as
selected in General settings.
Sample file-names: E_A0_22_L.MLS and E_A0_22_R.MLS.
MATLAB binary-format (IR) Output-files
Create a MAT-file for MATLAB v4 format [MATLAB]. This is a binary file. The BRIR vector
(variable pp_ir) is calibrated i.e. no scaling is performed.
The file contains various variables and is organized as follows (variable names):
pp_initdelay delay source to receiver [s]
pp_ir the impulse response (left or right calibrated)
pp_intfs internal sample-rate [Hz]
pp_auxdelay short delay caused by processing [s]
pp_procdelay electrical loudspeaker delay [s]
pp_sincdelay overall delay in samples if fractional delay is used (else = 0)
pp_earlyp early transform-size
pp_latep late transform-size
pp_tailstart late part start [s]
pp_lfsupp LF suppression on/off (1/0)
pp_supp suppression value, < 0 [dB]
pp_recmodel receiver model
(0 = omni, 1 = binaural, 2 = B-format, 3 = mic, 4 = stereo, 5 = 5-channel)
pp_micz microphone parameter if pp_recmodel = 3 or 4
pp_micx microphone parameter if pp_recmodel = 3 or 4
pp_decay corresponding to selected late part decay, > 0 [dB]
pp_iacc if the receiver model is binaural and IACC is selected a 9-element vector
will give the calculated IACC values (elements 1..8 is 125..16k, element 9
is the overall value).
Sample file-names: E_A0_22_L.MAT and E_A0_22_R.MAT.
16-bit WAV uncalibrated (.WAV) (IR) Output-files
This is a simple version most appropriate for a quick listen. I does not include the initial delay
and is always scaled to 16-bit max. Mono, B-format and 5-channel IRs are saved as mono
WAVs with the usual naming convention but with an added _16 (e.g. E_A0_01_16_W.WAV).
7. POST-PROCESSING MODULE
231
For convenience, stereo and binaural IRs are saved as stereo WAVs with the name syntax
E_ss_rr_16_LR.WAV.
32-bit WAV calibrated (.WAV) (IR) Output-files
This is a more advanced version most suitable for various kinds of independent further
processing. The files include the initial delay (as well as any electrical aux delay for electro-
acoustic sources) and are always scaled in a consistent manner retaining individual IR levels.
Since then the level span of a 32-bit file is so large (> 186 dB), a weak normal natural impulse
response can use around 16 bits but PA IRs that may have much higher level due to the
Gain_a values can utilize more bits and have the scale factor built in. It means that you have
to use an editor that can read actual 32-bit PCM files and not one that just reads the upper 16
bits. Mono, B-format and 5-channel IRs are saved as mono WAVs with the usual naming
convention but with an added _32 (e.g. E_A0_01_32_W.WAV). For convenience, stereo and
binaural IRs are saved as stereo WAVs with the name syntax E_ss_rr_32_LR.WAV.
(Plot-files) Output-files
Which plot-files in CATT PLT-format to generate. A plot list-file POSTPLT.TXT is created in
the folder where the ECH-file is read and the view module automatically displays any created
files. Filenames below assume that the ECH-file was name.ECH.
Impulse response (early part only)(Plot-files) Output-files
Plot the IR with a length corresponding to 150% of the early part. Filename name_I.PLT. If
B-format is selected any 2
nd
order B-format components are included but 3
rd
order is are
plotted in a separate file name_I3.PLT.
Octave-band decay curves (Plot-files) Output-files
Plots of octave-band decays before IR synthesis. Least-square fitted lines and RT values are
shown. The decays always correspond to an omni microphone and are only generated if at
least -30 dB has been reached for all octave-bands (or decay curves and reverberation times
would be meaningless). Filename name_D.PLT.
Early part response
Creation of an early part of the IR based on the predicted
early part echogram (corresponding to the upper right
graph in the Full detailed calculation plot-file
E_ss_rr_oct.PLT), see section 7.3.
Exclude orders lower than Early part response
This item is only available in a special version with add-
ons for the Lake DSP AniScape application. For other software versions it is not displayed and
the setting is always 0. It is a special purpose option to exclude e.g. the direct sound and all
first order reflections (setting 2) to be handled in real time by some other method, e.g. by
AniScape. Normal setting is 0 (i.e. direct sound and all early reflections are included). If not set
to 0 a warning is issued if warnings are enabled.
7. POST-PROCESSING MODULE
232
Late part response
Settings for creation of the late part of the IR (i.e. the
reverberation tail) based on the a simplification of the hall
model and statistically generated taking into account
spatial incidence from the actual model, see section 7.3.



(IR truncation) Late part response
At which level in the decay-curve relative the direct sound, to truncate the reverberation tail
generation (for the band with longest RT).
Default Truncate the IR at the selected total IR size.
User defined Selected by the user. A minimum of 40 dB is recommended (i.e. 2/3 of the
RT) or the truncation may be heard. Be sure to match this value and the IR
size so that truncation is done at the time intended (the decay can of course
not be longer than the time corresponding to the selected IR size).
Create files for head-tracking
This item is only enabled if binaural post-processing is selected and is useful either for
including head rotations with the Walkthrough convolver or for the Lake DSP HeadScape
application. Depending on application a different filename syntax is used for the created SIM-
file, see Preferences. The processing needs a head-tracking data file with head rotation
angles to be selected (.HTR). This file is for HeadScape use copied to the output folder after
completed processing so when HeadScape is run all necessary files are present. Sample
HTR-files are located in the CATTDATA-folder HRTF.
This option creates one pair of long filters as usual but also a set of short early-part filters to
be head-tracked using HeadScape or to be used in a Walkthrough convolver script. To run
HeadScape the long filters and the HTR-file needs to be selected and the HeadScape
application then expects to find the set of short filters in the same folder as the HTR-file.
These files are preloaded into Huron RAM when the HeadScape Configure button is pressed.
The tail filter will be truncated by HeadScape at 59392 taps.
The structure of an HTR-file is:

HURON1
N
Hi [,] Vi
...
Where
HURON1 file identification tag
N length of the early head-tracked FIRs at the selected samplerate
( 3840 for HeadScape use).
7. POST-PROCESSING MODULE
233
Hi horizontal head angles from 0 to 360
(0 is straight ahead and > 0 is head turned to the left).
Vi vertical head angles in from 30 to 90
(0 is straight ahead, < 0 is looking up and > 0 is looking down).
A maximum of 128 angle pairs (for HeadScape use) can be specified in any order and angle
values can be specified with an accuracy of 0.5. Decimal point must be used.
For HeadScape use the file-name syntax is :
HhhhvvvL.SIM and HhhhhvvvR.SIM.
For Walkthrough convolver use the syntax is:
E_ss_rr_hhhvvv_L.SIM and E_ss_rr_hhhvvv_R.SIM,
the first part of the syntax is thus the same as for the long filter.
Where
hhh is the horizontal angle in the number of half degrees calculated as
2Hi giving values in the range 0..719.
vvv is the vertical angle in the number of half-degrees calculated as
2(90 + Vi)giving values in the range 120..360.
Example from E_A0_12.ECH:
Files created for HeadScape use:

HURON1
3984
0.0 0 H000180L.SIM H000180R.SIM
0.5 0 H001180L.SIM H001180R.SIM
5.0 5.0 H010190L.SIM H010190R.SIM
5.0-5.0 H010170L.SIM H010170R.SIM
...
Files created for Walkthrough use:

HURON1
3984
0.0 0 E_A0_12_000180_L.SIM E_A0_12_000180_R.SIM
0.5 0 E_A0_12_001180_L.SIM E_A0_12_001180_R.SIM
5.0 5.0 E_A0_12_010190_L.SIM E_A0_12_010190_R.SIM
5.0-5.0 E_A0_12_010170_L.SIM E_A0_12_010170_R.SIM
...
For HeadScape use details, and for changes in possible filter lengths, consult current Head-
Scape documentation.
Create CWI-file for CATT-Walker
This item is only enabled if B-format post-processing is selected in General settings (with 1st
order and AniScape off). Via this special post-processing real time walkthrough auralization
and visualization is available using the standalone external software CATT-Walker
(Walker.EXE, see File|External CATT Tool). An overview of the procedure, and how to
operate CATT-Walker, can be found in Walker.PDF.
7. POST-PROCESSING MODULE
234
Post-processing for CATT-Walker is similar to normal post-processing and works as follows:
select General settings as normal and Receiver model 1
st
order B-format and AniScape off
select Create CWI-file for CATT-Walker on the main dialog (enabled when B-format is on)
Browse for a CAG-file (as was created in the output file along with the ECH-files for all
receiver positions). When the CAG-file is read, and if it has more than one source (if the
prediction was made using several sources), a dialog is shown where the source to use
can be selected.
press Save and Run as usual and all receivers defined will be post-processed (note a
count-down and a timer on the Processing dialog estimating the total remaining time).
When finished a single file called WALKER_ss.CWI is created where ss is the id of the
source used (CWI = CATT-Walker Impulse responses, see Utilities|Information|CATT
CWI-file for info on a created CWI-file).
start CATT-Walker via File|External CATT Tool
press Help and read the dedicated Walker.PDF help-file, keep this file open for reference.
press Config and select the CAG-file, the corresponding CWI-file and the desired anechoic
WAV-file.
press Start, for operation details see Walker.PDF.
Since a PST-file includes the settings also for CATT-Walker post-processing it can be used in
the Sequence processing module. Since post-processing to create a CWI-file for CATT-
Walker does not require an ECH-file to be given, (NONE) can be given in the ECH-file field in
the Post-processing sequence step.
CWI-file IRs can be analyzed via Utilities|Information|CATT CWI-file.
To add several CWI-files together for a multi-source PA system walkthrough (assuming the
same anechoic input to all sources) use Utilities|CWI-file Addition.
Convolution
Utility to run software convolutions. Convolves one- or two-channel impulse responses in Lake
DSP SIM-format with anechoically recorded mono material in WAV-format. For convolution
requiring > 2 channels the MultiVolver can be used. Floating-point convolution is used and any
length of FIR can be convolved with any length of input-material (some temporary hard-disk
workspace is required, see below). The resulting, processed, file is in WAV-format auto-
scaled to 16 bits for maximum dynamic range. A binary file containing scale-factor used and
some other data is also created, the filename is Name.SCL if Name.WAV is the selected output
filename, see below. The SCL-file contains all necessary information for the WAV-file
calibration and addition utilities to perform relative calibration of processed files. To enable
WAV-file calibration, and addition, a processed WAV-file needs to be accompanied by its
SCL-file whenever it is copied to another location. The file info and WAV-file
scaling/calibration/addition utilities reads the SCL-file if present. For details of calibration see
7.3 Theory. The sample-rate may be defined in the SIM-file header. If it is, it is checked so that
it matches the sample-rate of the selected anechoic WAV-file.
Note: The convolver may need temporary disk workspace of at least nine times the size of the
input WAV-file or the output file will be truncated or may contain rubbish data. There are two
reasons to this. The first reason is that the convolver uses a caching technique so that the first
7. POST-PROCESSING MODULE
235
time an anechoic file is processed for a particular case it takes slightly longer but any
subsequent convolutions will run twice as fast. The cache information is stored in PPW-files in
the CATTDATA-folder ANECHOIC and can be deleted at any time since they will be created
again if needed (they are quite big for long WAV-files). The second reason is that the
processing, if the anechoic WAV-file is large (> ca. 20 sec at 44.1 kHz), creates a temporary
floating-point file that then is scaled to a full 16-bit WAV-file, these file are deleted after
completion.
It is recommended that all anechoic mono WAV-files follow a certain filename convention and
they must be placed in the CATTDATA-folder ANECHOIC. The naming convention is:
mm_ff_AN.WAV where mm is the name of the source material (for example FT for Female
Talker), and ff is the sample-rate (44 for 44100 Hz), and AN is for anechoic. A full example is
thus FT_44_AN.WAV. If this file is convolved with E_A0_01_L.SIM and E_A0_01_R.SIM the
processed file could be named FT_A0_01.WAV. This way both the source material (FT) and
the source/receiver combination (A0_01) can be tracked. The sample-rate is stored in the
WAV-file header and can be checked using the Utilities| Information menu along with other
info.
Note: the anechoic material provided with the full software version is copyrighted, see
Section 1.1. For limited versions only a single 22050 Hz file can be used.

Name (Input (anechoic) WAV-file) Convolution
Anechoically recorded mono WAV-file from the CATTDATA-folder ANECHOIC. The default file
can be specified in Preferences. If non-anechoic material is used (e.g. binaurally recorded
material that is to be cross-talk canceled it must also be put in ANECHOIC).
Mono the specified input WAV is mono
Stereo left, Stereo right
the specified input WAV is stereo and the left or the right channel is to be used as
mono input (typically for cross-talk cancellation of binaural recordings or
auralization of stereo speakers).
Stereo mix the specified input WAV is stereo and the sum of the left and the right channel
divided by 2 is to be used as mono input

7. POST-PROCESSING MODULE
236
2-channel convolution (binaural or stereo) (Impulse responses (SIM-files)) Convolution
If two-channel (stereo or binaural) or one-channel (mono) convolution will be performed.
Play (Impulse responses (SIM-files)) Convolution
Plays the selected IR(s) over the soundcard.
Left (Impulse responses (SIM-files)) Convolution
Selection of the left (or mono) filter SIM-file. If not mono and if the file is the left channel of a
stereo IR (E_ss_rr_L.SIM), the right IR SIM is automatically filled in.
Right (Impulse responses (SIM-files)) Convolution
Selection of the right filter SIM-file (if 2-channel).
Name (Processed WAV-file (to be created)) Convolution
Desired name of the processed file. See recommended file-name syntax above.
Auto play after completed convolution (Processed WAV-file (to be created)) Convolution
Launches the CATT WAV-file player and automatically plays the file.
Use less harddisk space Convolution
Does not use the cashing technique with PPW files as discussed above. Could be used to
save temporary harddisk space.
When convolution is selected as a Sequence module step the variant that is faster for
repeated similar cases is always used since that is a typical use of a sequence (to convolve
e.g. responses from 16 positions in a room with the same WAV).
For very long WAV-files the MultiVolver can be used since it does not use any extra hard disk
space at all. Also, the WAV-files to be processed do not have to be in the ANECHOIC folder.
On the other hand the MultiVolver does not create any SCL-files needed for calibration and
WAV-file addition.
OK Convolution
Performs the convolution and optionally plays the file when finished.
Walkthrough convolution
To be able to hear the sound of moving around in a room, the walkthrough convolver can be
used. By calculating room responses along a walking path and associate each with a time the
convolver interpolates and creates the effect of walking along the path while listening to the
same sound playing. This convolver can also be used to create smooth transitions (morphing)
between cases in e.g. continuos A/B tests (e.g. with or without room treatment, different
loudspeaker alternatives etc). Note: Doppler is not included.
The external CATT-Walker (see File|External CATT Tool) will perform a similar task but in
real time while moving around in the virtual room, the Walkthrough convolution utility is better
suited for creating auralized sound tracks to rendered walkthrough videos.
7. POST-PROCESSING MODULE
237

Input (anechoic) mono WAV-file Walkthrough convolver
Anechoically recorded mono WAV-file from the CATTDATA-folder ANECHOIC. The default file
can be specified in File|Preferences. If a too short input WAV-file is chosen, it will
automatically be looped so that it is not "exhausted" until the list of filters has been run
through. However, it may sometimes anyway be better to manually create a long enough
looping sound in a WAV-editor so that there is a good loop rhythm.
(Walkthrough Convolver Script-file) Walkthrough convolver
A script-file that defines how the convolution is to be performed (.WCS). The syntax of a WCS-
file is (note the Create button described below):

CATT-WCS
VERSION = version
SIMFOLDER = "simfolder"
INCHANNELS = inchannels
INCHANNELSUFFIX = insuffix
OUTCHANNELASSIGN = outassign
MODE = mode
UNIT = unit
time "basename" ["tailname"]
...
Where:
version WCS-file version, 0 for v8.0
simfolder folder where all SIM-files are located, with full path given in ""
inchannels number of input channels (e.g. 2 for binaural/stereo, 4 for B-format, 5 for 5-
channel)
insuffix the SIM-filename characters identifying the channel (e.g. "_L" "_R" for
binaural or stereo). This suffix will be added to each SIM-file basename in
the list, followed by ".SIM"
7. POST-PROCESSING MODULE
238
outassign mono|stereo , i.e. if one mono WAV per channel is to be created or
instead a set of stereo files. For binaural stereo is the normal choice but
for B-format and 5-channel mono is often most practical. If an odd number
of channels are used with stereo assign (e.g. WXY), the last stereo file
created with have an empty right channel.
mode time_relative|time_absolute i.e. if the time associated with each
response is relative or absolute
unit ms|s|frames fps|fractions f the time unit time associated with each
response given: milliseconds, seconds, frames with the given framerate
(fps frames per second), or sec fractions with the given fraction f.
time the time during which the given response is used (relative or absolute
according to header MODE)
basename is the base name of the SIM-file given in "", e.g. "E_A0_12"
tailname optional: if basename is the SIM-file for head-tracking (e.g.
"E_A1_23_000180") tailname is the full response for the corre-
sponding position, i.e. "E_A1_23". The tail FIR is first loaded and then the
first part is repeatedly overwritten by the early part FIR before convolving.
Example of a script where the walkthrough goes from position 13 to 01, turns around, and
walks back again looking backwards:

CATT-WCS
VERSION = 0
FOLDER = "c:\v8doc\"
INCHANNELS = 2
INCHANNELSUFFIX = "_L" "_R"
OUTCHANNELASSIGN = stereo
MODE = time_relative
UNIT = frames 30
24 "E_A0_13"
24 "E_A0_12"
24 "E_A0_11"
... 10-04 removed here
24 "E_A0_03"
24 "E_A0_02"
96 "E_A0_01"
4 "E_A0_01_000180" "E_A0_01"
4 "E_A0_01_010180" "E_A0_01"
4 "E_A0_01_020180" "E_A0_01"
... 030180-330180 removed here
4 "E_A0_01_340180" "E_A0_01"
4 "E_A0_01_350180" "E_A0_01"
4 "E_A0_01_360180" "E_A0_01"
96 "E_A0_01_360180" "E_A0_01"
24 "E_A0_02_360180" "E_A0_02"
24 "E_A0_03_360180" "E_A0_03"
24 "E_A0_04_360180" "E_A0_04"
... 05-10 removed here
24 "E_A0_11_360180" "E_A0_11"
24 "E_A0_12_360180" "E_A0_12"
24 "E_A0_13_360180" "E_A0_13"
The external CATT tool WalkDecim (see File|External CATT Tool) can greatly simplify the
task of creating WCS files since it can import a camera path from a rendering program and
Walking from
13,12,1103,02,01
Turning around using early part
HeadScape files
E A0 01 000180 360180
Walking from 01,02,0311,12,13
(cheating a bit using the old tail and just rotate the
early part using HeadScape files)
7. POST-PROCESSING MODULE
239
from that create a receiver file as well as a corresponding WCS.
Create (Walkthrough Convolver Script-file) Walkthrough convolver
A utility dialog that creates a basic script-file that can be filled in with a list of times and SIM-
files. Edit items correspond to WCS-file header items described above.

Processed WAV-file base-name, to be created Walkthrough convolver
The resulting WAV-file base-name. The full name is created by adding the given
INCHANNELSUFFIX and ".WAV".
Examples:
Binaural/stereo out-assign (one stereo file):
basename_L_R.WAV.
Binaural/stereo and mono out-assign (two mono files):
basename_L.WAV and basename_R.WAV.
B-format and mono out-assign (four mono files):
basename_W.WAV
basename_X.WAV
basename_Y.WAV
basename_Z.WAV.
5-channel and mono out-assign (five mono files):
basename_1.WAV
basename_2.WAV
basename_3.WAV
basename_4.WAV
basename_5.WAV.
7. POST-PROCESSING MODULE
240
Use shorter proc. frames (not required for speech/music)
Normally this option is not necessary with speech and music but can be useful with special
test signals like pink noise or pure tones that are quite sensitive and where the impulse
response interpolation can be audible. The shorter frame option causes the processing to take
longer time.
Convolution (WAV impulse responses)
Utility to run software convolutions from e.g. measure impulse responses. Convolves one- or
two-channel impulse responses in WAV-format with anechoically recorded mono material in
WAV-format. For convolution requiring > 2 channels the MultiVolver can be used. Floating-
point convolution is used and any length of FIR can be convolved with any length of input-
material (some temporary hard-disk workspace may be required, see below). The resulting,
processed, file is in WAV-format auto-scaled to use all bits of the selected format for
maximum dynamic range.
Note: The convolver may need temporary disk workspace. If the anechoic WAV-file is large (>
ca. 20 sec at 44.1 kHz), the processing creates a temporary floating-point file that then is
scaled to a bit-depth WAV-file, this file is deleted after completion.

The free GratisVolver performs similar functions and can also play selected WAVs.
Name (Input (anechoic) WAV-file) Convolution (WAV IR)
Anechoically recorded mono or stereo WAV-files from the CATTDATA-folder ANECHOIC or
free location (see Any Folder). The default file for normal SIM-file convolution is pre-selected
(can be specified in Preferences).
Mono the specified input WAV is mono
Stereo L the specified input WAV is stereo and the right channel is to be used as mono
input.
Stereo R the specified input WAV is stereo and the left channel is to be used as mono
input.
7. POST-PROCESSING MODULE
241
Stereo mix the specified input WAV is stereo and the sum of the left and the right channel
divided by 2 is to be used as mono input
The input WAV file can be 16, 24 or 32-bit PCM WAV.
Any folder (Input (anechoic) WAV-file) Convolution (WAV IR)
Selection of the input WAV-file can be from any hard disk location.
Name (Mono or stereo impulse response WAV-file) Convolution (WAV IR)
Selection of the impulse response WAV-file. The file can be can be 16, 24 or 32-bit PCM
WAV. If the file is mono, 1x1 mono-to-mono convolution is made and a mono output WAV is
created. If the WAV is stereo, 1x2 mono-to-stereo convolution is made and a stereo output
WAV is created.
Play (Mono or stereo impulse response WAV-file) Convolution (WAV IR)
Plays the selected IR over the soundcard. Note: this is meant for short WAVs like IRs since it
can't be stopped until playing is over, to play longer files use Utilities|WAV-file Player.
Auto play after (Processed WAV-file (to be created)) Convolution (WAV IR)
Launches the CATT WAV-file player and automatically plays the file.
Bits (Processed WAV-file (to be created)) Convolution (WAV IR)
The created WAV-file can be 16, 24 or 32-bit PCM WAV or take the bit depth of the input, if
one of these.
Name (Processed WAV-file (to be created)) Convolution (WAV IR)
Desired name of the processed file.
For very long WAV-files MultiVolver can be used since it does not use any extra hard disk
space at all.

7. POST-PROCESSING MODULE
242
7.3 Theory
This section describes the background to the IR synthesis performed by the PP module with
some references to literature.
Impulse response scale and calibration
Created Impulse Responses (IRs) are normalized by not including the acoustical input
spectrum (Lp1m_a in the source file) since the it is replaced by the spectrum of the anechoic
file at convolution. By removing the acoustical source spectrum it is also reasonable to switch
anechoic material as long as the implied source has a directivity pattern similar to the one
given in the source-file.
The finally heard processed music/speech has been scaled in several steps, see Fig. 7.2.
x
Pa
s
a
x
Pa
y y
Pa
h s
p
Performance
Digital recording
at 1 m distance (s
a
)
Convolution (s
c
)
Prediction
Post-processing (s
p
)
s
corr
Playback
system

Fig. 7.2 principal scale factors from anechoic recording to audible
auralization.

( )( )
y x s h s s
Pa a p c
= (7.3-1)
Where
y final processed music/speech 16-bit integer format
x
Pa
true pressure signal of anechoic music/speech material at 1 m in front of the real
source [Pa]. x
Pa
includes an extra, typically unknown, scale-factor if the recording was
made at another distance.
s
a
scale-factor when x
Pa
was digitally recorded to 16-bit integer format [Pa
-1
]. For the
majority of available anechoic material this factor is unknown.
h impulse response as described above
s
p
scale-factor applied at the post-processing in the PP module. The reason for this
factor is the 24-bit integer SIM-file format used by the Lake DSP convolvers. The
factor is saved in the SIM-format output-files header created by the PP module. The
SIM-file file information utility displays the value and the calibration and scaling utilities
updates it.
s
c
scale-factor applied at convolution to create 16-bit integer format. When using Lake
DSP hardware this factor is unity. When software convolution is used this value is
stored in the SCL-file with the same base-name as the processed material. The WAV-
file information utility displays this value.
7. POST-PROCESSING MODULE
243
To arrive at absolute calibration the total scaling is thus:

y ys
Pa corr
= ;
( )
s s s s
corr a p c
=
1
(7.3-2)
Where
y
Pa
is the true pressure signal at the receiver position used in the particular hall modeled
[Pa]. The playback system must then create this signal at the ears of a listener.
s
corr
is the correction scale-factor [Pa]
As can be seen from the various scale-factors above, absolute calibration may be very difficult
to achieve and requires calibrated amplifiers and well known anechoic source material.
Presently, the head-phone equalization filters applied for a binaural receiver are also not
calibrated in level.
Relative calibration for a particular anechoic source signal is, however, achievable. The
relative level variations within a hall (or across halls) can be preserved by observing the two
factors s
p
and s
c
.
Since the software convolution auto-scales for maximum dynamic range the calibration for
software convolution must be done after convolution by observing s
p
s
c
. The WAV-file
calibration and addition utilities do this automatically and, by using the corresponding SCL-
files, allows only for calibration of processed files that have exactly the same anechoic source-
file.
When using Lake DSP hardware the calibration must be done of the IRs before convolution so
that the scaling of all responses are equal.
See the post-processing flow illustration in Fig. 7.1 for an overview of both desktop/software
and Lake DSP auralization including relative calibration.
Reflection path (RP) transfer function
The prediction module calculates early part octave-band echograms (125 Hz to 16 kHz).
These echograms are saved in the ECH-file together with air absorption, reverberation time in
octave-bands and other information.
Reflection path transfer function magnitude
Depending on reflection order, two different methods for reflection path magnitude synthesis
methods are employed.
For the direct sound (if present) and first-order specular reflections
Frequency lines in-between the octave-band center-frequencies are interpolated using a cubic
spline. To assure a smooth interpolation it is made for log(magnitude) vs. log(frequency). The
interpolated function is then returned to lin(magnitude) vs. lin(frequency) and sampled at the
requested number of points (half of reflection transform-size).
The part below the lower limit of the 125 Hz octave-band (88 Hz) can be treated in two ways:
either suppression by a raised cosine bell or a flat response down to 0 Hz, see Fig. 7.3.
7. POST-PROCESSING MODULE
244
For first-order diffuse reflection and all second- and higher order reflections
Reflections are octave-band based since they originate from independent RTC tracing of each
octave-band and cannot be splined. The reflections are instead built up by digital octave-band
filters that are added together.

Fig. 7.3 Reflection path magnitude spline interpolation
Reflection path transfer function phase
Depending on reflection order, two different methods for reflection path phase synthesis
methods are employed.
For the direct sound (if present) and first-order specular reflections
A minimum phase is constructed from the magnitude using Hilbert transform relations
[Oppenheimer]:

|) ) H( | log ( = )] ( H [ arg f f H (7.3-3)
Where
H(f ) RP transfer function
arg[H(f )] RP transfer function phase (without the frequency independent linear phase
shift corresponding to the RP total delay which is accounted for separately)
|H(f )| RP transfer function magnitude
H Hilbert transform
For first-order diffuse reflection and all second- and higher order reflections
For these reflections details are not important and the phase becomes that of the linear phase
octave-band FIRs used (the filter delay is compensated for).
7. POST-PROCESSING MODULE
245
Receiver model
From the previous two sections the complete RP transfer function from the (point) source to
the (point) receiver is estimated.
Binaural
For a binaural room IR synthesis the next step is to calculate the pressure at the two ears of
an imaginary head thereby splitting the point RP transfer function into left and right ear RP
transfer functions which include the phase difference between the ears and the shadowing
effect of the head. This is done using head-related transfer functions (HRTFs).
The initial v7 HRTFs are measured at 15 elevation steps. In azimuth, measurement points
are 15 apart from 30 below to 30 above the horizontal plane (i.e. for elevation -30, -15, 0,
15, 30). For higher elevation angles (45, 60, 75) the azimuth steps are 20, 30 and 60
respectively). Impulses arriving with angles of incidence more than 30 below the horizontal
plane are assigned to the lowest sector, see Fig. 7.4.

Fig. 7.4 HRTF measurement positions
For the early part synthesis horizontal (azimuth) HRTFs are interpolated but in the vertical
(elevation) direction the closest measured angle is used.
For v8.0c HRTFs can have any resolution and full 3D interpolation is performed between
measured points. An example of the newer resolution is the ITA1_plain_44.DAT
and ITA1_plain_48.DAT libraries that are based on the same measurement as the
previous ITA0 but uses the original resolution of 5.6 horizontal and 15 vertical. The penalty
of the more general HRTF-handling is a slightly slower early part binaural post-processing.
For the late part the space surrounding the receiver is divided into seven sectors:
7. POST-PROCESSING MODULE
246
1) above the head
2) in front of the head
3) to the left and in front of the head
4) to the right and in front of the head
5) to the left and behind the head
6) to the right and behind the head
7) below the head (derived from an average of the lowest ring HRTFs)


At Full detailed (RTC) prediction the incidence distribution according to these 7 sectors is
recorded and applied when the tail is created. For each sector and late part reflection the
HRTF is selected randomly from three positions within the sector, see Fig. 7.4 and 7.5.

right side left side
front
right back left back
top
5 6
4 3
2
1

Fig. 7.5 HRTF tail sectors for sector processing, bottom not shown

The final BRIR is equalized for use with headphones depending on the settings in
File|Preferences. For further details about the headphone eq. and the HRTFs (e.g. to test or
create further HRTF libraries) check the CATT users www page (See Help|About for a link).
Mono and Blumlein/XY-stereo
For mono microphone or stereo IRs, angle dependent compensation is made according to the
directivity selected. Microphones are ideal as were they of infinitesimal size and the directivity
pattern is implemented as F( ) = Z + Xcos( ) where is the angle of incidence relative the
main axis of the microphone and where Z+X = 1 (Z and X 0). For details see [Borwick].
With mono the microphones are aimed according to the head direction selected at prediction,
with stereo the stereo pair is aimed according to the head direction.
B-format
Similarly for the 1
st
order B-format WXYZ response, microphones are ideal and perfectly
coincident where figure-of-8 types are pointing in the X, Y, and Z directions. According to the
most common B-format specification X is pointing in the head-direction, Y to the left, Z up. The
omni response (W) is by convention scaled down by a factor 1.414. With the 2
nd
order
(RSTUV) and 3
rd
order (KLMNOPQ) options the encoding is as follows:

R 3*(Z*Z - 1)
S 2*Z*X
T 2*Y*Z
U X*X - Y*Y
V 2*X*Y
K Z*(5*Z*Z-3)/2
7. POST-PROCESSING MODULE
247
L 8*X(5*Z*Z-1)/11
M 8*Y(5*Z*Z-1)/11
N Z*(X*X-Y*Y)/2
O X*Y*Z
P X*(X*X-3*Y*Y)
Q Y*(3*X*X-Y*Y)
where X, Y and Z are the 1
st
order components of an individual reflection. SIM-files created will
have _R, _S etc. added just like 1
st
order _W, _X etc. Note that PureVerb v3.2e SIM to WAV
conversion (File menu) will convert also the RSTUV and KLMNOPQ files if found for those
that want to use 2
nd
and 3
rd
order tools with WAV-format filters (no CATT tools except SIM-file
addition currently handles 2
nd
or 3
rd
order).
5-channel
5-channel is similar to B-format but microphones are typically not coincident and are of
arbitrary types. Common to all 5-channel setups is that they are left/right symmetric, the center
microphone (1/C) is pointed forward, the left microphone (2/L) is pointed forward or to the left
and that the left surround microphone (4/Ls) is pointed backwards (or backwards to the left)
and that the surround mics are placed behind LCR. The microphone configuration affects the
sound considerably and there are several different "schools". Therefore, 5-channel
auralization is not recommended for normal auralization since the microphone setup used
affects the perceived soundfield considerably but may have its uses also there (e.g. for more
informal presentations to a group of listeners). It also offers an opportunity to use the
MultiVolver for 5-channel responses created for models of actual rooms, such as e.g. well
sounding churches or concert halls, to be used for surround sound music reverberation
purposes.
Late part generation
The late part reverberation tail is based on statistical reflection generation in a simplified
version of the hall model where natural distributions or reflection path lengths and absorption
factors are sampled. For faster processing, the number of reflections are decimated (sector
processing, see Fig. 7.5) by first creating sector echograms. First the intensity from each
virtual reflection in each octave-band is added into seven sector echograms with 1 ms slot-
size. Then a reflection is synthesized for each slot in each sector. Sector processing is a
simplification based on limitations in the human auditory system and is much faster than
detailed processing of each single reflection. The result is difficult to distinguish from detailed
processing. Since there are seven late-part sectors for binaural processing, a 1 ms slot-size
can give 7000 reflections/s in the late part. Incidence angles are sampled from actual seven-
sector incidence angle distributions recorded during prediction.
This approach will approximately preserve spatial reflection distribution and reflection density
at the receiver.
The PP module optionally generates a plot-file (name_D.PLT in the same directory as the
ECH-file as selected in the Output-files dialog) showing the resulting echogram decays for
octave-bands 125 Hz to 16 kHz.
The conversion of octave-band power-based echograms to impulse responses inevitably
introduces some types of difference in the energy parameters such as T-30 and D-50. The
change is most noticeable at 125 Hz and gradually decreases up to 1 kHz where the addition
of reflections with synthesized phase in practice will give the same result as the addition of
7. POST-PROCESSING MODULE
248
power-based reflections in an echogram. From v8.0b a new procedure makes the late energy
of a synthesized impulse response correspond better to that of the prediction module at low
frequencies. However, it must be stressed that even if the correspondence between
auralized and predicted intelligibility is increased it does not mean that the prediction itself at
low frequencies is improved since when using rays and geometrical acoustics, the predictions
at low frequencies are not as good as that at mid and high frequencies so in all cases it is wise
to apply caution and never over-interpret the results at low frequencies.
Inter-Aural Cross Correlation Coefficient
IACC, the Inter-Aural Cross Correlation Coefficient, gives an estimate on the similarity
between the left and the right ear and is defined as follows [ISO][Cremer].
First, the Inter-Aural Cross Correlation Function:

( )
(


+
=
t
t
dt t h
t
t
dt t h
t
t
dt t
h
t
h
IACF
t t
r
l r l
2
1
2
2
1
2
2 / 1
2
1
2 1
) ( ) ( ) (
) (

(7.3-4)
The Inter-Aural Cross Correlation Coefficient:

max min
2 1 2 1
for ) ( max < < =
IACF
t t
IACC
t t
(7.3-5)
Where
h
l
left ear response
h
r
right ear reponse
t
1
lower integration time limit, 0 ms
t
2
upper integration time limit, 80 ms

min
lower time limit for evaluation, -1 ms

max
upper time limit for evaluation, +1ms

IACC is evaluated in octave-bands 125 Hz to 16 kHz.
IACC can be calculated from a binaural SIM-file pair and is selected from the Utilities menu
or be requested to be calculated at processing and put in the SIM-file header, see General
settings.
Crosstalk canceling filters
Crosstalk canceling enables loudspeaker listening to binaurally recorded or simulated sound.
The technique is sometimes called "transaural". The background is that when listening to a
binaural recording over loudspeakers (in a typical symmetrical stereo configuration), the left as
well as the right ear is reached by sound from both left and right speakers while for binaural
replay the left signal is supposed to be sent only to the left ear and the right signal only to the
right ear [Cooper-89], [Kotorynski-90].
Filter structure
The implementation of crosstalk cancellation is based on the "Shuffler" filter configuration:
7. POST-PROCESSING MODULE
249
1
S - A
1
S + A
Binaural without
headphone eq
For loudspeakers
L R
L R
- +
+ -
S
A A
S

Fig. 7.6 Filter structure for crosstalk cancellation, definition of S and A.
where
S is the HRTF from the left speaker to the left ear as well as (because symmetry is
assumed) from the right speaker to the right ear (S = Same side).
A is the HRTF from the left speaker to the right ear as well as (because symmetry is
assumed) from the right speaker to the left ear (A = Alternate side).
With the implementation, S and A are taken from the HRTF library currently selected in
Preferences and interpolation is used to find the HRTFs for the exact angles used in the
specified loudspeaker setup.
When dedicated crosstalk cancellation filters are created their operation are according to
Fig. 7.7 where Xt was the name given in the Crosstalk cancelling dialog. To use the setup
with a Lake DSP Huron, a 4-channel convolver has to be set up and the resulting sounds must
be added according to the figure. With software convolution it is easiest to use the MultiVolver
with a 2x2 setup.
Xt_L_L.SIM
Binaural
recording
For loudspeakers
L
L
Xt_L_R.SIM Xt_R_L.SIM
R
Xt_R_R.SIM
R
+ +

Fig. 7.7 Crosstalk cancellation of a binaural recording
Filter processing
The processing involves inverting the two filters F1=S+A and F2=S-A. Had both filters been
minimum phase except for a pure delay it would have been straightforward but that is seldom
the case. While creating the filters it is possible to simulate the listening and see how flat the
direct signals are (L to L) and (R to R) and how much the crosstalk (L to R and R to L) is
suppressed. With the exact version of the filters (Smoothing=None for both HRTFs and filters
7. POST-PROCESSING MODULE
250
F1 and F2) and with the DSP applied, the theoretical crosstalk cancellation is well sufficient
(typically >> 40 dB) and the direct signals are perfectly flat (typically within 0.1 dB). This all
assumes:
1) perfect and equal loudspeakers
2) no influence from the room
3) the listener is the one from which the S and A HRTFs have been measured
4) the listener sits exactly in the "sweet-spot" looking straight ahead
Let us examine these four points in order:
1) even high quality loudspeakers are not perfectly equal in magnitude and phase response.
The implementation has an option for individual loudspeaker correction.
2) wall reflections will be mixed with the created signals and degrades the crosstalk
cancellation ability. Correcting the room is a much tougher task than correcting the
loudspeakers.
3) this may happen but typically most users do not have their own HRTFs measured so that
they can be used for the S and A filters. The implementation interpolates from the
horizontal HRTFs to get the HRTFs for the exact angles to the loudspeakers.
4) since a static (non-adaptive) cancellation technique is applied the head must be kept inside
fractions of a wavelength (at 10kHz the wavelength is about 3 cm...). The implementation
has an option for low-pass filtering at 10 kHz to give a wider sweet-spot.
Points 3) and 4) clearly suggest that one should not use too exact filters in the implementation.
If a perfect filter is used there is a risk of audible high-frequency coloration if the head is
moved out of the sweet.spot. The implementation has several options for individual smoothing
of both the HRTFs used and of F1 and F2 (1/12-, 1/6-, 1/3 and 1/1-octave). Typically, 1/1-
octave smoothing is likely to always be too coarse and should be used only for experiments.
The smoothing is applied as follows:
HRTFs smoothing (optional):
a) a pure delay between S and A is estimated (A is always delayed in relation to S but it is
typically not a pure delay)
b) the S and A magnitudes are smoothed using the selected 1/n-octave filter.
c) minimum phase functions are created for S and A, and A is then delayed according to a)
d) the new S and A are treated as if they were the actual S and A.
Filter smoothing (optional):
a) F1=S+A and F2=S-A are created and their magnitudes are smoothed using the selected
1/n-octave filter.
b) inversion of F1 and F2 (not all implementation details are disclosed for this step)
Listening experience, discussion
A successful application of a crosstalk cancellation system, as described above, depends on
many factors. Below are some discussion points:
7. POST-PROCESSING MODULE
251
1) if the HRTFs used for the simulation do not give a good localization using headphones,
transaural will not make it better.
2) generally, it is much easier to perceive the sounds as coming from outside the head than
when using headphones. It is often easier to appreciate for someone not used to listening
in headphones.
3) the problem of headphone equalization is removed, but instead a problem of loudspeaker
and room correction appears.
4) the loudspeakers can be corrected for fairly well while the room is much more difficult to
correct for. The loudspeaker responses (to be inverted and used as correction filters)
should ideally be measured at the listening position (because of cabinet diffraction effects).
When measuring loudspeakers it is best to average over a head-sized volume around the
sweet-spot in an anechoic room (or large enough room if MLS or similar is used) and to
smooth the high frequencies. Also don't try to correct for too low frequencies or the
loudspeakers may suffer.
5) basic requirements on the room are:
as absorbent as possible and with a non-colored sound;
symmetrical room with symmetrical loudspeaker placements relative the room
either soffit-mounted loudspeakers or speakers placed not too close to the walls.
Nevertheless, good results may sometimes be achieved in normal rooms e.g. for demo
purposes. Even if the crosstalk cancellation technique is associated with some
problems it is very well worth exploring!
7. POST-PROCESSING MODULE
252
8. SEQUENCE PROCESSING MODULE
253
8. SEQUENCE PROCESSING MODULE
This module can handle and perform a sequence of processing steps such as the complete
sequence from prediction over post-processing, convolution to WAV-file calibration.

The module uses only the File menu with obvious actions on SEQ-files. File|Insert Sequence
|Before/After Current Step will open an existing sequence and insert its contents before or
after the currently selected step in the list. This will e.g. enable having one sequence for
prediction, one for post-processing and one for convolution and then eventually make a
complete prediction -> post-processing -> convolution sequence by inserting the three lists
into a new list.
When Save and Run from top is pressed the current sequence-file is saved and the steps are
performed in sequence. If Save and Run from current is pressed the processing instead starts
from the currently selected step (note that any defined variables will be known also if they are
defined before the currently selected step).
Before the processing starts, the Prediction and Post-processing module dialogs are
automatically closed and any non-saved settings-files are prompted for to be saved. If
warnings are on, they are ignored or it may halt the sequence waiting for a response. No plot-
files will be shown automatically by the view-module, but have to be viewed after the sequence
has completed one by one using the View module's File|Open or the complete plot-file list
using List|Open and selecting the appropriate PLT_FULL.TXT (e.g.) or POSTPLT.TXT plot-
file lists. To view finished plot-files before a sequence is completed, use the stand-alone PLT-
file viewer.
The error-handling options (ignore, prompt, abort) are to be set according to the dependencies
in the sequence. For example, if step 1 is prediction and step 2 is post-processing of the
results from step 1, an error in the prediction should abort the sequence, while an error in
post-processing of one ECH-file does not effect a subsequent post-processing or prediction.
If a running step is aborted (using the Processing dialog Stop button) a prompt is displayed
with an option to continue or abort the sequence.
8. SEQUENCE PROCESSING MODULE
254
When reasonable, file-names are checked for existence (e.g. prediction PRD-files, post-
processing PST-files, and anechoic WAV-files) but in many cases a file used in a later step
may have been created in a previous step (e.g. ECH-files or SIM-files). In such cases only the
folder is checked for existence.
Add VARIABLE...
Displays a dialog where string variables can be defined (variables have no use for error
actions). A new entry in the list is created.

String variables can be used to create generic sequences that can be re-used. An
example (here shown as text):

VARIABLE -i PATH | c:\halls\theater1
Prediction -a <PATH>\calc.PRD
Post-processing -i <PATH>\E_A0_01.ECH <PATH>\catt.PST
VARIABLE -i PATH | c:\halls\theater2
Prediction -a <PATH>\calc.PRD
VARIABLE -i SS | A0
Post-processing -i <PATH>\E_<SS>_01.ECH <PATH>\catt.PST
Post-processing -i <PATH>\E_<SS>_02.ECH <PATH>\catt.PST
Post-processing -i <PATH>\E_<SS>_03.ECH <PATH>\catt.PST
From the above can be seen that when a variable is used it is added like <variable_name>
and a variable can also be given a new value in a later step. The actual variable strings are not
resolved until the sequence is run. Strings and variable names can have up to 256 characters
and use all but the < > characters.
8. SEQUENCE PROCESSING MODULE
255
Add REPEAT...
Displays a dialog where a repeat step can be defined. A new entry in the list is created.

The Variable name will be expanded to two characters if the name length is 2 (e.g. RR typically
for receivers ids <RR> : 01, 02, 03 etc.) but to one character if the name length is 1 (e.g. S
typically used with source ids A<S> : A0, A1, A2 etc). An example:
REPEAT 8 RR 10 1
Post-processing C:\TEMP\E_A0_<RR>.ECH C:\bin.PST
Will perform the same as:
Post-processing C:\TEMP\E_A0_10.ECH C:\bin.PST
Post-processing C:\TEMP\E_A0_11.ECH C:\bin.PST
Post-processing C:\TEMP\E_A0_12.ECH C:\bin.PST
Post-processing C:\TEMP\E_A0_13.ECH C:\bin.PST
Post-processing C:\TEMP\E_A0_14.ECH C:\bin.PST
Post-processing C:\TEMP\E_A0_15.ECH C:\bin.PST
Post-processing C:\TEMP\E_A0_16.ECH C:\bin.PST
Post-processing C:\TEMP\E_A0_17.ECH C:\bin.PST
For general counting up to 999 using a length of 3 will expand to 000, 001,..., 999.
8. SEQUENCE PROCESSING MODULE
256
Add REPEAT SxR
Displays a dialog where a different, non-sequential, type of repeat can be defined. A new entry
in the list is created.


REPEAT SxR takes a source id variable with a list of source-ids, a receiver id variable with a
list or receiver-ids and loops through all combinations of source and receiver ids given. This is
especially useful in cases where both many sources and many receivers are used, or when
source or receiver numbering is not sequential. It is us used the same way as REPEAT so that
if the sub-sequent step is Post-processing or Convolution the source and receiver variables
are expanded to create the file names desired, such as E_<SS>_<RR>.ECH. The list of
source and receiver ids can be comma or space separated and for source ids constructs like:
A* (meaning A0, A1, ..., A9) can be used and for receiver ids: 2* (meaning 20, 21, ..., 29). To
include all receivers 0..9 use 0*. The following REPEAT SxR

REPEAT-SxR SS A0 A1 RR 1 23
Post-processing C:\TEMP\E_<SS>_<RR>.ECH C:\BIN.PST

will perform the same as:

Post-processing C:\TEMP\E_A0_01.ECH C:\BIN.PST
Post-processing C:\TEMP\E_A0_23.ECH C:\BIN.PST
Post-processing C:\TEMP\E_A1_01.ECH C:\BIN.PST
Post-processing C:\TEMP\E_A1_23.ECH C:\BIN.PST
8. SEQUENCE PROCESSING MODULE
257
Prediction... (Add processing steps)
Displays a dialog allowing for a prediction PRD-file to be selected. A new entry in the list is
created.


The Exec command item offers an opportunity to run a program or a script after each
prediction, the sequence does not continue until the program/script is finished:
(NONE) (or an empty field) no program or script is run.
exec_matlab("[path]","script")

executes a [MATLAB] script, if MATLAB is not running it is started automatically.
The first argument can give an optional path and an addpath command is sent
before the MATLAB script is called so that an m-file given in script can be found
(if not given, only m-files in the MATLAB startup path will be found). Note: a new
MATLAB session is started so any variables have to be saved to be available next
time. Examples:
exec_matlab("","a = optimizeRT")
exec_matlab("c:\mfiles","a = optimizeRT")
The results of the MATLAB script (if any) will be displayed in the *DEBUG* window.
Note: the purpose of this exec_matlab is to calculate only, see more below, and
no MATLAB graphics can be displayed.
Example of a script (that does nothing useful) assumed to be
c:\mfiles\testexec.m:

function [a] = testexec(b)
a = b + 2;
return
This script would be called like:

exec_matlab("c:\mfiles","a = testexec(2)")

and the result is shown in the *DEBUG* window: "exec_matlab_result: 4"
8. SEQUENCE PROCESSING MODULE
258
exec_winexe("exe","options")

executes a Win32 application (.EXE), the full path must be included in exe. Any
command-line options the executable offers can be given in options. Examples:

exec_winexe("c:\progs\optimize.exe","-tolerance:2")
exec_winexe("c:\catt_v8\cattplt32.exe","c:\out\RT_A0.PLT")
were the latter simply will display a result PLT-file in the standalone PLT-viewer
and when the viewer is closed the sequence continues.
exec_winexe("COMMAND","cmd")

executes cmd as if entered at a command prompt. Examples:

exec_winexe("COMMAND","dir c:\temp\*.PLT /p")
exec_winexe("COMMAND","c:\progs\renameplts.bat")
exec_rexx("[path]","script_with_options")

executes a Rexx script (http://www.oorexx.org) assuming Rexx is installed. It
performs the same action as if:

> rexx script_with_options

had been entered at a command prompt. If path is given it will be made current
folder before the Rexx script is run.
An example of a Rexx script (that does nothing useful) assumed to be
c:\scripts\testexec.rex:

say 'Please enter your name.' /* Display a message */
pull name /* Read response */
say 'Hello' name /* Display greeting */
exit 0 /* Exit with a return code of 0 */
This script would be called like:

exec_rexx("c:\scripts","testexec.rex")

Further script languages may be added in future versions.
General exec interface notes and tips
The basic idea with the exec interface is that a Prediction step can be run in a REPEAT loop
so that after each prediction the given program or script is run and reads the latest results,
rewrites a part of the geometry-, source- or receiver-files based on some criteria, and then a
new calculation is started. A function can optionally return a result indicating if the Sequence
can be stopped or not. At each step a function can also save the settings and selected results
to give a history of the optimization. Examples of changes are: absorption and scattering
coefficients, reflector angles, source aim, etc. Most practical is to gather the variable settings
in a separate small GEO-file that acts as Master-file and that INCLUDEs the remaining
geometry.
The results for each run can be read from the output text-files such as PARAM_ss.TXT or
PARAM_ssX.TXT but there is a risk that the format of these files will change between
versions. Better is to, via a hidden option, select that Full detailed calculation will save all its
prediction results also in binary MATLAB v4 format file (PARAM_ss.MAT). This file can be read
from MATLAB with one command. The v4 format is simple to read also from an EXE program,
8. SEQUENCE PROCESSING MODULE
259
contact CATT for details on the format.
Since diffuse reflection is handled with a stochastic process no two runs will give identical
results even if no input data is changed. This means that criteria must not be set too tight but
with reasonable margins. A typical example would be to aim for a T-30 that is in a range say
1.5-1.7 rather than to aim for a T-30 = 1.6.
The acoustic properties of a room has many degrees of freedom which means that
optimization can be very difficult. Cases with the best prognosis are those where just a few
parameters are changed.
Variables can be used in the strings passed to the exec_ functions and will be expanded
before calling.
It is not necessary to always use an advanced optimization algorithm, the exec interface can
also be used simply to run through a set of values for one or more settings and afterwards
inspect the results and choose one of the combinations.
Inside a function or script main results can either be stored in a file that is updated each run or
the script can issue some system calls to rename results files or complete folders so that all
results can be inspected afterwards.
The exec_winexe example above calling the PLT-viewer can be used to manually alter
some values. After the results have been viewed CATT-Edit can be used to change e.g. an
absorption coefficient for another run.
Post-processing... (Add processing steps)
Displays a dialog allowing for a post-processing PST-file and an echogram ECH-file to be
selected. A new entry in the list is created. Note: When post-proc. using a PST-file for CATT-
Walker CWI-generation no ECH-file needs to be selected, enter (NONE).


Mono (Convolution) (Add processing steps)
Displays a dialog allowing for an anechoic mono WAV-file, left and right binaural impulse
response SIM-files (created by the Post-processing module) and a desired WAV-file to be
created. If (NONE) is entered instead of the right SIM-file, mono convolution is performed of
the left SIM-file with the anechoic WAV-file. A new entry in the list is created.
8. SEQUENCE PROCESSING MODULE
260

Left/Right/R+L Mix... (Convolution) (Add processing steps)
Similar to the one above but instead a stereo anechoic file is entered and either the left, the
right or a left+right mix is used as the input to the convolver.
WAV-calibration... (Add processing steps)
Displays a dialog allowing for a WAV-file to be selected as a template for calibration. A new
entry in the list is created.

8. SEQUENCE PROCESSING MODULE
261
X-talk cancel... (Add processing steps)
Displays a dialog allowing crosstalk cancellation of responses based on the latest saved
settings (in Post-processing:Utilities|Crosstalk Canceling). A new entry in the list is created.

Headphone eq... (Add processing steps)
Displays a dialog allowing for a headphone filter and a left or right SIM-file to be selected (both
left and right files are filtered). A new entry in the list is created.

This is a streamlined version of the more general SIM-file filtering utility. The created files will
automatically be renamed by changing the first letter in the name to "P" (Phones) unless the
letter is "H". If the names start with "H" it is likely that the files have come from a HeadScape
file generation and HeadScape can only read files with a fixed syntax starting with H. If the
original, non-filtered, files are to be kept they must be duplicated in another folder before
processing.
SIM-file addition... (Add processing steps)
Displays a dialog allowing for SIM-file addition of a large number of SIM-files in one step.
Unlike when using the Utilities dialog for addition, the sequence method does not allow for
change of gain or delay but uses the original ones.
8. SEQUENCE PROCESSING MODULE
262

The Template SIM-file selected determines that receiver used (01 in the example above), the
folder and the addition compatibility. SIM-files based on the Source ids given will be used for
addition. Source ids can be space or comma separated and B* means all B sources. In the
example above the following SIM-files in C:\TEMP\OUT would be added: E_A0_01, E_A1_01
and E_B0_01, E_B1_01, E_B2_01, E_B3_01, E_B4_01, E_B5_01, E_B6_01, E_B7_01,
E_B8_01, E_B9_01.
Delete / Edit
Deletes / Edits the selected entry.
Clone...
Clones the currently selected entry and loads it for editing. If OK is pressed after editing, the
new entry is inserted after the current one. This is a handy way to add e.g. several sequential
post-processing steps where only the ECH-file differs with a receiver id, or several sequential
convolutions where SIM-file and output WAV-file names differ only slightly.
Move up / Move down
Moves the selected entry one step up or down in the sequence.

9. CATT EDITOR
263
9. CATT EDITOR
The CATT editor CATT-Edit (CATTED32.EXE) is essentially an enhanced Notepad clone that
also offers search/replace, font selection, a Templates menu to insert various geometry-file
templates, a GEO-file syntax reference, and an interface to the main help-file.
Being a Notepad clone the editor suffers from similar limitations in file sizes it can handle
under Windows 95/98/ME. The maximum file size is then typically 64 kB but for NT/2000/XP
the limit is set to 1 MB. 64 kB may seem like a severe limitation, but the way the geometry-file
format is organized it is bad practice to put all the data in one file. Better to divide it in logical
parts and use the INCLUDE directive. It is only when a large file has been created by the
AutoCAD interface that the geometry is described in a large single block and another editor
must be used. But even then it is quite easy to divide the file into parts (e.g. corners in the
master-file and planes in an included file) so that CATT-Edit can be used. The geometry
check debug-file DEBUG.TXT may often be > 64 kB but may be made smaller by omitting
some information such as the long list of plane data and/or corners only leaving the error
checks.
Instances of CATT-Edit and the main program communicates so that files can only be opened
and edited in one instance of the editor. If a file that already is edited is selected for editing,
the editor containing the file is moved to the front instead of loading a new instance of the
editor. The communication works both when an editor is loaded from the main program and if
it is loaded from e.g. Explorer.
Similarly, if a file that is needed for a prediction (e.g. a GEO-file) is loaded in an instance of the
editor without having been saved, the editor is moved to the front of other windows and a
prompt is presented with a Yes/No/Cancel choice. Yes saves the file before proceeding, No
proceeds without saving (i.e. uses the previous version on disk), and Cancel aborts the
processing.
Tab stops are initially set at every 5 average character widths of the selected font.
9.1 Non-standard menus
File|Convert to ANSI
The editor allows for character set conversion so that files created by a DOS editor using the
MS-DOS character set can be converted to the Windows ANSI set.
Edit|Goto Line Number
For some geometry-file errors, the prediction module gives the error line number. This menu
can be used to go directly to that line. The current line is displayed in the status-bar.
Character|Font
By default the editor uses the font and font size that is selected in the main program
File|Preferences.
Character|Reduce/Enlarge Font
Reduces or enlarges the font used.
9. CATT EDITOR
264
Character|Increase/Decrease TAB-width
Increases or decreases the TAB-width by one average character.
Template|
Place the cursor where e.g. a plane definition template (Plane [..) is wanted and select the
corresponding menu item. The template will be created and the cursor is placed at a logical
starting-position. Only functions with complex and/or hard-to-remember syntax have
templates. For other commands see Help|Syntax below.
Template|ABS Exchange
Inserts a record template for the CATT absorption library exchange file format. Useful if some
data is entered directly in a text-file that can be imported, see Section 3.1
Template|RGB Color
Inserts, after visual color selection, an RGB triple (e.g. {255 0 0} for pure red) to be used in
GEO-files.
Template|loop(), recloop(), recloop2(), recwalk()
Inserts loop and similar templates.
Template|Markers>
Inserts various marker templates.
Template|Source>
Inserts various source syntax templates.
Help|Help...
Loads the main help-file and displays the Prediction input-files topic.
Help|GEO/LOC Syntax...
Displays a dialog with short syntax descriptions for GEO-, source- and receiver-file directives
and tools. This dialog can stay open while editing.
Help|Marker Syntax...
Displays a dialog with short syntax descriptions for Markers (visual non-acoustical elements in
the optional GEO-file MARKERS section see Section 2.3). This dialog can stay open while
editing.

10. AUTOCAD INTERFACE
265
10. AutoCAD INTERFACE
10.1 Introduction
The direct AutoCAD interface for CATT-Acoustic consists of a set of AutoLISP procedures
that create commands to be used within AutoCAD. These procedures then translates and
writes a specific layer of an AutoCAD drawing to the CATT format. The manual describes v3.2
of the interface.
To enable conversion in the opposite direction, the Prediction module can create an
intermediate file that can be imported into AutoCAD by the interface. The conversion is carried
out at the Prediction module menu selection File|Export Geometry To|AutoCAD interface
CAD see Section 2.1.
The interface allows for the complete geometry to be modeled inside AutoCAD including all
surface planes (including correct normal definition), sources (position, aim, directivity, and
Lp1m), receiver positions, plane names, and absorption names. The interface then writes a
geometry-file, a source-, and a receiver-file with selected names. After that process, only
some minor editing of absorption data in the GEO-file remains. It is, however, strongly
recommended to create a CATT debug list-file and a PLINFO.PLT plot-file to check the
model.
The interface requires the full 3D version of AutoCAD (release 11 or later). This documen-
tation naturally assumes that users have a basic understanding of the operation of AutoCAD.
The interface was originally written by Advanced Engineering Computations (AEC),
Gothenburg, Sweden and then gradually enhanced.
As an alternative to using the AutoLISP interface the external CATT tool DXF2GEO (see
File|External CATT Tool menu) can be used to convert from DXF to GEO. DXF2GEO
comes with its own help-file but many of the discussions here about making models in
AutoCAD apply for DXF as well. In addition 3
rd
party tools to use other CAD programs such as
SkecthUp may be available, see the users page (see Help|About for a direct link).
Direct creation of a model in AutoCAD
For users that already know AutoCAD well, this is a straightforward approach potentially
speeding up the modeling process considerably. This approach will not have any adverse
effects when it comes to how appropriate the model will be for acoustic prediction using
geometrical acoustics.
The main difference between direct modeling in the CATT GEO-file format is that the model
typically will consist of more planes thus making it appear more cluttered and make
predictions somewhat slower. The reason for this is that the AutoCAD "3DFACE" element can
have 3 or 4 vertices only while the GEO-file format allows for an unlimited number of plane
vertices (corners). If the geometry is OK and no further re-import into AutoCAD is planned
some surfaces, if desired, planes can be merged after import using File|Export Geometry
To|Merged Planes GEO-file.
If no alterations of the GEO-file created are made, a re-import of the files via the intermediate
CAD-format should result in a model identical to the one that was exported.
10. AUTOCAD INTERFACE
266
Modification of an existing drawing in AutoCAD format
To use an already existing AutoCAD drawing, e.g. provided by an architect, is potentially the
most time-saving approach to modeling. It is also, however, associated with the greatest risks
when it comes to how appropriate the model may be for room acoustic prediction based on
geometrical acoustics. In most cases the original model needs to be simplified so that too
small surfaces are removed and replaced by a frequency dependent scattering coefficient. For
example, if audience chairs are individually modeled, they should be removed and replaced by
a walled-in audience surface with appropriate absorption and scattering coefficients.
Import of an existing model in the CATT format
In addition to re-importing models originally created in AutoCAD as discussed above, it may
be interesting to import an existing model in the GEO-file format to render the model. Another
example is when the structured GEO-file format has been selected because its features and
possibilities for parametrical modeling using equations etc.
If a model is created in GEO-file format directly without any thoughts of how AutoCAD handles
surfaces, some features cannot be completely transported to AutoCAD. Examples of such
features are planes that are subdivided into parts with different absorption, concave planes
with many corners (due to an apparent bug in at least AutoCAD release 12 for Windows,
these may not be handled well). Planes with hard-to-translate features are marked so that they
can be checked and taken care of manually inside AutoCAD, see below.
To create a file that can be imported in AutoCAD, the Prediction module menu item
File|Export to CAD is selected. The current settings are inspected but only a few of them are
actually used for the export: Output and Input folders, the Master-file, the Receiver-file, the
Source-file, sources and receivers used, and Plane use settings. The created CAD-file
contains geometry, source-, and receiver data in an easy-to-parse text format. Even if features
in the GEO-file format, such as e.g. equations, have been used, the CAD-file contains only
numbers, the unit is always meter and decimal point is always used.
The format of a CAD-file is:

comments
... (more comments)
%SURFACEPROPERTIES
optional section when exporting for other uses than with the AutoCAD interface, see section
2.1 and File|Export Geometry To|AutoCAD Interface CAD
...
%CORNERS
co_id co_x co_y co_z
... (more corners)
%PLANES
pl_id / pl_name / pl_absname
co_id1 co_id2 ... co_idN
... (more planes)
%SOURCES
s_id s_dirname:dirtype delay (e.g. A0 HORN12:SD1 20)
s_x s_y s_z
s_aim_x s_aim_y s_aim_z s_roll
L125 L250 L500 L1k L2k L4k : L8k L16k
... (more sources)
%RECEIVERS
r_id r_x r_y r_z
... (more receivers)
%EOF
10. AUTOCAD INTERFACE
267
Example:

CATT-Acoustic v8.0a, Copyright CATT 1988-2002
CATT project to intermediate AutoCAD-format conversion (for >= v7.0)
PROJECT=v8 Shoebox
Note 1: plane sub-divisions are not written. Instead the full plane
is written with abs #DIVIDED. Sub-divisions currently have
to be handled as separate planes in AutoCAD.
Note 2: Concave planes (with reentrant angles) are problematic to handle
inside AutoCAD. Such planes are written with a # inserted as
the first character in the absorption name.
Note 3: abs/diff properties that are entered directly in a plane
(Example: [1 floor / 1 2 3 4 / <8 7 6 5 4 3> ]) are assigned
a dummy name starting with ## and then a number. Use names!
Note 4: From 1, 2 and 3: all abs names starting with # need to be fixed!
They can be transferred to a layer CATT_FIX with the command
MARKFIX so that they can be taken care of. This will
seldom be required for models originally created in AutoCAD.
Note 5: All coordinate values are in meter.
Note 6: The directivity name is set as name:type (e.g. SINGER:SD0).
Note 7: The optional delay is always written (0.0 if not used).
Note 8: The optional source roll is always written (0.0 if not used).
Note 9: The optional 8k and 16k source Lp1m values are always written.

%CORNERS

1 -5.000 0.000 0.000
2 -5.000 24.000 0.000
3 5.000 24.000 0.000
4 5.000 0.000 0.000
11 -5.000 0.000 8.000
12 -5.000 24.000 8.000
13 5.000 24.000 8.000
14 5.000 0.000 8.000

%PLANES

1 /floor/ AUDIENCE
4 3 2 1
2 /ceiling/ WOOD
11 12 13 14
3 /stage wall/ WOOD
1 11 14 4
4 /rear wall/ WOOD
3 13 12 2
5 /left wall/ WOOD
2 12 11 1
6 /right wall/ WOOD
4 14 13 3

%SOURCES

A0 OMNI:SD0 0.00
1.000 1.700 1.700
1.000 3.700 1.700 0.000
70.0 73.0 76.0 79.0 82.0 95.0 : 95.0 95.0

%RECEIVERS

1 -3.000 20.000 1.300
2 3.000 20.000 1.300

%EOF
Absorption names for planes that could not be translated, and therefore have to be checked,
are marked by a pre-pended # character. #DIVIDED means that the plane was divided in
sub-planes and need to be manually fixed in AutoCAD. ##NNNN where NNNN is a number
means that the absorption was entered with numbers directly instead of an absorption name.
#ABSNAME where ABSNAME is an absorption name means that the plane has been concave
10. AUTOCAD INTERFACE
268
and needs to be checked inside AutoCAD (the AutoCAD bug mentioned above may have
created the set of 3DFACEs to represent the plane in a manner that is not correct). All planes
that have absorption names prefixed with # can be marked by the provided AutoCAD
command MARKFIX so that they can be taken care of.
Basic interface concepts
The AutoCAD interface handles 3D elements of the types 3DFACE and 3DMESH. 3DMESH
surfaces must be converted to 3DFACEs by the provided command CONV and plane and
absorption names must be set. If desired, planes can be merged after import using the
Prediction File|Export Geometry To|Merged Planes GEO-file.
The interface works with three layers: CATT_MAIN, CATT_FIX, and CATT_TMP. When
importing or exporting data the layer CATT_MAIN is used. CATT_FIX is used for planes that
need to be "fixed" after import i.e. those whose absorption names start with #. CATT_TMP is
for internal use.
Generally, the interface does not perform extensive syntax check on e.g. valid source
directivity or absorption names. This check is instead performed when the exported files are
read by the Prediction module. Such errors are typically easily spotted and can be corrected
with the editor.
AutoCAD allows for the Space bar to act as Enter. The interface supports this except for when
plane names and Lp1m values for the source are entered since they typically contain spaces.
10.2 Installation
The procedure below describes v3.2 of the interface.
The interface AutoLISP files (*.LSP) and predefined symbols (*.DWG) must be placed in a
single folder. At installation they are placed in the CATT-folder ACAD.
Start AutoCAD and load the AutoLISP command:
(LOAD: "CATT-folder/ACAD/CA_LOAD")
Note: AutoCAD uses "/" or "\\" internally in path names.
A perhaps more convenient alternative to the AutoLISP (LOAD ... ) command to load the
interface command-set is to use the APPLOAD command giving a dialog to select the LSP-file
to load.
When the interface is run it will also ask for the location of the interface files. For frequent
users of the interface it can be convenient to put this line in the acad.lsp file run at startup and
no folder have to be selected:
(SETENV "CaPath" ACAD-folder)
where ACAD-folder is the location of the interface files including ending / or \\.
10.3 AutoLISP commands
Below is a list of the AutoLISP commands provided. Generally these commands work as any
10. AUTOCAD INTERFACE
269
other AutoCAD commands in the sense that, for example, coordinates may be entered either
by clicking with the mouse or by entering numbers at the command prompt. They can also act
on a group of faces selected by the mouse.
SETCATTSCALE Sets or changes the unit and the scale for the drawing to be converted. This
command must be used before any of the commands EXP, IMP, SRC, REC,
CHDIRECT, or SHDIRECT can be used. If not, an error message will notify
the user. With decimal units the scale is set so that numbers in the created
GEO-file have the same magnitudes as those used inside AutoCAD. This is
accomplished by the GEO-file directive SCALE.
CATTSCALE Displays current CATT unit and scale.
DRAW Draws 3DFACEs in normal AutoCAD manner. This is just a replicate of the
normal AutoCAD 3DFACE drawing command.
PUT Puts plane and absorption names on currently selected 3DFACEs and
moves them from the current layer to the CATT_MAIN layer.
GET Gets and shows plane and absorption name on currently selected
3DFACEs.
CONV Converts a 3DMESH to 3DFACEs (i.e. explodes the mesh). Sets plane and
absorption names on the created 3DFACEs and moves them from the
current layer to the CATT_MAIN layer.
SRC Inserts a source in the drawing. Asks for source id, position coordinate, aim
coordinate, source name (i.e. directivity), and Lp1m_a values. The source
type is assumed electro-acoustic and Gain_a is set to < 0 >.
CATTSCALE must be set before SRC is used.
CHSRCPOS Changes the source position. For an old DRW-file made using v2 of the
interface, the source has to be removed and entered again to make this
command work (an old source will export well but the position cannot be
changed with this command).
CHSRCAIM Changes the source aim point. For an old DRW-file made using v2 of the
interface, the source has to be removed and entered again to make this
command work (an old source will export well but the aim cannot be
changed with this command).
REC Inserts a receiver in the drawing. Asks for receiver id and position
coordinate. CATTSCALE must be set before REC is used.
EXP Exports all 3DFACEs, sources, and receivers on the layer CATT_MAIN to
selected source, receiver, and GEO-files. If the model contains many
surfaces the process may take a couple of minutes. If no sources or
receivers have been positioned (using SRC and REC), the corresponding files
will not be created. If name and absorption names have not been set on
some faces, default values are set so that, when the files are read by the
prediction module, they have a valid format. The interface declares all
absorption names used in the model in the directives section of the created
GEO-file. Some minor editing is then required to add actual numeric values
for absorption and diffusion factors. If, however, the material is in the
Surface properties library the corresponding declaration can simply be
deleted or commented out. If all absorption names have not been given
inside AutoCAD, it has to be corrected for by substituting the default
absorption for a real one. CATTSCALE must be set before EXP is used.
If desired, planes can be merged after import using the Prediction
10. AUTOCAD INTERFACE
270
File|Export Geometry To|Merged Planes GEO-file.
IMP Imports to the layer CATT_MAIN geometry from the intermediate CAD-file
format created by the prediction File|Export to CAD menu selection.
3DFACEs are created for all planes thereby splitting surfaces with more than
4 corners. All imported planes that need manual attention have an
absorption name starting with #. These faces can be moved to the layer
CATT_FIX by the command MARKFIX. CATTSCALE must be set before
IMP is used.
MARKFIX Marks 3DFACEs that need to be fixed. MARKFIX should be used after IMP.
All 3DFACEs with an absorption name starting with # are moved to the layer
CATT_FIX. If, after export, some absorption names still start with #, the
prediction module will issue a syntax error pointing out the problem plane
definition.
UNMARKFIX Unmarks selected and fixed 3DFACEs and moves them from CATT_FIX to
CATT_MAIN. To be used when faces have been corrected after import.
SHDIV Shows division of a surface. After import planes with many corners have
been subdivided into planes with 3-4 corners. This command shows the
division lines. In many cases a more logical, and visually more pleasing,
division may be created manually. SHDIV is actually just a toggle on/off of
the AutoCAD system variable SPLFRAME.
HIDEDIV Hide division of a surface.
SHDIRECT Shows direction of plane normals on selected faces. The normal direction is
shown indirectly by the absorption name in 3D text on a hashed surface. If
the text can be read normally the face is viewed from its reflecting side, if the
text is mirrored the face is viewed from its back side. The text and the hash
pattern is located on the CATT_TMP layer and is never exported.
CATTSCALE must be set before SHDIRECT is used.
SHR A simpler version of SHDIRECT only showing the letter "R" on selected
surfaces. If R can be read correctly (i.e. not mirrored) the plane is viewed
from its Reflecting side. The R symbols are removed with SHDIRECT. After
a surface is DRAWn, a SHR command is automatically issued made for the
newly created surfaces.
DELSHDIRECT Removes "Show direction" of plane normals on selected faces.
CHDIRECT Change direction of plane normals on selected faces. Also performs
DELSHDIRECT on not selected surfaces. CATTSCALE must be set before
CHDIRECT is used.
The AutoCAD command DDATTE can be used to display source data (type DDATTE and Enter
and then click on the source). The AutoCAD commands MOVE and STRETCH can be used to
manipulate a source pos-aim group (requires that the source is created in v3 of the interface).
10. AUTOCAD INTERFACE
271
10.4 Modeling tips
If only half of a symmetrical model is created in AutoCAD the MIRROR GEO-file directive can
be added to the created GEO-file and maybe also a smaller number of bridging planes may be
needed to be created "manually" but all corners would already be defined.
When selecting planes it is often difficult to select the edge of the plane one wants (the
neighbour plane gets selected instead). For this a standard AutoCAD feature can be used:
Press and hold the Ctrl key while Left button clicking on the edge and the objects with the
common edge will alternate.
10. AUTOCAD INTERFACE
272
11. TUTORIAL
273
11. TUTORIAL
This section describes one way to model a hall using CATT-Acoustic v8.0. Since it is a tutorial,
most tools provided by the software are exemplified (except Markers since they are easy to
use once the GEO-file concept is understood). The GEO-format is very flexible and several
different procedures can be followed when modeling a hall. Even when preferring to create the
geometry in a CAD program (see section 10) there are many useful features in the GEO-
format that can be applied after export to GEO. All steps from modeling to prediction, source
addition, post-processing and convolution are exemplified.
The tutorial was installed in the CATTDATA-folder MODELS\TUTORIAL. It contains three
ready-made geometry-files, a source-file, a receiver-file, and a basic Prediction settings-file:
MASTSTEP.GEO contains the complete geometry and each tutorial step can be selected by
setting a constant STEP, at a screen prompt, to the value 1 to 6 corre-
sponding to the tutorial steps.
MASTFULL.GEO contains the complete geometry where each tutorial step is commented.
REFLECT.GEO defines the reflectors used in step 6.
SRC.LOC is the source-file.
REC.LOC is the receiver-file.
GEO.PRD is a Prediction settings-file.
MASTFULL.GEO, SRC.LOC, and REC.LOC can also be seen in Appendix A.
Note that the help-file version of the tutorial actually includes most essential plot-files created
so that the whole tutorial can be initially "run" inside the help-file.
11.1 Preparation
Before one starts entering the actual data for a new hall, it is useful to draw a simple 3D
outline of the hall, at last for the initial planes to be created. As the model progresses one can
instead use plots generated by the software. If the hall to be modeled already exists and is
going to be renovated it is extremely valuable with photos from the hall since drawings are not
always accurate, up to date and/or may be difficult to interpret. Photos are also of great help
when deciding on surface properties.
11.2 Modeling
The steps involved in a new project are: Create a new project, create the geometry, and finally
perform the prediction. If desired, then also Source addition and/or Post-processing for
auralization can be performed.
Start CATT-Acoustic. The Prediction module is initially open and active. The View module is
also open but no plot-file is loaded.
When creating a new project from scratch (but not here in the tutorial) the following steps
must be performed. First select Utilities|Create a New Project.
11. TUTORIAL
274

Enter a project folder and a project name for
reference. If the specified folder does not exist it
will be created. The Browse button also allows for
creating a folder.
For a new project, files such as those below are
created in the project folder when OK is pressed.

MASTER.GEO (template master-file for the geometry):

;MASTER.GEO
;PROJECT:Sample project
;INCLUDE
;ABS absname = <10 10 10 10 10 10> ;L <10 10 10 10 10 10>
CORNERS
;id x y z
PLANES
;[id name / / absname ]
;[id name / / (a / / a_abs) (b / / b_abs) ]
SRC.LOC (template source location and data file):

;PROJECT= Sample project
SOURCEDEFS
; a natural source
;id position directivity aim-position [roll]
A0 0.0 3.0 1.7 OMNI 0.0 5.0 1.7
Lp1m_a = Lp_white 94 ; white spectrum, 94 dB at 1kHz
; an electro-acoustical source (syntax 1 specifying Gain_a)
B0 -2.0 3.0 3.7 Catt.SD0 0.0 7.0 1.7
Lp1m_a = Lp_voice_normal
Gain_a = <20 20 20 20 20 20> ; calculates Lp1m_ea
Delay_e = 0
; an electro-acoustical source (syntax 2 specifying Lp1m_ea)
B1 2.0 3.0 3.7 Catt.SD0 0.0 7.0 1.7
Lp1m_a = Lp_voice_normal
Lp1m_ea = <75 80 82 85 88 88> ; at 1m on source axis
Delay_e = 0
REC.LOC (template receiver location file):

;REC.LOC
;PROJECT: Sample project
RECEIVERS
1 0.0 10.0 3.0
PROJECT.TXT (optionally to be used for project log):

Project: Sample project
Sign. :
Date :
Log :
A basic prediction settings-file GEO.PRD is also created prepared for geometry check.
For a new project these data-files must then be filled in using the editor, exported via the
AutoCAD interface, via DXF2GEO or a modeling plugin. In this tutorial however, a
CATTDATA-folder MODELS\TUTORIAL is already created and all project files already exist. In
the rest of the tutorial the geometry data does not have to be entered. Just read the
paragraphs, make changes to the settings-files as described, run the Prediction, enter the
appropriate STEP value when prompted and view the various plot- and result-files created.
11. TUTORIAL
275
Select File|Open Settings and select CATTDATA-folder MODELS\TUTORIAL\GEO.PRD.
The PRD-file uses a shortcut for Input and Output folder in the General settings dialog where
"." means the same folder where the PRD resides, in other cases it may be chosen to enter
absolute paths here.
Check that Master-file is set to MASTSTEP.GEO. This master GEO-file contains the complete
tutorial geometry and later when Save and Run is pressed, STEP = 1, 2, 3, 4, 5 or 6 can be
selected at the pop-up dialog corresponding to the steps described in this tutorial.
Browse through the rest of the settings but leave them as they are for now.
Press OK and leave General settings and then select Geometry view/check and toggle all
Plot-files on except SRCINFO and REFLINFO. Select (Primary 3D view) Natural and View
distance to 65 m (the 3D view can be changed interactively when the plot-file is shown, this
defines only the initial setting). Press OK and leave Geometry view/check.
Below are shown six steps towards a complete model. For each step only the additional GEO
data for the step is shown. For the final complete GEO-, source-, and receiver-files refer to
Appendix A.
Remember - you do not need to enter the geometry data yourself. Just read the paragraphs,
press Save and Run, enter STEP and view the various plot-files (some are shown here and
some more are included in the help-file).
Step 1, the audience and floor surfaces
First to be entered is the floor and audience coordinates planes are entered (the complete
GEO-file can be viewed by selecting (Edit) Geo-file on the main dialog and opening
MASTSTEP.GEO or MASTFULL.GEO or by checking Appendix A). The tutorial input-files uses
decimal point but both decimal comma and point are allowed.
A "walled in" audience is created where audience or seat absorption is applied also to the
sides, see Fig. 2.8. "Help corners" are created to enable precise locking of receiver locations
at a fixed height above the audience (step 5). Note that the audience has been assigned
specific scattering coefficients. For this simple project remaining surfaces all get default
scattering coefficients introduced later.

;MASTFULL.GEO
;PROJECT:CATT-Acoustic tutorial for v8.0

;general materials defined here or from library

ABS wood = <12 10 8 7 5 4> {213 220 160}
ABS carpet = < 10 8 6 4 3 2 > {98 209 44}

ABS audience = <35 50 55 70 85 80> L <30 40 50 60 70 80> {128 128 0}
ABS floorabs = carpet

GLOBAL ah = 1.0 ; audience height
GLOBAL rh = 0.3 ; receiver height above audience plane
GLOBAL aww = 1.0 ; audience sidewalk widths
GLOBAL fsd = 1 ; front-stage depth
GLOBAL fsw = 6 ; front-stage width
GLOBAL sw = fsw + 2 ; stage width
GLOBAL pw = 2 ; prosc. width
GLOBAL w = 16 ; max hall width
GLOBAL ew = 1.4 ; entrance width
GLOBAL fld = 3 ; flank depth
GLOBAL flt = 1 ; floor tilt
GLOBAL wl1 = 6 ; first side wall length
11. TUTORIAL
276
GLOBAL wl2 = 7 ; second side wall length
GLOBAL hd = fld + wl1 + wl2 ; hall depth from prosc

MIRROR 100 200 ; corner and plane offsets for mirrored part

CORNERS

;floor corners
1 -fsw/2 fsd 0
2 -sw/2 0 0
3 x(2)-pw 0 0
4 -w/2 fld 0
7 -w/2+ew hd flt
8 0 y(4) 0 ; help corner for lock
5 x(4) fld+wl1 lock(4 7 8)
6 x(7) y(5) lock(4 7 8)

;audience surface
;20-21 help corners to lock audience corners at ah above floor
20 x(8) y(8) z(8)+ah
21 x(4) y(4) z(4)+ah
22 x(7) y(7) z(7)+ah

;23-25 help corners to lock receiver positions at rh above audience
;surface (in REC.LOC)
23 x(20) y(20) z(20)+rh
24 x(21) y(21) z(21)+rh
25 x(22) y(22) z(22)+rh

;audience upper corners
30 x(4)+aww y(4) lock(20 21 22)
31 x(4)+aww y(5)-aww lock(20 21 22)
32 x(7)+aww y(5)-aww lock(20 21 22)
33 x(7)+aww y(7)-aww lock(20 21 22)

;audience lower corners
40 x(30) y(30) lock(4 7 8)
41 x(31) y(31) lock(4 7 8)
42 x(32) y(32) lock(4 7 8)
43 x(33) y(33) lock(4 7 8)

PLANES

;audience surfaces
[1 audience surface / 33 32 31 30 130 131 132 133 / audience ]
[2 audience front / 140 130 30 40 / audience ]
[3 audience rear / 143 43 33 133 / audience ]
[4 audience front side / 30 31 41 40 / audience ]
[5 audience middle side / 42 41 31 32 / audience ]
[6 audience rear side / 43 42 32 33 / audience ]

;floor surfaces
[7 front floor / 101 102 103 104 140 40 4 3 2 1 / floorabs ]
[8 sloped side floor / 40 41 42 43 7 6 5 4 / floorabs ]
[9 sloped rear floor / 107 7 43 143 / floorabs ]
The coordinate system must have the y-axis towards the audience and the z-axis upwards
(gives the x-axis left to right as seen from the stage looking towards the audience) see
Section 1.5. To utilize mirroring x = 0 should be placed at the symmetry line. The plane
corners must be entered in clockwise order as seen from behind each surface (in fact, the
direction is selectable but must be consistent in each file and flipping "/" to "\" reverses the
direction). Note the MIRROR directive that creates mirror copies of all corners with 100 added
to their ids (no planes are mirrored in this step since the floor plane coordinates contain both
negative and positive x-values). The lock() function is used to lock hard-to-measure
coordinates into a plane defined by three corners. Planes can then be made perfectly flat.
11. TUTORIAL
277
Note: if expressions are used for coordinate values, they must either be entered without
blanks or enclosed in round brackets. An example from above: the y-value of corner 8
fld+wl1 could also have been entered as (fld + wl1).
The first part of the geometry is now created. Source and receivers are of little concern at this
stage. Press Save and Run. Enter 1 for STEP when the dialog appears.
The geometry-file is read and requested plot-files are created in the output folder. The View
module automatically shows all created plot-files (COLORED.PLT, SHADED.PLT,
SHADED.OGL for the CATT 3D-viewer, COINFO.PLT see Fig. 11.1, PLINFO.PLT,
VIEW4.PLT).
A0
01
1
2
3
4
7
5
6
30
31
32
33
40
41
42
43
101
102
103 104
107
105
106
130
131
132
133
140
141
142
143

Fig 11.1 COINFO.PLT after Step 1
The plot-files names are saved in PLT_GEO.TXT. On the Plot-file control dialog or toolbar
select next/prev File to view the files ("<<" and ">>" buttons or press PgUp/PgDn).
PLINFO.PLT contains plot "sub-frames" that are selected by the Frame buttons ("<" and ">"),
the left-right arrow keys. To jump directly to a certain frame (plane), either choose
Options|Select Frame or press "F" to toggle mouse selection on (press "F" again to toggle off
and manipulate the view again). A plane should always have its reflecting side colored and the
back black or the corner entering order must be reversed. This is very very important!
Step 2, walls and ceiling
In this step all ceiling coordinates are entered and main walls and the ceiling are defined.
Note: below are shown only the new lines associated with step 2. Again, for the full file refer to
Appendix A.

ABS ceilabs = wood
ABS wallabs = wood

GLOBAL h = 8 ; hall height

CORNERS

;ceiling
52 x(2) y(2) h
53 x(3) y(3) h
54 x(4) y(4) h
55 x(5) y(5) h
56 x(6) y(6) h
11. TUTORIAL
278
57 x(7) y(7) h

PLANES

[20 ceiling / 52 53 54 55 56 57 157 156 155 154 153 152 / ceilabs ]
[21 back wall / 107 157 57 7 / wallabs ]
[22 side wall front / 5 55 54 4 / wallabs ]
[23 side wall back / 56 6 7 57 / wallabs ]
[24 front flank wall / 54 53 3 4 / wallabs ]
Note the use of x() and y() functions to copy x, and y-coordinates from the floor to the
ceiling. If a floor coordinate is changed, the ceiling will automatically follow. The second part of
the geometry is now created. Press Save and Run. Enter 2 for STEP when the dialog appears.
A0
01
1 2
3
4
7
5
6
30
31
32
33
40
41
42
43
52
53
54
55
56
57
101
102
103
104
107
105
106
130
131
132
133
140
141
142
143
152
153
154
155
156
157

Fig 11.2 COINFO.PLT after Step 2
Step 3, entrance wall and door
The entrance door is created as a plane sub-division where the door is the first division and
the complete entrance wall is the second. To use plane sub-divisions instead of defining
separate planes is more logical and more efficient. For details about plane sub-divisions see
Section 2.3.

ABS doorabs = wood

GLOBAL e = 0.2 ; edge width entrance door
GLOBAL dh = 2 ; entrance door height

CORNERS

;entrance door
60 x(5)+e y(5) z(5)
61 x(5)+e y(5) z(5)+dh
62 x(6)-e y(5) z(5)+dh
63 x(6)-e y(5) z(5)

11. TUTORIAL
279
PLANES

[30 entrance wall / 5 6 56 55 /
(door / 63 62 61 60 / doorabs)
(wall / 5 6 56 55 / wallabs) ]

As seen from the above, plane-definitions can spread over several lines if required. Once
again press Save and Run and enter for 3 for STEP in the dialog.
125 500 2k 8k
100%
50%
0%
A0
01
63
62
61
60
door ( 30)
DOORABS <12 10 8 7 5 4 : 3 2> L <10 10 10 10 10 10 : 10 10>

Fig 11.3 PLINFO.PLT after Step 3
Step 4, the stage
The stage and the proscenium can now be connected.

ABS sfloorab = wood
ABS swallabs = wood

GLOBAL sh = 1 ; stage height
GLOBAL sd = 5 ; stage depth
GLOBAL sbw = 4 ; stage back width
GLOBAL sfh = h-2 ; stage front height
GLOBAL sbh = sfh-1 ; stage back height

CORNERS

;prosc. and stage
74 x(2) y(2) sh
75 x(1) y(1) sh
76 -sbw/2 -sd sh
77 x(76) y(76) sh+sbh
78 x(2) y(2) sh+sfh

PLANES

[40 prosc. walls / 2 3 53 52 78 74 / wallabs ]
[41 stage side edge / 2 74 75 1 / swallabs ]
[42 stage front edge / 1 75 175 101 / swallabs ]
[43 stage floor / 176 174 175 75 74 76 / sfloorab ]
[44 stage ceiling / 77 78 178 177 / swallabs ]
[45 stage back wall / 76 77 177 176 / swallabs ]
11. TUTORIAL
280
[46 stage side wall / 76 74 78 77 / swallabs ]
[47 prosc. top / 78 52 152 178 / swallabs ]
Again press Save and Run and enter for 4 for STEP in the dialog.
01
A0

Fig 11.4 COLORED.PLT after Step 4
Step 5, source/receiver locations
Source-file (SRC.LOC):
"Omni" natural directivity selected. A second source is added since we will later add the results
of the two sources together.

;SRC.LOC
;PROJECT:CATT-Acoustic tutorial v8.0

SOURCEDEFS

IF step < 5 THEN
A0 0.0 3.0 2.0 OMNI 0.0 10.0 3.0
Lp1m_a = <70 73 76 79 82 85>

B0 1.0 2.0 2.0 OMNI 0.0 10.0 3.0
Lp1m_a = <70 73 76 79 82 85>
ELSE
A0 -2.5 fsd-0.5 sh+1.7 OMNI -2.0 fsd+2 sh+1.7
Lp1m_a = <70 73 76 79 82 85>

B0 1.0 fsd-2.0 sh+1.7 OMNI 1.0 fsd+2 sh+1.7
Lp1m_a = <70 73 76 79 82 85>
ENDIF
11. TUTORIAL
281
Receiver-file (REC.LOC):

;REC.LOC
;PROJECT:CATT-Acoustic tutorial v8.0
IF step >= 5 THEN
LOCAL dx = 2.2
LOCAL dy = 3
LOCAL y0 = fld+1
ENDIF

RECEIVERS

IF step < 5 THEN
1 0.0 10.0 3.0
ELSE
1 -2*dx y0 lock(23 24 25)
2 -1*dx y0 lock(23 24 25)
3 0*dx y0 lock(23 24 25)
4 1*dx y0 lock(23 24 25)
5 2*dx y0 lock(23 24 25)
11 -2*dx y0+dy lock(23 24 25)
12 -1*dx y0+dy lock(23 24 25)
13 0*dx y0+dy lock(23 24 25)
14 1*dx y0+dy lock(23 24 25)
15 2*dx y0+dy lock(23 24 25)
21 -2*dx y0+2*dy lock(23 24 25)
22 -1*dx y0+2*dy lock(23 24 25)
23 0*dx y0+2*dy lock(23 24 25)
24 1*dx y0+2*dy lock(23 24 25)
25 2*dx y0+2*dy lock(23 24 25)
31 -2*dx y0+3*dy lock(23 24 25)
32 -1*dx y0+3*dy lock(23 24 25)
33 0*dx y0+3*dy lock(23 24 25)
34 1*dx y0+3*dy lock(23 24 25)
35 2*dx y0+3*dy lock(23 24 25)
ENDIF
Select General settings/Receivers and toggle 1-5, 11-15, 21-25, and 31-35 on. Select
(Sources)Which to use and toggle both source A0 and B0 on. Set head-direction to Stage.
Run again and enter 5 at the screen prompt.
01
02
03
04
05
11
12
13
14
15
21
22
23
24
25
31
32
33
34
35 A0
B0

Fig 11.5 SHADED.PLT after Step 5
11. TUTORIAL
282
Step 6, side wall reflectors
Reflectors separate from the main geometry are best defined in separate files. Such files are
declared as OBJECTs and can thereby be translated/rotated. The defined geometry is used as
a template and COPY creates further identical copies with various translation/rotation values.
In the top "directives" section in the master-file the reflector-file is included:

;STEP 6 - side wall reflectors
INCLUDE reflect.geo
In a new GEO-file REFLECT.GEO:

;REFLECT.GEO
;PROJECT:CATT-Acoustic tutorial for v8.0
; STEP 6 side-wall reflectors

ABS backabs = <20 30 40 50 60 60> {64 128 128}
ABS frontabs = <12 10 8 7 6 5> {0 0 128}

LOCAL r_w = wl1/5
LOCAL r_h = h-3

LOCAL tx = w/2 - 0.5
LOCAL ty = r_w
LOCAL tz = 2.75

LOCAL ry = -10
LOCAL rz = 15

OBJECT
ROTATE 0 ry rz
TRANSLATE tx fld+ty tz

OFFSETPL 100
OFFSETCO 80

MIRROR 100 200

COPY 5 2 0 0 0 tx fld+2*ty tz 0 ry rz
COPY 10 4 0 0 0 tx fld+3*ty tz 0 ry rz
COPY 15 6 0 0 0 tx fld+4*ty tz 0 ry rz

CORNERS

0 0 -r_w/2 0
1 0 -r_w/2 r_h
2 0 r_w/2 r_h
3 0 r_w/2 0

PLANES

;* = auto edge diffusion + enable in General settings
[0 refl front / 0 1 2 3 / frontabs* ]
;the back MUST be defined too
[1 refl back \ 0 1 2 3 \ backabs* ]
Note the use of OFFSETPL and OFFSETCO to make the OBJECT GEO-file somewhat in-
dependent. To re-use it in another project, only the offsets and the absorption need to be
changed. Run again and enter 6 for STEP at the screen prompt, see Fig. 11.6 for the final
design.
For some idea of how the reflectors work, go to General settings and select the Refl. Info
plot-file (REFLINFO.PLT) and specify the plane ids 100, 102, 104 and 106 (front sides of the
right side reflectors). Run again and look at the reflector coverage.
11. TUTORIAL
283
5m
Y
Z
X
Y
X
Z
A0
B0
01
02
03
04
05
11
12
13
14
15
21
22
23
24
25
31
32
33
34
35
Audience:149m Volume:1769m

Fig 11.6 VIEW4.PLT after Step 6
11.3 Prediction
The following steps may be taken in different order depending on the type of project. The
Prediction module can create any combination of detailed early specular reflections, audience
area mapping (direct sound and/or direct+reflected), full detailed calculation, and geometry
check as well as direct sound Pixel rendering and Interactive RT estimation. For some
projects the shape may be most natural to check first (mapping) but for others the
reverberation time and details at specific receiver positions may be more natural to check first
(full detailed calculation).
First select General settings and select Master-file to MASTFULL.GEO so you do not need to
select the STEP anymore.
It is now also time to check/select (Diffuse reflection) on or off and if Diffuse defaults will be
used. If Diffuse defaults is used then all materials without diffusion properties defined will get
the selected default scattering coefficients. Diffuse reflections on/off can have a strong impact
on the estimation of reverberation time, see Section 2.5. For this tutorial set default scattering
coefficients to 30% for all bands.
Note: Sabine and Eyring RT formulas assume 100% diffusion or a "mixing" room shape, don't
be surprised if the estimated T-30 is higher, it is normal in these types of rooms. A good
experiment is to set all scattering coefficients to 99% and see how T-30 become almost
identical to the Eyring RT, another good experiment is to switch off diffuse reflection in
General settings and see how T-30 becomes >> Eyring RT.
Interactive RT estimate
A good start can be to estimate the classical reverberation time according to Sabine and
Eyring RT and to perform a quick ray-trace for a global T-30 estimate. Click Interactive RT
estimate and try changing some of the materials of each plane by clicking the property name
button of the selected plane or sub-division. The Eyring and Sabine RT estimates are
immediately updated, to run a quick global ray-trace click Start trace and watch a continuously
updated T-30 curve.
11. TUTORIAL
284
Audience area mapping
Leave General settings by pressing OK and select (Audience area mapping) Direct +
reflected sound. Select No of rays/oct to 10000 (or Auto number for a more thorough
calculation), Auto time, a Map step of 0.5 m and a Map height of 0.25. For Audience planes
select no. 1 (to enter only one plane in the dialog enter 1 only in the left Range edit box or in
both and click Add). Spherical receivers (slightly overlapping) will be automatically placed at
the Map height over the audience plane. Audience planes will be marked grey in the
VIEW4.PLT file. Browse through the rest of the settings since there are many mapping
options (up to 12 2D or 3D parameter mapping plots plus RASTI, STI and early sound
coverage).
Leave Audience area mapping by pressing OK.
Click Save and Run. The resulting plot-files will be for 1 kHz and for sound pressure level
(SPL_1K.PLT) and lateral fraction (LF_1K.PLT) and parameters selected (PAR1_1K.PLT).
Note that the results now are for source A0 and B0 added together.

20
25
30
35
40
45
50
55
60
D-50 [%] 1 kHz
A0
B0
-2
-1
0
1
2
3
4
C-80 [dB] 1 kHz
A0
B0
10
15
20
25
30
35
40
LF [%] 1 kHz
A0
B0
60
70
80
90
100
110
Ts [ms] 1 kHz

Fig. 11.7 PAR1_1K.PLT from Audience area mapping
Early part detailed ISM
Select Early part detailed ISM on and Audience area mapping off. Edit Early part detailed
ISM and set specular refl. orders to 3. Select Truncation time to 150 ms (the truncation time
would typically range from 150 ms for small halls to 300 ms for large halls). Toggle Refl.
history plot-file on, the rest off. Browse through the rest of the settings.
11. TUTORIAL
285
23 73 123 173
dB
ms
H_A0_05_1K
0 50 100 150
10
20
30
40
50
60
70
Receiver angles
Hor Ver
Source angles
Hor Ver
A0
B0
01
02
03
04
05
11
12
13
14
15
21
22
23
24
25
31
32
33
34
35
45
S-24-20-21-R

Fig. 11.8 H_A0_05_1K.PLT from Early part detailed ISM
Click Save and Run. The main part of the prediction time is spent saving detailed plot-files for
reflection histories for each of the 20 receivers. The resulting plot-files will be for 1 kHz
(H_A0_rr_1K.PLT, see Fig.11.8, and H_B0_rr_1K.PLT) where rr are the receiver
ids.
Full detailed calculation
Full detailed calculation, using the RTC, is the main prediction tool. Toggle Full detailed
calculation on and Early part detailed ISM off.
Edit Full detailed calculation and select No of rays/oct 1000 (or for a very thorough
prediction to Auto). The Ray truncation time should be set to correspond roughly to the RT,
say 1500 ms, or to Auto. Toggle on RT overview, Echograms, Sound roses, Vectorgrams,
Decays, Parameter map and Parameter trend. Select both Save data for items for later use
with Source addition and Post-processing (for auralization). Browse through the rest of the
settings.
Leave the dialog by pressing OK.
Click Save and Run. Note that if e.g. 1000 rays were selected 8000 rays are actually traced
(1000 per octave). The resulting plot-files will be:

RT_A0.PLT RT_B0.PLT global reverberation time and other statistics
E_A0_rr_INT E_B0_rr_INT.PLT decay curves all octaves
E_A0_rr _1K E_B0_rr_1K.PLT detailed echograms and results, se Fig. 11.9
R_A0_rr_1K R_B0_rr_1K sound roses
V_A0_rr_1K V_B0_rr_1K vectorgrams
PARAM1_A0.PLT PARAM1_B0.PLT parameter overview
TREND1_A0.PLT TREND1_B0.PLT parameter trend.
11. TUTORIAL
286
5m
05
A0
dB
ms
Complete echogram
0 500 1000 1500
10
20
30
40
50
60
70
80
1.25s (-1.00)
1.23s (-1.00)
dB
ms
Early echogram
0 50 100 150 200
10
20
30
40
50
60
70
80
23 73 123 173 223
EDT 1.14 s
T-15 1.23 s
T-30 1.25 s
D-50 50.0 %
C-80 2.7 dB
LFC 43.3 %
LF 29.0 %
Ts 79.2 ms
SPL 71.4 dB
G 12.4 dB
OMNI
DI = 0 dB
79.0 dB at 1 m
1kHz
4ms
Filter
dB
ms
Early directional echograms
0 50 100 150 200
10
20
30
40
50
60
70
80
Lt Rt
Up
Dn
23 73 123 173 223

Fig. 11.9 E_A0_05_1K.PLT from Full detailed calculation
Since now also numerical results are interesting text-files are created. Select PARAM_A0.TXT
or PARAM_B0.TXT from the Prediction:Latest Results list-box (double-click or select and
press Enter) and it will load the file into CATT-Edit (in view-only mode). This text-file
summarizes all results for room acoustic measures as well as how the prediction has been
performed (no of rays etc.). Also files suitable for spreadsheet import (e.g. MS Excel) were
created (PARAM_A0x.TXT and PARAM_B0x.TXT) where tables are semi-colon delimited and
non-tabular data and text is quoted.
The prediction is now complete. Go to Source addition (Section 11.4) or Post-processing
(Section 11.5).
11.4 Source addition
To add the detailed results of multiple sources together the (Save data for) Source addition
option in the Full detailed calculation dialog (or for special cases Early part detailed ISM)
must be set. The Prediction module then creates special echogram files with the name syntax
E_ss_rr.ADD and a file called Name.CMB (where Name.LOC is the name of the current
prediction source-file, typically SRC.CMB) containing source combination data (directivity type,
optional delay, aim coordinate, Lp1m values, and a geometry checksum). Note: the Audience
area mapping adds sources together automatically but mainly graphically presented results
are created while the Source addition module enables individual point receiver echogram
studies as well as source changes without a full recalculation.
Open or select the Source addition module from the Windows menu. When the module
opens select CATTDATA-folder MODELS\TUTORIAL\OUT\SRC.CMB that was created at
prediction. When the CMB-file loads, all E_ss_rr.ADD files in the same folder as the CMB-
file (typically a prediction output folder) are compared so that they all have the same geometry
checksum. This is required since ADD-files may have been created at different times - one
source at a time. All compatible sources found appear enabled in the (Sources) group.
Similarly, if the Receivers button is pressed all compatible receivers appear enabled. Note that
only the common set of source and receives are enabled (e.g. if A0 and 01, 02 have been
predicted at one time, and B0 and 01, 02, 03 at another time, only A0, B0, 01, and 02 will be
enabled).
11. TUTORIAL
287
In the (Sources) group enabled sources can be switched on/off and edited by clicking on their
respective check boxes and edit buttons. Keep the initial settings.
Click the Receivers button and select only receiver 05 (note that also several receivers in the
groups 10-19, 20-29 and 30-39 are enabled) and click OK.
Click Save and run and the addition of the echograms for source A0 and B0 to receiver 5 will
be calculated. This process only takes a couple of seconds and displays a plot-file
E_01_05_1K.PLT, see Fig. 11-10, where both the individual A0->05 and B0->05 echograms
(solid lines) and the total A0+B0->05 (dotted lines) are shown (the 01 number just tells that
this is the first file in a possible sequence since when using 260 sources there will be 33 files
numbered from E_01_rr_oct.PLT to E_33_rr_oct.PLT). The direct sound from each
source is marked by a circle. A multiple source decay plot-file E_05_INT.PLT and a result
text-file is also created with the most essential parameters, E_05.TXT.
dB
ms
A0 0.0ms OMNI.SD0
0 100 200
20
30
40
50
60
70
dB
ms
B0 0.0ms OMNI.SD0
0 100 200
20
30
40
50
60
70

Fig. 11.10 E_01_05_1K.PLT from Source addition.
Now it is time for experimenting with the two sources. Click an edit button for source B and
select another source directivity (CATT.SD0) and set a delay of 20 ms. Click Save and run
again and watch how the B0->05 echogram is shifted by 20 ms and details have changed
because of the new directivity is applied, see Fig. 11.11.
dB
ms
A0 0.0ms OMNI.SD0
0 100 200
20
30
40
50
60
70
dB
ms
B0 20.0ms CATT.SD0
0 100 200
20
30
40
50
60
70

Fig. 11.11 E_01_05_1K.PLT from Source add., B0 delayed 20 ms and
with a new directivity.
Note that these source changes did not require a full recalculation in the Prediction module.
Click the Receivers button and select all the receivers, then click OK.
Click Save and run and the addition of the echograms for source A0 and B0 to all receivers
will be calculated. When also multiple receivers are calculated for, the results are a bit
different and have the name syntax PARAM.TXT and TREND1.PLT and TREND2.PLT similar
to the PARAM_ss.TXT and TREND_ss.PLT files created by the Prediction module.
11. TUTORIAL
288
11.5 Post-processing - Auralization
To create an auralization of the results from a prediction, a (Save data for) Post-processing
option in the Full detailed calculation dialog (or for special cases Early part detailed ISM)
must be set. The Prediction module then creates special echogram files with the name syntax
E_ss_rr.ECH. Optionally, ECH-files can be created (or re-created) by the Source addition
module after source changes.
Open or select the Post-processing module from the Windows menu. To examine the basic
contents of an ECH-file select Utilities|Information|CATT ECH-file (or the ECH-info toolbar
button). In addition to what is displayed, all early reflections are in the file with incidence angle
and octave-band information. The late part is recreated in the module (statistically created
based on a simplified room shape and actual incidence angle distributions).
Select General settings and 44100 Hz sample-rate and binaural receiver. Select an impulse
response length corresponding to the predicted reverberation time (say 1300 ms giving an IR
size of 1.3 x 44100 = 57330 samples). The headphone and HRTFs used must be selected
from File|Preferences or from the Prefs button. With limited versions only the "Generic" eq.
(GENERIC_V8_PLAIN_44.DAT) can be chosen and only HRTFs based on a solid sphere
(SPHERE_PLAIN_44.DAT).
Check the settings for Output files (see to that Lake SIM-file format is selected since they will
be used by the convolver in the last step).
Select File|Save Settings and enter e.g. TUTORIAL.PST in CATTDATA-folder
MODELS\TUTORIAL.
Click Save and run and select CATTDATA-folder MODELS\TUTORIAL\OUT\E_A0_05.ECH.
The module then starts to process the early part, builds the late part reverb and then finally it
creates the late part. The plot-file E_A0_05_I.PLT, see Fig. 11.12, shows the early part of
the created binaural impulse response, and E_A0_05_D.PLT shows the full decay for each
octave-band, see Theory for details.
The detailed look of the binaural impulse response depends on the HRTFs and headphone eq
filter selected. Note that since head-direction stage was selected at prediction, receiver 05 is
looking straight ahead and not towards the source and will thus have a stronger direct sound
response for the right ear.
To view and analyze the impulse response (via a Frequency response and a Spectrogram)
contained in a SIM-file elect Utilities|Information|Lake SIM-file (or the SIM-info toolbar
button).
Next step is to convolve anechoically recorded material with the synthesized binaural impulse
response. Click Convolution and select the anechoic 44100 Hz mono WAV-file of your choice
(e.g. MTB_44_AN.WAV with a male talker or DEMO_22_AN.WAV for limited versions since IRs
were then downsampled to 22050 Hz) and the just created left/right SIM-files: CATTDATA-
folder MODELS\TUTORIAL\OUT\E_A0_05_L.SIM and E_A0_05_R.SIM. Finally enter a
desired name for the resulting stereo WAV-file that will hold the binaural simulation e.g.
CATTDATA-folder MODELS\TUTORIAL\OUT\MTB_A0_05.WAV.
Play the resulting WAV-file using the CATT WAV-file player (Utilities menu), attach it to a list
plot-file in the Plot-file viewer module, use the Windows MediaPlayer, load the file into a WAV
editor (included with most soundcards), or use any other of the many programs that can play
WAV-files.
11. TUTORIAL
289
%
ms
LEFT EAR
0 50 100 150 200 250
-100
-50
0
50
100
23 73 123 173 223 273
%
ms
RIGHT EAR
0 50 100 150 200 250
-100
-50
0
50
100
23 73 123 173 223 273

Fig. 11.12 E_A0_05_I.PLT from Post-processing
Of course, being a hall design out of the blue, the acoustics is perhaps not very good. Note
that the reverberation time is nearly constant over the octaves, not dropping much at 4 kHz,
and it contributes to a bright sound.
Also note that the directivity used is OMNI, while a talker has a higher directivity at high
frequencies and thereby in reality sends out less total power than when OMNI is used. Also
this contributes to a bright sound, especially from 4k and up. Going back setting the directivity
to that of a small loudspeaker makes it sound much more natural.
If experiments with e.g. the directivity sounds interesting, the whole process can be repeated
automatically using the sequence processing module, see next section.
11.6 Sequence processing
To repeat the prediction and post-processing/convolution steps in section 11.3 and 11.5 after
e.g. a raised ceiling or a directivity change, the Sequence processing module can be used
together with previously created settings-files.
First edit the geometry or create a new source directivity (using the Directivity module) and
change the source in SRC.LOC. If desired, other parameters can of course also be changed.
Then open or select the Sequence processing module from the Windows menu.
All file-names below are in the CATTDATA-folder MODELS\TUTORIAL folder but must be
entered with full actual path included.
Click Prediction and select the settings-file CALC.PRD assuming it has Full
detailed calculation selected. Press OK.
Click Post-processing and select the settings-file TUTORIAL.PST and the echogram-file ECH-
file E_A0_05.ECH. Press OK.
Select Convolution and select the anechoic WAV-file of your choice (e.g. MTB_44_AN.WAV),
binaural impulse response SIM-files E_A0_05_L.SIM and E_A0_05_R.SIM in CATTDATA-
folder MODELS\TUTORIAL and the desired name for the resulting stereo WAV-file
11. TUTORIAL
290
containing the binaural simulation (e.g. CATTDATA-folder MODELS\TUTORIAL\OUT\
MTB_A0_05.WAV). Press OK.
The sequence list-box now displays the three steps to be performed. Select File|Save
Sequence As and enter TUTORIAL.SEQ. If you have MTB_A0_05.WAV loaded in the
MediaPlayer, it must be closed since the convolver can't save to an opened and locked file.
Click Save and Run and take a short coffee break. After the break there should be a new
WAV-file to listen to.
You have now gone through all major parts of CATT-Acoustic. Additional important parts are
e.g. multiple source auralizations and calibration enabled by the Post-processing module
Utilities|SIM-file Addition and |WAV-file Addition (full version) and |Calibration menus.
12. REFERENCES

12. REFERENCES
[Ambisonic] see [B-format]
[ANSI S12.2-1995] CRITERIA FOR EVALUATING ROOM NOISE
[Beranek] Acoustics, L L Beranek
American Institute of Physics, Inc. 1986
[Barron-81] M Barron, A H Marshall, Spatial Impression Due to Early Lateral
Reflections in Concert Halls: the Derivation of a Physical Measure
J. of Sound and Vibration, 72, 211- 232, 1981
[Barron-88] M Barron, L-J Lee, Energy relations in concert auditoriums. I
J. of the Acoustical Society of America, 84(2), 618-628, 1988
[Borwick] Sound Recording Practice John Borwick (ed.)
(Ch. 6 "Microphones" by John Borwick)1987
Oxford University Press, Oxford, New York, USA
[Bradley-96] J S Bradley, An international comparison of room acoustics
measurement systems
Internal Report IRC-IR-714, National Research Council Canada
[Bradley-96:2] "Predictors of Speech Intelligibility in Rooms", J.S. Bradely, JASA 80(3),
Sept 1996, pp 837-845
[B-format] M A Gerzon, Ambisonics in multichannel broadcasting and video
J. Audio Eng. Soc. 33(11), 859-71, 1985
[Chalmers] Chalmers Room Acoustics Group
Department of Applied Acoustics,
Chalmers University of Technology
SE-412 96 Gothenburg, Sweden
[CLF] The Common Loudspeaker Format, see www.clfgroup.org. From this
page a free CLFViewer and a free CLF Authoring kit can be downloaded.
It also included links to loudspeaker manufactures offering CLF format
loudspeaker data.
[Cooper-89] D H Cooper, J L Bauck, Prospects for Transaural Recording
J. Audio Eng. Soc. 37(1/2), 3-19, 1989
[Cremer] Principles and Application of Room Acoustics, Volume 1
L Cremer, H A Mller, T Schultz
Applied Science Publishing.

In many cases a reference to [Cremer] is actually a reference to other
authors. It is however much easier to refer to this excellent book than to
each separate paper. Those of you who want more details can then dig
into the references of [Cremer].
[Cremer-2] [Cremer], Volume 2
[Cremer-89] L Cremer, Early Lateral Reflections in Some Modern Concert Halls
J. of the Acoustical Society of America, 85(3), 1989
12. REFERENCES

[Dalenbck-92] B-I Dalenbck, Room Acoustic Prediction and Auralization Based on an
Extended Image Source Model
Licentiate thesis, Report F92-03, [Chalmers]
[Dalenbck-95a] B-I Dalenbck, The Importance of Diffuse Reflection in Computerized
Room Acoustic Prediction and Auralization
Proc. Inst. of Acoust. 17, 27-34, 1995
[Dalenbck-95b] B-I Dalenbck, A New Model for Room Acoustic Prediction and
Auralization
Ph. D. thesis, Report F95-05, [Chalmers]
[Dietsch&Kraak-86] L. Dietsch, W. Kraak, An Objective Criterion for the Measurement of
Echo Disturbance during Presentation of Music and Speech" (in German)
Acustica 60, pp. 205-216, 1986
[Gade-92] A C Gade
Practical Aspects of Room Acoustics Measurements on Orchestra
Platforms
14th ICA, Paper F3-5, Beijing, 1992
[Hodgson-91] M Hodgson, Evidence of diffuse reflections in rooms
J. of The Acoustical Society of America, 89(2), 765-71, 1991
[Houtgast-80] T Houtgast, H J M Steeneken, R Plomp, Predicting Speech Intelligibility
in Rooms from the Modulation Transfer Function. I. General Room
Acoustics
Acustica 46, 60-72,1980
[IEC 2068-16] 2nd ed. 2003-05
Sound system equipment. Part 16: Objective rating of speech intelligibility
by speech transmission index. (STI)
[Ingaard] http://www.ingard.com
[ISO] IS0 3382, Building Acoustics
[ISO-scatt] ISO/DIS 17497, draft 2001-Sept-19, Acoustics - Measurement of sound
scattering properties of surfaces - Part 1: Measurement of the random-
incidence scattering coefficient in a reverberation room.
[Jacobsen-86] T Jacobsen, The RASTI method for objective rating of speech
intelligibility
12th ICA, paper E10-1, 1986
[Kleiner-93] M Kleiner, B-I.Dalenbck, P Svensson
Auralization - an Overview,
J. Audio Eng. Soc. 41(11), 861-875 (1993)
[Kotorynski-90] K Kotorynski, Digital Binaural/Stereo Conversion and Crosstalk
Cancelling
89th Conv. AES, Los Angeles 1990, preprint 2949
[Kuttruff] Room Acoustics, H Kuttruff
Applied Science Publishers Ltd., London, UK
12. REFERENCES

[Kuttruff-80] H Kuttruff, Zur Abhngigkeit des Raumnachhalls von der Wanddiffusitt
und der Raumform
Acustica 45, 246-55, 1980
[Lake] Lake DSP is now part of Dolby Laboratories, and Lake no longer
supports the Huron or CP4 platforms.
[MLSSA] DRA Laboratories
USA
URL: http://www.mlssa.com
[MATLAB] The MathWorks Inc.
21 Eliot Street,
South Natick MA 01760, USA
URL: http://www.mathworks.com
[O'Keefe] URL: www.aercoustics.com/papers/ioa95/ioa95_1.htm
[Ognedal] The AbsTex software, www.ognedal.com
[Oppenheimer] Digital Signal Processing , Alan V. Oppenheimer, Ronald W Schafer
Prentice-Hall Inc., Englewood Cliffs, New Jersey, USA
[Pickover] Chaos, Pattern and Beauty , C. A. Pickover
St. Martin's Press NY 1990
ISBN 0-312-04123-3
[Roy&Gimbott-93] A Roy, F Gimbott, Automatic Echo Determination in Measured Room
Impulse Responses
94th AES Conv., Berlin March 1993, preprint 3573.
[Steeneken-67] H J M Steeneken, T Houtgast, A physical method for measuring speech
transmission quality
JASA 67(1), pp.318-326
[Toole-90] F E.Toole , "Loudspeakers and Room for Stereophonic Reproduction",
8
th
International AES conference, 1990 May 3-6 (paper available from
www.aes.org)
[WinFlag] URL: www.winmls.com

12. REFERENCES

APPENDIX A

APPENDIX A - TUTORIAL FILES
Complete and final GEO-, source-, and receiver-files for Section 11. Tutorial.
Master geo-file MASTFULL.GEO.

;MASTFULL.GEO
;PROJECT:CATT-Acoustic tutorial for v8.0

GLOBAL step = 6

;STEP 6 - side wall reflectors
INCLUDE reflect

;general materials defined here or from library
ABS wood = <12 10 8 7 5 4> {213 220 160}
ABS carpet = < 10 8 6 4 3 2 > {98 209 44}

;STEP 1: audience and floor surfaces
ABS audience = <35 50 55 70 85 80> L <30 40 50 60 70 80> {128 128 0}
ABS floorabs = carpet

;STEP 2: ceiling, backwall, sidewalls
ABS ceilabs = wood
ABS wallabs = wood

;STEP 3: entrance door
ABS doorabs = wood

;STEP 4: prosc. and stage
ABS sfloorab = wood
ABS swallabs = wood

;STEP 1: floor, audience
GLOBAL ah = 1.0 ; audience height
GLOBAL rh = 0.3 ; receiver height above audience plane
GLOBAL aww = 1.0 ; audience sidewalk widths

GLOBAL fsd = 1 ; front-stage depth
GLOBAL fsw = 6 ; front-stage width
GLOBAL sw = fsw + 2 ; stage width
GLOBAL pw = 2 ; prosc. width
GLOBAL w = 16 ; max hall width
GLOBAL ew = 1.4 ; entrance width
GLOBAL fld = 3 ; flank depth
GLOBAL flt = 1 ; floor tilt
GLOBAL wl1 = 6 ; first side wall length
GLOBAL wl2 = 7 ; second side wall length
GLOBAL hd = fld + wl1 + wl2 ; hall depth from prosc

;STEP 2: ceiling, backwall, sidewalls
GLOBAL h = 8 ; hall height

;STEP 3: entrance door
GLOBAL e = 0.2 ; edge width entrance door
GLOBAL dh = 2 ; entrance door height

;STEP 4: prosc. and stage
APPENDIX A

GLOBAL sh = 1 ; stage height
GLOBAL sd = 5 ; stage depth
GLOBAL sbw = 4 ; stage back width
GLOBAL sfh = h-2 ; stage front height
GLOBAL sbh = sfh-1 ; stage back height

MIRROR 100 200 ; corner (100) and plane (200) offsets for mirrored part

CORNERS

;-- STEP 1 ------------------------------------------------

;floor corners
1 -fsw/2 fsd 0
2 -sw/2 0 0
3 x(2)-pw 0 0
4 -w/2 fld 0
7 -w/2+ew hd flt
8 0 y(4) 0 ; help corner for lock
5 x(4) fld+wl1 lock(4 7 8)
6 x(7) y(5) lock(4 7 8)

;audience surface
;20-21 help corners to lock audience corners at ah above floor
20 x(8) y(8) z(8)+ah
21 x(4) y(4) z(4)+ah
22 x(7) y(7) z(7)+ah

;23-25 help corners to lock receiver positions at rh above audience
;surface (in REC.LOC)
23 x(20) y(20) z(20)+rh
24 x(21) y(21) z(21)+rh
25 x(22) y(22) z(22)+rh

;audience upper corners
30 x(4)+aww y(4) lock(20 21 22)
31 x(4)+aww y(5)-aww lock(20 21 22)
32 x(7)+aww y(5)-aww lock(20 21 22)
33 x(7)+aww y(7)-aww lock(20 21 22)

;audience lower corners
40 x(30) y(30) lock(4 7 8)
41 x(31) y(31) lock(4 7 8)
42 x(32) y(32) lock(4 7 8)
43 x(33) y(33) lock(4 7 8)

;-- STEP 2 ------------------------------------------------

;ceiling
52 x(2) y(2) h
53 x(3) y(3) h
54 x(4) y(4) h
55 x(5) y(5) h
56 x(6) y(6) h
57 x(7) y(7) h

APPENDIX A

;-- STEP 3 ------------------------------------------------

;entrance door
60 x(5)+e y(5) z(5)
61 x(5)+e y(5) z(5)+dh
62 x(6)-e y(5) z(5)+dh
63 x(6)-e y(5) z(5)

;-- STEP 4 ------------------------------------------------

;prosc. and stage
74 x(2) y(2) sh
75 x(1) y(1) sh
76 -sbw/2 -sd sh
77 x(76) y(76) sh+sbh
78 x(2) y(2) sh+sfh

PLANES

;STEP 1: audience and floor planes ------------------------

;audience surfaces
[1 audience surface / 33 32 31 30 130 131 132 133 / audience ]
[2 audience front / 140 130 30 40 / audience ]
[3 audience rear / 143 43 33 133 / audience ]
[4 audience front side / 30 31 41 40 / audience ]
[5 audience middle side / 42 41 31 32 / audience ]
[6 audience rear side / 43 42 32 33s / audience ]

;floor surfaces
[7 front floor / 101 102 103 104 140 40 4 3 2 1 / floorabs ]
[8 sloped side floor / 40 41 42 43 7 6 5 4 / floorabs ]
[9 sloped rear floor / 107 7 43 143 / floorabs ]

;STEP 2: ceiling, backwall, sidewalls ---------------------

[20 ceiling / 52 53 54 55 56 57 157 156 155 154 153 152 / ceilabs ]
[21 back wall / 107 157 57 7 / wallabs ]
[22 side wall front / 5 55 54 4 / wallabs ]
[23 side wall back / 56 6 7 57 / wallabs ]
[24 front flank wall / 54 53 3 4 / wallabs ]

;STEP 3: entrance door ------------------------------------

[30 entrance wall / 5 6 56 55 /
(door / 63 62 61 60 / doorabs)
(wall / 5 6 56 55 / wallabs) ]

;STEP 4: prosc. and stage ---------------------------------

[40 prosc. walls / 2 3 53 52 78 74 / wallabs ]
[41 stage side edge / 2 74 75 1 / swallabs ]
[42 stage front edge / 1 75 175 101 / swallabs ]
[43 stage floor / 176 174 175 75 74 76 / sfloorab ]
[44 stage ceiling / 77 78 178 177 / swallabs ]
[45 stage back wall / 76 77 177 176 / swallabs ]
[46 stage side wall / 76 74 78 77 / swallabs ]
[47 prosc. top / 78 52 152 178 / swallabs ]

APPENDIX A

Geo-file REFLECT.GEO.

;REFLECT.GEO
;PROJECT:CATT-Acoustic tutorial for v8.0
; STEP 6 side-wall reflectors

ABS backabs = <20 30 40 50 60 60> {64 128 128}
ABS frontabs = <12 10 8 7 6 5> {0 0 128}

LOCAL r_w = wl1/5
LOCAL r_h = h-3

LOCAL tx = w/2 - 0.5
LOCAL ty = r_w
LOCAL tz = 2.75

LOCAL ry = -10
LOCAL rz = 15

OBJECT
ROTATE 0 ry rz
TRANSLATE tx fld+ty tz

OFFSETPL 100
OFFSETCO 80
MIRROR 100 200
COPY 5 2 0 0 0 tx fld+2*ty tz 0 ry rz
COPY 10 4 0 0 0 tx fld+3*ty tz 0 ry rz
COPY 15 6 0 0 0 tx fld+4*ty tz 0 ry rz

CORNERS

0 0 -r_w/2 0
1 0 -r_w/2 r_h
2 0 r_w/2 r_h
3 0 r_w/2 0

PLANES

;* = auto edge diffusion + enable in General settings
[0 refl front / 0 1 2 3 / wood* ]
;the back MUST be defined too
[1 refl back \ 0 1 2 3 \ backabs* ]

APPENDIX A

Source-file SRC.LOC.

;SRC.LOC
;PROJECT:CATT-Acoustic tutorial v8.0

SOURCEDEFS

IF step < 5 THEN
A0 0.0 3.0 2.0 OMNI 0.0 10.0 3.0
Lp1m_a = <70 73 76 79 82 85>

B0 1.0 2.0 2.0 OMNI 0.0 10.0 3.0
Lp1m_a = <70 73 76 79 82 85>
ELSE
A0 -2.0 fsd-0.5 sh+1.7 OMNI -2.0 fsd+2 sh+1.7
Lp1m_a = <70 73 76 79 82 85>

B0 1.0 fsd-2.0 sh+1.7 OMNI 1.0 fsd+2 sh+1.7
Lp1m_a = <70 73 76 79 82 85>
ENDIF

APPENDIX A

Receiver-file REC.LOC.

;REC.LOC
;PROJECT:CATT-Acoustic tutorial v8.0

IF step >= 5 THEN
LOCAL dx = 2.2
LOCAL dy = 3
LOCAL y0 = fld+1
ENDIF

RECEIVERS

IF step < 5 THEN
1 0.0 10.0 3.0
ELSE
1 -2*dx y0 lock(23 24 25)
2 -1*dx y0 lock(23 24 25)
3 0*dx y0 lock(23 24 25)
4 1*dx y0 lock(23 24 25)
5 2*dx y0 lock(23 24 25)
11 -2*dx y0+dy lock(23 24 25)
12 -1*dx y0+dy lock(23 24 25)
13 0*dx y0+dy lock(23 24 25)
14 1*dx y0+dy lock(23 24 25)
15 2*dx y0+dy lock(23 24 25)
21 -2*dx y0+2*dy lock(23 24 25)
22 -1*dx y0+2*dy lock(23 24 25)
23 0*dx y0+2*dy lock(23 24 25)
24 1*dx y0+2*dy lock(23 24 25)
25 2*dx y0+2*dy lock(23 24 25)
31 -2*dx y0+3*dy lock(23 24 25)
32 -1*dx y0+3*dy lock(23 24 25)
33 0*dx y0+3*dy lock(23 24 25)
34 1*dx y0+3*dy lock(23 24 25)
35 2*dx y0+3*dy lock(23 24 25)
ENDIF
INDEX


#C, 83
#DIVIDED, 267
#G, 84, 116
#I, 80
#L, 85
%, 84
( ), 94
..., 76
;, 76
[ ], 93
|, 76
*, 94
24-bit, 15
32-bit, 15
3D balloons, 175
3D extents, 174
3D text, 102
3D-view, 50
5-Ch Binaural Setup, 221
5-channel, 228, 229, 247
5-channel simulation, 209

ABS, 86
abs(), 84, 90
ABS_ss.PLT, 67, 128
ABS1, 88
AbsC, 137, 138
AbsCg, 137, 138
ABSLIBS, 3, 26, 153
absolute corner id:s, 92
Absolute Threshold, 21
absorption, 86
absorption changes, 148
absorption coefficient histograms, 67
absorption/diffusion library, 153
AbsTex, 293
ACAD, 5, 268
accurate definition of plane corners, 79
ACLIB.DLL, 3
acoustic environment, 47
adapt rays, 55
addendum, 3, 19
ADD-file, 187, 188, 286
AI, 21
aim(H,V), 111
aiming, 51
air
absorption, 47, 132, 173
density, 47
humidity, 47
Ambisonic, 227, 291
AND, 77
anechoic
WAV info file, 215
WAV-file, 13
ANECHOIC, 4, 13, 28, 198, 235, 237
angle arguments, 84
animation, 56, 64
AniScape, 227, 231
array elements, 169
ARRAY0, 169
arrays, 144, 169
Articulation Index, 21
asterisk "*", 94
audience, 58, 148, 275
audience area, 49
audience area mapping, 10, 20, 53, 132,
133, 146, 284
audience area mapping results, 123
audience edges, 104
audience modeling, 103
audience surfaces, 133
auralization, 135, 288, 292
Auto number, 63
Auto number mapping, 55
Auto time, 64
Auto time mapping, 55
AutoCAD, 38, 94, 103
INDEX

3DFACE, 265, 268
3DMESH, 268
DDATTE, 270
interface, 5, 27, 31, 157, 265
MOVE, 270
STRETCH, 270
AutoLISP, 5, 265, 268
APPLOAD, 268
CATTSCALE, 269
CATT_FIX, 267, 268
CATT_MAIN, 268
CATT_TMP, 268
CHDIRECT, 270
CHSRCAIM, 269
CHSRCPOS, 269
CONV, 268
DELSHDIRECT, 270
EXP, 269
GET, 269
HIDEDIV, 267, 270
IMP, 270
LOAD, 268
MARKFIX, 268, 270
PUT, 269
REC, 269
SETCATTSCALE, 269
SHDIRECT, 270
SHDIV, 270
SHR, 270
SRC, 269
UNMARKFIX, 270
DRAW, 269
automatic edge diffusion, 136
automatic play, 182
aux delay, 205
A-weighted, 58
AWI-file, 112, 202, 215
background calculation, 23
background noise, 47, 57, 116, 140, 191,
193
residual, 57
backup, 42
backward integrated, 66, 143
balconies, 133
Barron M., 291
batch processing, 253, 289
batch run, 23
Bauck J. L., 291
beam-steering, 169
Beranek L., 291
B-format, 227, 229, 246, 291
1st order, 227, 246
2nd order, 227, 246
3rd order, 227, 246
KLMNOPQ, 227
RSTUV, 227
WXYZ, 227, 246
binaural, 226, 229, 245
binaural down-mix, 223
binaural post-processing, 288
bitmap-file, 29
blank lines, 76
Blumlein, 226
Borwick J., 291
Bradley J. S., 291
BREAK, 78
C-50, 15
C-80, 138, 193
CAD-file, 24
CAD-file format, 266
CAG-file, 234
calculation recommendations, 146
calibration, 243
calibration count, 202
camera, 50, 186
camera position, 19
cardioid, 228
categories, 155
category, 154, 158
CATT, 34
CATT 3D-viewer, 2, 9, 27, 51, 122
CATT play-list, 203
CATT32.EXE, 2, 29
CATTDATA-folder, 1
CATTED32.EXE, 2, 263
CATT-Edit, 263
CATT-Edit font, 263
CATT-folder, 1, 2
CATTOGL32.CHM, 51
CATTOGL32.EXE, 2
INDEX

CATTPLT32.EXE, 2, 179
CATT-registered files, 24
CATT-SD0, 26, 162
CATT-SD1, 26, 165
CATT-SD2, 161
CATT-VRoom, 35
CATT-Walker, 3, 25, 68, 118, 129, 202,
209, 227, 233, 259
CF1, 171
CF2, 171
Chalmers, 34, 291
character case, 76
character set, 24, 263
CIRC (marker), 101
Clarity, 138
CLF, 40, 291
CLFViewer, 172
closed model, 53
Closest, 59
CMB-file, 53, 62, 68, 122, 127, 131, 187,
188, 286
COINFO.PLT, 49, 105, 122, 277
collection files, 26
collections, 3
COLORED.PLT, 49, 121
comments, 76
connecting to adjacent planes, 103
constants, 147
control rooms, 32
convert
to ANSI, 263
convolution, 197, 230, 234, 240, 259
Cooper D. H., 291
coordinate system, 31
copy
3D view, 181
a GEO-file, 41
bitmap, 181
Meta-file, 180
COPY, 83, 148, 282
copyright, 4, 19, 219
corners
previously defined, 91
single-connected, 52, 103
used, 52
CORNERS, 79, 89
cos(), 84
cos
2
weighted, 127
create a GEO-file, 41
create project, 273
Create Project, 6, 41
Cremer L., 291
crosstalk cancellation, 213, 248, 261
crosstalk cancellation filters, 214
cube(), 84, 90
cut(), 91
CWI-file, 129, 209, 233
D-50, 138, 193
Dalenbck B.-I., 292
DASH (marker), 100
data flow, 25
data output, 32
DATA32.DLL, 3
DDI, 3, 32, 144, 159, 172
debug, 51
DEBUG.TXT, 51, 122, 150
decimal character, 24, 76, 275
default diffusion, 48, 88
delay, 59, 114
Deutlichkeit, 138
diffraction, 135
diffuse reflection, 14, 47, 138, 147, 283,
292
estimate, 87
frequency dependent, 134
order, 61, 126
diffusion, 86
direct sound, 13, 63, 133, 135
directives, 79, 80
directivity, 144, 159
balloon, 17
collections, 159

INDEX

contours, 20, 49, 51, 59, 122, 175, 178
factor, 178
index, 168, 178
polar charts, 175
DISC (marker), 101
disproportionate rooms, 135
DLL Directivity Interface, 3, 32, 159, 172
Dolby Surround, 223
doppler, 236
double-sided planes, 93, 98, 122
duplicate
corner id:s, 52
corners, 52
plane ids, 52
planes, 52
DXF, 27, 265
DXF2GEO, 2, 31, 265
DXF-file, 265
Dynamic Link Libraries, 3
E_rr.TXT, 193
E_rr_INT.PLT, 193
E_rrX.TXT, 194
E_ss_rr.ADD, 62, 68, 127, 131
E_ss_rr.ECH, 62, 68, 127, 131, 191,
192, 197
E_ss_rr.TXT, 64, 129
E_ss_rr_INT.PLT, 66, 128
E_ss_rr_oct.PLT, 65, 127
ear integration, 143
Early Decay-Time, 140
early part, 134
early part detailed ISM, 10, 60, 132, 133,
146, 284
early part detailed ISM results, 125
early part response, 231
ECH-file, 187, 198, 224
echo, 149
echo-disturbance, 66, 128, 141
echoes, 149
echogram, 143
echogram ISM, 61
echogram smoothing, 16
echograms, 65
edge
contours, 49, 122
diffusion, 48, 137
penetrating, 52
EDT, 140
EKgrad, 66, 128, 141, 193
electro-acoustical source, 174
e-mail, 36
Energy relations, 291
eq/gain, 226
Err_nn_oct.PLT, 192
ERRORS32.DLL, 3
estimate(), 87
EXAMPLE, 5
Example model, 105
EXCLUDE, 82
exp(), 84
export
of absorption data, 154
of bitmap-file, 180
of maps for spreadsheet, 180
of Meta-file, 179
to AutoCAD, 38, 265, 266, 270
to Merged GEO, 41
to MRK, 40, 88
to VRML, 38
expression, 84, 89
External CATT Tool, 11
Eyring, 137
Eyring RT, 69
EyrT, 137
EyrTg, 137
F1, 19, 24
FALSE, 77, 84
field of view, 50
figure-of-8, 228
file calibration, 204
file conversion, 210
file scaling, 204
file-name syntax, 37
filter, 65
INDEX

rectangular, 65
exponential, 65
triangular, 65
first-order surface id:s, 62
floating point values, 76
font-size, 13
forward integrated echogram, 143
fractional delay, 226
free path histograms, 67
frequency range, 32
frequency response, 200
FROMBACK, 82, 94
FROMFRONT, 82, 94
frontal normalization, 218
full detailed calculation, 10, 63, 132, 134,
146, 285
full detailed calculation results, 127
functions, 30
G (strength), 139
Gade, A.C., 292
Gain, 205
Gain_a, 177, 190
GEO-file sections, 79
GEO-file tree, 27, 42, 80
geometrical acoustics, 32, 71
geometrical errors, 150
geometry view and check results, 121
Gerzon M. A., 291
GETGLOBAL, 79, 85, 116
GETLOCAL, 9, 79, 85, 110
GLOBAL, 6, 79, 84, 116
graph color, 16
H_ss_rr_oct.PLT, 62, 126
hardware locks, 1
hardware requirements, 29
head-direction, 46, 115, 116, 139, 246
headphone, 203, 211, 221, 243, 246
eq, 261
equalization, 4
filters, 13
HEADPHONES, 4, 13, 28, 198, 220
Head-Related Transfer Functions, 4
HeadScape, 15, 28, 232, 233
head-tracking, 28
help, 24, 264
help button, 19
help-file, 3
hidden lines, 88
hidden options, 20, 126
HIDDENOPTIONS.TXT, 20
Hilbert transform, 244
history file, 20
history plot, 15
HITS_ss.PLT, 67, 128
Hodgson M., 292
holes, 94
Houtgast T., 292
HRTF, 4, 203, 217, 218, 245
interpolation, 245
library, 13
normalization, 219
HRTFS, 4, 13, 29, 198
HTML, 40
HTR-file, 232
HURON1, 232
hyper-cardioid, 228
I_ss_rr.TXT, 126
I_ss_rr_oct.PLT, 61, 126
IACC, 213, 226, 248
IEC 2068-16, 292
IF-THEN-ELSE statements, 77
Image Shift, 21
Image Source Model, 133
image source space, 62
Image Spreading, 21
imperial units, 31
import
of absorption data, 153
of directivity, 162, 165
impulse response, 197, 242
display, 199
INDEX

inaccurate corners, 52
incidence angle distribution, 247
INCLUDE, 45, 78, 80, 148
input folder, 44
input/output files overview, 25
installation, 1
AutoCAD interface, 268
Inter-Aural Cross Correlation Coefficient,
213, 248
Inter-Aural Cross Correlation Function, 248
interference, 58, 189
interpolated, 168
INTERPOLATED0, 168
IR, 197
IS0 3382, 292
ISM, 60, 133
Jacobsen T., 292
Kotorynski K., 292
Kuttruff H., 292
Lake SIM-file, 199, 229
Lake Technology, 293
Lambert, 86
Lambert's law, 133
late part response, 232
late part reverberation, 247
Lateral energy fraction, 139
lateral reflections, 291
Latest Results List, 41
law of the first wavefront, 188
leaks, 129
LEAKS_ss.PLT, 129
Lee L.-J., 291
lens angle, 50
LF, 60, 139, 193
LF_oct.PLT, 123
LF_oct_n_3D.PLT, 124
LFC, 139, 193
LFDIR_oct.PLT, 60, 124
LFDIR_oct_n_3D.PLT, 124
license, 19
expiry date, 19
file, 3
LINE (marker), 100
list-file, 181
LMB, 184
LOAD (marker), 102
LOCAL, 6, 79, 85, 110, 116
lock(), 91, 276
locking corners, 91
log(), 84
log10(), 84
long filenames, 24
loops
for planes, 96
loop(), 79, 92
notes, 119
override ids, 117
recloop(), 117, 264
recloop2(), 117, 264
recwalk(), 117, 118, 264
lost rays, 152
loudspeaker
correction, 214
listening, 213, 248
Lp_max, 112, 113
Lp_nominal, 112
Lp_pink Lpa1k, 112
Lp_pink Lpea1k, 113, 114
Lp_voice_IECfemale, 112
Lp_voice_IECmale, 112
Lp_voice_loud, 112
Lp_voice_normal, 112
Lp_voice_raised, 112
Lp_white Lpa1k, 112
Lp_white Lpea1k, 113
Lp1m_a, 7, 111, 190
Lp1m_ea, 190
MakeWalkerBinDec, 2
manifest-file, 5
map height, 58, 123
map step, 58
mapping
INDEX

scale, 15, 60, 183
time intervals, 59, 60
MAPRAYFACTOR, 55, 111
margins, 180
marker elements, 31
marker files, 26
marker-file, 40, 99, 102, 161, 174
Markers, 99, 264
MARKERS, 79
Marshall A. H., 291
MASTER.GEO, 6
master-file, 45, 79, 275
MASTFULL.GEO, 273, 295
MASTSTEP.GEO, 273
MATLAB, 210, 211, 229, 230, 293
Max SPL, 174
maximum file size, 263
MDI, 29
mean absorption coefficient, 138
mean free path, 138
menus, 11
merge planes, 41, 265
Meta-file, 29, 179
METER32.DLL, 3
microphone, 226
microphones, 246, 291
mini tutorial, 6
minimum phase, 244
mirror, 30, 79
MIRROR, 82, 148, 271, 276
mixing shape, 138
MLSSA, 16, 210, 211, 229, 230, 293
MLTVLV32.CHM, 5
MLTVLV32.EXE, 5
modeling, 273
notes, 103
tips, 271
mono, 229, 246
morphing, 236
moving around, 236
Mller H. A., 291
multiple directives, 77
multiple source auralization, 187, 197, 205,
207
MultiVolver, 5, 15, 209, 223, 228, 236, 247,
249
MULTPLT.TXT, 192
natural source, 173
negative numbers, 77
NOHIDELINES, 88
noise mapping, 47, 56
NOISEMAP_oct.PLT, 124
NOISEMAP_oct_3D.PLT, 124
normalization, 220
diffuse, 219
frontal, 219
plain, 219
other, 219
normalized parameters, 64, 140
normalized values, 68
NOROOM, 5, 40, 88
NOT, 77
NTREND_ss.PLT, 68, 129
number of
characters in names, 157
characters in names, 77
corners, 30
planes, 30
rays, 127, 135
rays full detailed, 63
rays mapping, 55, 123
receivers, 32
sources, 32
sub-divisions, 30
surface properties, 30, 31
OBJECT, 79, 80, 282
octave-band, 37
offset, 99
OFFSETCO, 81, 89, 282
OFFSETPL, 81, 282
OGLSWITCH32.DLL, 3
omni, 228
OMNI, 111, 114, 190
omni-directional source, 159
INDEX

Open Recent, 11
open rooms, 135
Oppenheimer A. V., 293
OR, 77
origin, 31
ORIGIN, 81
output folder, 44
overlapping planes, 52, 53, 103
Page Setup, 180
page size, 180
palette
for color mapping, 184
for shaded 3D plots, 184
PARAM.TXT, 194
param_oct_3D.PLT, 124
PARAM_ss.TXT, 131
PARAM_ssX.TXT, 131
paramDIR_oct_3D.PLT, 124
parameter
map, 67
trend, 68
parametrical modeling, 266
PARAMn_ss.PLT, 67, 129
PARDIRn_oct.PLT, 59
PARn_oct.PLT, 59, 124
PARnDIR_oct.PLT, 124
PATH_ss.PLT, 67, 128
phase, 58, 123, 189
Phone/fax, 36
PI, 21
Pickover C. A., 293
plane
corner entering order, 49, 93, 94
definitions, 93
ids used, 52
sub-division, 30, 94, 95, 278
use, 46
plane-line intersection, 91
PLANES, 7, 79, 93
Play WAV-file, 182
PLINFO.PLT, 49, 122
Plomp R., 292
plot-file, 179
plot-file control, 14, 19, 179, 182, 184
plot-file frame, 183, 185
plot-file lists, 181
plot-file viewer module, 29
PLT.TXT, 27, 121
polar charts, 175
POLY (marker), 99
POSTPLT.TXT, 28, 231
post-processing, 62, 68, 191, 197, 259
data flow, 197
PP, 197
PPW-file, 24, 235
prediction, 257
Prediction module, 26, 37
prediction output-files, 121
Preferences, 11
printer, 180
programname.CHM, 3
programname.HLP, 3
programname.PDF, 3
project name, 44
PROJECT.TXT, 6
protect directivity data, 169
PST-file, 197
PureVerb, 5, 227, 228
PUREVERB32.CHM, 5
PUREVERB32.EXE, 5
R_ss_rr_INT.PLT, 128
R_ss_rr_oct.PLT, 66
Randomized Tail-corrected Cone-tracing,
63, 134
RApid Speech Transition Index, 140
RASTI, 47, 57, 58, 68, 124, 129, 140, 191,
193, 292
RASTI.PLT, 57, 124
RASTI_ss.PLT, 68, 129
RASTI_with_noise_3D.PLT, 124
RASTI_without_noise_3D.PLT, 124
INDEX

ray truncation time, 55, 64, 123, 127
ray-tracing, 133
REC.LOC, 6, 45
receiver
file, 45, 115, 281
id, 37
location, 116
model, 226, 245
positions, 148
RECEIVERS, 7, 115, 116
REFLECT.GEO, 273, 298
reflection
analysis, 60
density, 247
density growth, 134
history, 62
path magnitude, 243
path transfer function, 243
path transfer function phase, 244
transform-size, 225
reflectors, 148, 282
REFLINFO.PLT, 49, 122, 282
REPEAT, 255
reserved characters, 76
RETURN, 78, 150
reverberation time, 137
reversed
normals, 103
planes, 52
RGB-color, 6, 99, 264
Rise time, 127, 143
RMB, 184
rnd(), 84, 90
rnd2(), 84, 90
roll angle, 111
room acoustic parameters, 33
Room Acoustics, 291
room acoustics measurement systems,
291
ROTATE, 80
RT, 137
RT overview, 67
RT_ss.PLT, 67, 128
RT, 59, 138
RTC, 63, 132, 134
RULE (marker), 100
S_ss_rr_oct.PLT, 62, 127
Sabine, 137
Sabine RT, 69, 104
SabT, 137
sample-rate, 225
conversion, 212
SAY, 77
SCALE, 80, 110, 114, 116, 117, 150
scale factor, 199
scale factors, 242
scattering coefficient, 133
Schafer R. W., 293
Schrder, 128
Schrder M., 71
Schultz T., 291
SCL-file, 202, 204, 234
screensaver, 15
SD, 3, 26, 159
SD0, 159, 170, 176
SD1, 159, 171, 176
SD2, 144, 159, 172, 177
SD2DATA, 4, 160, 161, 172
sector processing, 246
sensitivity, 164, 167, 174
Separate Echo, 21
sequence processing, 253, 289
Sequence processing module, 29
SHADED.OGL, 9, 51, 122, 277
SHADED.PLT, 49, 121
SHIFT, 80
shoebox, 6
SHOEBOX, 4
Shuffler, 248
SI units, 31
SII, 21
SIM-file, 198, 199, 204
addition, 205, 261
filtering, 211
INDEX

sin(), 84
slanted ceilings, 147
slanted floors, 147
smoothed
echogram, 127
responses, 65
smoothing, 61
soffit-mounted source, 149
software overview, 29
Sone, 143
Sone-scale, 16, 61
sort order, 157
sound roses, 66, 128
soundcard, 29, 198
source
addition, 27, 62, 68, 187, 197, 286
aim, 49
combination, 187, 188
combination data, 27
directivity, 3, 26, 32
directivity module, 26
file, 45, 110, 280
id, 37
roll angle, 49
source addition module, 27
SOURCEDEFS, 7, 110
space bar, 268
SPECTRA.PLT, 194
SPECTRA_ss.PLT, 68, 129
spectrogram, 201
specular reflection order, 61, 126
specular reflections, 63
Speech Intelligibility, 292
Speech Intelligibility Index, 21
speech levels, 140
Speech Privacy Index, 21
speech spectrum, 114
Speech Transmission Index, 16, 140
speed of sound, 132
sphere HRTFs, 217
SPL, 60, 193
SPL_oct.PLT, 60, 123
SPL_oct_n_3D.PLT, 123
SPLcont, 59
SPLdir, 59
SPLDIR_oct.PLT, 123
SPLDIR_oct_n_3D.PLT, 123
spline interpolation, 244
spread-sheet
export, 33
programs, 131
sqr(), 84, 90
sqrt(), 84
SRC.LOC, 6, 45, 110
src.PLT, 192
SRCINFO.PLT, 49, 121, 187, 191
SRCINFO3D.PLT, 49, 122
Stage support, 63, 142
startup.PLT, 179
statistical properties of the room, 134
statistics, 67, 70, 124
statusbar, 24
STearly, 63, 142
Steeneken H. J. M., 292, 293
stereo, 229
STI, 16, 21, 47, 57, 58, 68, 124, 140, 191,
292
STI_name.PLT, 124
STI_name_with_noise_3D.PLT, 124
STI_name_without_noise_3D.PLT,
124
STI_ss.PLT, 68
STlate, 63, 142
stopband suppression, 226
Strength, 139
string constants, 30, 84
STRNGS32.DLL, 3
STtotal, 63, 142
studios, 32
super-cardioid, 228
surface
graph, 180
properties, 3, 13
INDEX

properties module, 153
Surface properties module, 26
sweetspot, 250
SWITCH32.DLL, 3
symbolic constants, 30
symmetrical halls, 79
syntax
GEO/LOC, 264
Marker, 264
T-15, 137
T-30, 137
TAB, 76
tail sectors, 246
tan(), 84
temperature, 47
template
markers, 264
source, 264
template.PST, 198
template.PRD, 37
TEXT (marker), 102
The FIReverb Suite, 5, 35
time-constant, 16, 65
of the ear, 143
TIM-file, 210
tips and tricks, 147
toolbar, 19, 186
Toole, F. E., 293
tools, 30, 79
tooltips, 19, 186
TOTABS, 86, 148, 151, 157
TOTREF, 86, 157
trademarks, 1
TRANSAURAL, 214
TRANSLATE, 80
transparency, 86, 87, 145
tree-structure, 78
TREND1,2.PLT, 194
TREND3.PLT, 194
TRENDn_ss.PLT, 68, 129
trouble-shooting, 150
TRUE, 77, 84
truncation time ISM, 61
Ts, 193
tutorial, 273
TUTORIAL, 5, 273
U50, 21
UNCTT.EXE, 2
under-balcony positions, 135
unit, 77
user interface, 11
user-supplied information, 6
V_ss_rr_oct.PLT, 66, 128
variables, 254
vectorgram, 66, 128
view
angles, 50
distance, 50
VIEW4.PLT, 48, 121
virtual reality, 198
visuals, 174, 176
vocal effort
loud voice, 115
normal, 115
raised, 115
volume, 49, 71, 121, 131
calculation, 103
estimate, 53
VRML, 27, 34, 38
WalkDecim, 3
Walker.CAG, 25, 68, 129
walkthrough convolution, 35, 236
walkthrough convolver, 15, 232
script-file, 237
wall hit statistics, 67
warnings, 13
warped planes, 129
WAV-calibration, 260
WAV-file, 179, 181, 182, 185, 198, 202,
204, 207, 210, 211, 230, 231
WAV-file addition, 207
INDEX

WAV-file info, 112
WAV-file player, 203, 236
WCS-file, 237
white
space, 76
spectrum, 149
WinFlag, 293
wire-frame, 184
WRL-file, 24, 40
www, 36
x(), 91
XOR, 77
XTRA32.DAT, 3
XTRA32.DLL, 3
XY-stereo, 226, 246
y(), 91
z(), 91


ADDENDUM TO PRINTED MANUAL
This document lists manual clarifications and all additions after printing of the v8.0g:2 manual in Aug
2007 and covers up to v8.0h:1 in Sept 2008. v8.0h:1 updated a big number of modules due to internal
library changes, the actual functionality changes are listed below.
The help-file (CATT32.CHM) is always up to date as are dedicated help-files such as for CATTOGL32.CHM
for the 3D-Viewer (CATTOGL32.EXE). News is added from the top in each section.
Manual clarifications
Page 38: VRML has since some time been replaced by the X3D format but one version of X3D is
essentially VRML (minor header differences) and e.g. the http://www.octaga.com X3D player can read the
exported WRL files.
Page 122: Additional docs about the addition of plane GEO-file:line-number readout in the
PLINFO.PLT plot-file: planes created using COPY will all have the same line number.
Page 113: the Max SPL values on axis as set in the Directivity module for an electro-acoustic sources and
uses as Lp1m_ea = Lp_max are not available for CLF sources ( .CF1 and .CF2).
Page 64: when using the Prediction Full detailed calculation option Late part ray-trace, do not put
receivers close to surfaces (such as the audience). With this option the receiver sphere size grows, as in
the RTC, until it hits the closest surface and from that point ray-tracing is used and ray-tracing with a
small receiver sphere will give a larger random error requiring many more rays.
Page 191: the Ref. SPL spectrum selection documentation is missing, refer to the help-file.
12. References
A useful reference regarding coupled rooms and the use of Late part ray-tracing in Full detailed
calculation:
[Summers-2005] Jason E. Summers, Rendell R. Torres, Y. Shimizu, Bengt-Inge L. Dalenbck
Adapting a randomized beam-axis-tracing algorithm to modeling of coupled rooms via
late-part ray tracing
J. Acoust. Soc. Am. 118, 1491 (2005)
Prediction module
v8.0h:1 Full detailed calculation and Audience area mapping speedup via parallel processing
As was indicated below with v8.0g:3 Interactive RT estimation speedup it was uncertain if any further
parts of CATT-Acoustic would utilize parallel processing due to the fundamental algorithm changes
required but a safe transformation procedure was developed and the ray-tracing in Full detailed
calculation as well as Audience area mapping ray-tracing now runs multi-threaded and will use all cores
(CPUs) of multi-core PC, for a single-core PC it will be the same speed as before. The actual calculation
speed depends on case ranging from no increase for a simple model to 2x for a dual-core and 4x for a
quad-core and a complex model. However, multi-element SD2 arrays especially will so far not benefit
from the multi-threading since the main benefit is on the ray-reflection calculations so for cases when the
array calculations are significant the speedup cannot reach full potential. If, for some reason - such as
running another type of calculation in parallel, making full use of all cores is not desired a Preferences
Addendum to Printed Manual for v8.0h:1
2
option allows limiting the ray-tracing to one core. This setting does not affect Interactive RT estimation
that will always run on multiple cores being intended as an interactive type of calculation.
v8.0h:1 A new prediction display Time trace
At the bottom of the Prediction settings dialog is a new button Time trace plot-file...,
showing a dialog with options on tracing rays one time segment at a time creating a
3DA PLT-file (i.e. a file with animated frames, each frame representing one time
segment):
Band: selects the octave-band for which the time trace holds.
No of rays: the number of rays to use, 10k is a typically sufficient
number for most (not very big) rooms.
Max time: the max time to trace the rays (counting from the source
excitation unlike with all measures that start counting when the direct
sound hits a receiver). If an electro-acoustic source has a delay of
say 10 ms no rays will appear from that source until after 10 ms, if a
source has a delay it is indicated below the source position. Typically
good values for Max time are 100-200 ms but is case dependent.
Time step: the time step from frame to frame. If a small value is selected and many rays it will be more
like a wave-front display but will also create a big plot-file (> 50 MB not uncommon, if the resulting file will
be huge there is a warning given and the processing may even be aborted, see more below). Typical
good values are 1-2 ms but is case dependent, up to 10 ms (= 3.4 m) is allowed but is hardly useful
except in big models or quick initial tests.
Max order: the max reflection order of the rays traced, the value depends on what is to be illustrated,
selecting 0 will show only the direct sound, selecting 1 will give one wall reflection etc.
Min level: to how low relative level the rays from a source are to be traced counted from the level at 1m
on axis, the value depends on what you want to illustrate. This value does not include the 1/r
2
spreading
but only directivity, absorption, scattering and transmission losses. For example, selecting -20 dB will not
show any rays at the rear of a directive speaker with < -20 dB rear suppression, or for an omni, rays that
have hit two pure absorbers with = 0.90 (10 log((1-0.9)(1-0.9)) = -20 dB) will be truncated.
Scale max: what SPL is represented by pure red on the color scale, this affects only what colors are used
for each level and not the calculation as such. Rays with a higher level than the Scale max will be shown
gray (the first few frames will typically have a very high level due to 1/r
2
with r < 1m) while rays with a
level the scale min will be black. For example, for a simple electro-acoustic source where 80 dB is set
on the axis at 1m (Lp1m_ea or Lp1m_a + Gain_a) a Scale max of 80 dB will give red for rays at 1m on
axis and then lower colors further out as 1/r
2
decreases. Since it seldom is useful to see the levels very
close to a source it is better to set a Scale max closer to the SPL that what will be at the audience. With
distance dependent SD2 arrays it is more complicated to set an initially good value but start with few rays
and Max order 0 to find a good value. When the direct rays that hit the audience are red it is a good
setting of Scale max for normal use.
Ray length: the Time step, n px wide choices use a ray segment length equal to the Time step, the
Relative, n px wide choices use a short ray length relative to the room size (room diagonal / 200) unless
that leads to a longer ray segment than the time step. The 2 and 3 pixel choices make rays more visible
but the drawing a little slower, it is most useful when the number or rays have to be few to cut down the
calculation time or plot-file size.
Show lost rays: this can be a useful option in an actual open room / outdoor case (or if only a few model
planes are used in an otherwise closed room, like e.g. reflectors and an audience), otherwise it will not
matter since no rays (should) escape.
Addendum to Printed Manual for v8.0h:1
3
On: rays that escape will be visible until they hit an invisible surface just outside the model's max extents.
Off: rays that never hit anything at all will not be seen at all.
Show receivers: shows, for reference, the normal receivers with their ids.
Write plot-file to temp folder: the plot-files can be very big (> 50 MB not uncommon) but are typically quick
to create (for normal sources) so it may be better to let them be created in a Windows temporary folder so
that they will be overwritten each time rather than to have several of these big files in every project output
folder cluttering the disk. If the plot-file size is estimated to be > 50 MB a warning is given (indicating the
estimated size) before it is created.
OK: starts the processing and when done loads the plot-file for viewing, the plot-file name is
TIMETRACE_oct.PLT in the output folder or a in a Windows temp folder if Write plot-file to temp folder is
selected. NOTE: for big plot-files, when loading the file in the viewer and building the frame structure with
lots of little ray segments can take some time during which you will see the hour-glass cursor. Less than
50 MB is quick enough though. During calculation the processing dialog indicates the estimated size as
time segments are created and if the size exceeds 200 MB the calculation is aborted and lower settings
have to be selected.
The calculation time grows as follows: with the number of sources and rays, with the Max time, the Max
order and inversely with the Time step but is mitigated by a high Min level. Normal sources are fast but
SD2 arrays with many elements take much longer time since the distance dependent directivity has to be
evaluated for every time step and not only at receiver hits as in normal prediction. If the calculation
seems to take too long, or the file size too big (see processing dialog) Stop it and you are back at the
Time trace dialog and can adjust some settings and try again. Time trace will not run multi-threaded in
the first version but that would anyway not affect the longer calculation times of SD2 arrays (to evaluate
the directivity of a 16-element array of CF2 or SD3 elements will take roughly 50 times longer than a
simple source (as with other prediction methods, up to the second wall hit in the time trace it is evaluated
every time step, from then on the far-field directivity is used).
To make a display like this meaningful, randomized diffuse reflection and transmission cannot be used
explicitly (the display would just show a big mess) so what you see is only the specular fraction affected
by
- source level
- directivity (distance dependent for an SD2 array)
- absorption (1-) at each wall hit
- scattering (1-s) at each wall hit
- transmission (1-) at each wall hit (if a semitransparent wall)
- air absorption
- 1/r
2
(the distance dependent directivity of an SD2 array will give the 1/r near-field behavior)
where the scattered and transmitted fraction is considered lost. This is actually a good thing in a display
like this since it allows for more clear checking of e.g. problematic back wall reflections and similar since it
only the potentially echo-creating specular fraction will be seen.
The Time trace plot uses the selected Geometry view/check 3D view so if Edit|Copy 3D-view to PRD
the selected view will be used the next time trace. It is often best to use a parallel perspective (P) and
then use the X Y Z keys to get useful views.
WARNING: this type of display has been requested by some users and it is only after a very long
hesitation it has been implemented. The reason is that the time trace is a source-centered display rather
than a receiver-centered display and it is difficult to deduce from the display what an echogram at a
certain receiver looks like, and it is the echogram that decides what the listener hears. A time trace may
look great (in some sense) but there may still be bad echograms at the receivers. In this display, when
rays arrive at a listener position, you have to mentally consider that the listener actually hears nothing
until the direct sound arrives and then hears everything relative the arrival of that direct sound, this part is
Addendum to Printed Manual for v8.0h:1
4
not (cannot be) shown in a display like this but is included in all other prediction functions that are to be
considered acoustically more relevant. For example, using a 100 ms Max time will not show any
reflections at all at a receiver located 34 m or more from the source (since the direct sound itself takes
100 ms to arrive 34 m) while it will show some reflections for positions closer to the source so it is
deceptive, especially in long rooms.
What may be useful ways to use the time trace display are:
see overall room shape problems (like a curved rear wall but that should be rather obvious anyway)
find problematic reflections (but if the model is big it will require many rays and a high Max order)
investigating reflector coverage (probably clearest to switch off all planes but reflectors and audience
and use Max order = 1)
indicate room shape problems to non-acousticans but in many ways this is a too simplistic way of
looking at sound and the visual aspect of the display may take precedence over actual usefulness and
facts, this display should only be a complement not the main argument.
when, in time, the sound field seems to become diffuse due to the "mixing" by the room geometry (but
it is likely to be diffuse before that time due to scattering in this display only indirectly shown by
weakening of the specular rays).
for sound systems, to visualize how loudspeaker delays work.
get some insight in how coupled volumes or stage houses may work (but to really see coupled cases
both Max time and Max order has to be high so the plot-file will be very big and slow to work with).
teaching students new to acoustics, I think this is probably the best use. It will also give some insight in
how prediction works (direct sound and specular part at least).
By varying especially Max order and Min level it is possible to emphasize certain things more clearly. It is
necessary to limit the number of time segments in some way (or it would be information overload and the
display useless) but it can also mean that essential reflections are never discovered, to go from what this
display alone shows to what a listener actually hears is a long way so the advice is to use this display with
caution.
v8.0h:1 Hidden option for not calculating contours
The old hidden option (AC5D6-3EC76-0A444-9B627) for not calculating any contours is operational
again. This is useful with some complex DDI ARRAY0 arrays for which it may take quite some time to
calculate (but they only have to be calculated once). At the same time these types of arrays seldom have
the main lobe on axis so the contours are not really meaningful.
v8.0g:4 Faster animation echogram drawing
The Full detailed calculation animation option uses a faster curve drawing technique for the echograms so
that animations will run faster.
v8.0g:4 ISM ray bundle plot
The Early part detailed ISM / Refl. history plot has a new option dialog including an
option to also create a file that shows all rays for all orders (J_ss_rr_oct.PLT).

Addendum to Printed Manual for v8.0h:1
5
v8.0g:3 Interactive RT estimation speedup
Interactive RT estimation ray-tracing now runs multi-threaded and will use all cores of a dual or quad core
PC, for a single core PC it will be the same speed as before. The actual calculation speed depends on
case ranging from no increase for a simple model to twice (for a dual core) and a complex model.
Note: if any further main parts of the current CATT-A will be rewritten to use more than one processor is
uncertain. The global ray-tracing used in Interactive RT estimation uses a much simpler algorithm than
Full detailed calculation and Audience area mapping, that also have many options added over time such
as for animating rays, and was reasonable and safe to rewrite for parallel processing while in most cases
an algorithm has to be written with that in mind from start. Converting an old complex algorithm is
difficult, will lead to new bugs, and to further complicate it, a multi-threaded application is also harder to
debug.
v8.0g:3 Sub-division check
New plane sub-division checks that will give error messages:
if, in a case where sub-divisions are on top of each other (typically door and window in a wall, see Fig.
2.3c page 95), the last division is not the complete surface
if only one sub-division is defined.
Source addition module
v8.0g:4 Overall SPL eq
An option where the source level and spectrum can be changed for all sources
simultaneously. Typical use is with optimizing a system regarding IEC STI where
the overall level affects the results both in relation to the background noise
(raising the SPL will increase STI) and the absolute SPL (due to level-dependent
masking, raising the SPL too much will decrease STI). In the Utilities|Show
Source Combination display and text-file results the eq spectrum is indicated
and shown added to all source levels. This setting affects all results as well as any created or recreated
ECH-files but is to not saved when the Source addition dialog is closed. Note: this is aimed for
experiments and so far no checks are performed if e.g. a calibrated DDI array after overall SPL eq get a
gain > 0.0 dB.
Directivity module
v8.0g:4 more decimals in SD2 polar plot distance
DLL Directivity Interface (DDI)
v8.0g:4 A new DLL for d&b audio J-series curved line arrays
A new DLL for d&b audio J-series (DandB_CATT). The rules for the number of possible cabinets are
complex and depend on array curvature, frame angle and other details and are not taken into account,
refer to the d&b audio ArrayCalc software for determining possible combinations. Be sure to read the
DandB_CATT.PDF help (press the Help button after a new J-series SD2 has been selected) that contains
info about how the DLL operates.
Addendum to Printed Manual for v8.0h:1
6
v8.0g:3 A new DLL for Renkus-Heinz Iconyx
A new DLL for Renkus-Heinz Iconyx IC8, IC16, IC24 and IC32 DSP-controlled line arrays. This DLL is
different from most other DLLs since it requires use of an external software (Renkus-Heinz BeamWare 1)
to create the FIR-filters. When a new Iconyx SD2 is created a default FIR-filter set is used but for any
further use BeamWare 1 is required. Be sure to read the Iconyx_CATT.PDF help (press the Help button
after a new Iconyx SD2 has been selected) that contains info about how the DLL operates and where to
obtain BeamWare 1.
v8.0g:3 Updated DLL for Active Audio StepArray
The StepArray DLL uses a new set of steering parameters and the SA250S model is added. Any old
StepArray SD2-files will fail, contact Active Audio for information about how to convert old parameters.
Surface properties module
-
Post-processing and CATT-Walker (full version)
v8.0g:4 Faster SIM/CWI-file info IR drawing
The SIM/CWI-file info dialogs optionally uses a faster curve drawing technique for the case where the
number of data points is higher than the number of pixels.
CATT-Walker
v1.1f (with v8.0g:4) Direct B-format output
CATT-Walker has Output Format options Binaural (same as previous versions) and the new B-Format. B-
format requires a 4-channel capable soundcard to be installed and selected and an ambisonic
loudspeaker decoder to be used externally. For details see Walker.PDF.
Sequence processing module
-
Plot-file viewer module (and standalone PLT-viewer)
v2.1b (with v8.0h:1) Increased number of corners
The surface display in PLINFO.PLT could be wrong for planes with many corners (>100), the limit has
been increased to 200.
v2.1b (with v8.0h:1) Better memory handling of big plot-files
CATT-Edit
v2.1b (with v8.0g:4) Two optional user templates for source file data
Addendum to Printed Manual for v8.0h:1
7
The text-files Template_src_1.txt and Template_src_2.txt in the CATTDATA folder can be used
for custom source data that will inserted when the menu Template | Source | Template_src_1.txt or
| Template_src_2.txt is selected.
CATT 3D-viewer
v2.1c (with v8.0g:4) Markers back on
v2.1b by mistake removed viewing of markers, now they are back again.
AutoCAD interface and DXF2GEO
-
The FIReverb Suite (full version)
PureVerb
v4.0c (with v8.0h:1) DI and room dimension Gang options
The Directivity Index and the Room dimensions have Gang options. For the room dimensions it changes
all dimensions simultaneously with the same factor (drag any of the three sliders).
MultiVolver
v4.0d (with v8.0h:1) Minor fixes
Internal WAV-file library changes.








Dxf2Geo v1.0d Help Copyright CATT 2004-2007
All products mentioned are trademarks of their respective owners
Dxf2Geo is a small utility that converts AutoCAD ASCII DXF files to CATT-Acoustic GEO-files.
Although heavily associated with how AutoCAD works internally, DXF is also created and read by many
other CAD programs since it is an open format so it can be useful to test other alternatives. The DXF
surface entities handled are 3DFACE, 3D polyface mesh, LINE (when extruded to plane) and
optionally closed polylines (POLYLINE, LWPOLYLINE and POLYLINE3D can be treated as if they
were surfaces and will create planes). Further items drawn in the 3D window for reference are lines
(such as pure LINEs) and surface colors. Solid-model DXF exports are not supported but have to first
be converted to surfaces inside AutoCAD. So far, it is safest to export as DXF release 12 and to
explode any blocks used.


1. First read a DXF-file considering these options:





2. Then transform the geometry to make it suited for CATT-Acoustic use before saving as GEO:



Note: if you are planning to go back into AutoCAD, changing or correcting something, transform the
geometry inside AutoCAD instead, or use this transform on the final export only.

To aid in understanding the DXF data and see which surfaces exist, some viewing options are given:





Unit used in file. If, after
import, the unit is found to be
wrong (see scale on top of z
axis), select the proper unit and
re-read the DXF.
Mark 3DFACE edges... Marks
all 3DFACE edges (grey) or
only those that have the
visibility flag set (black).
Treat POLYLINEs... Treat
polylines as if they were planes.
This can be a useful option to
get away from 3DFACEs.
Read DXF. Selects the DXF-file
to read.
Rotate. Rotates the model the
selected step clockwise (+) or
anti-clockwise (-) around the
axis indicated.
Translate. Translates the
model in selected steps along
the axis indicated.
Reverse normals. A useful
option if most normals seem
wrong, or to visualize better.
Entities. Indicates
each surface and
shows the DXF
entity type.
Layers. Displays a
dialog (see next
page) where layers
can be toggled on
and off. If no layers
are found this
button is disabled.
Center coord sys. Useful if the
AutoCAD coordinate system
origin is far outside the hall.
Warps. If warped planes
are found they are
outlined in red (warp >
D/1000) and green (warp
> D/10000) where D is
the room diagonal. If no
significant warps are
found this checkbox is
disabled.
Both sides.
Shades both sides of
a surface (to better
see where they are if
the normals are
inconsistent).
POLY outlines.
Normally, a POLYLINE
treated as a surface is
just shaded, this option
also outlines its edges.
Dxf2Geo Help Copyright CATT 2004-2007
All products mentioned are trademarks of their respective owners 2




3. Finally, create CATT-Acoustic GEO-files and optionally source- and receiver-files (SRC.LOC and
REC.LOC). If a re-exported DXF is to be converted the receiver- and source-files may already exist:



The master GEO-file name can be selected when saving, and will contain all corners and all ABS
materials defined (mtrl_nnn if the Colors option is used, where nnn is the AutoCAD color number,
layername spaces replaced with underscore if the Layers option is used, else a single material
default. The remaining data depends on the File organization options selected:

Single: both planes and markers (if requested) will be written to the single master-file.

id Ranges: planes are written to auto-named pnnnn_mmmm.GEO files with 100 planes in each (nnnn-
mmmm is the range of plane ids in each file). If markers are requested, they are saved to a file
pMARKERS.GEO and. The master then INCLUDEs the id range plane-files and the marker-file.

Layers: planes are written to one file per layer layername.GEO. If markers are requested, they are
saved to a file pMARKERS.GEO and. The master then INCLUDEs the layer-files and the marker-file.

For each plane, the name is set to LINEnnnnn where nnnnn is the line in the DXF-file where the
corresponding entity was found, and after each plane definition optionally the corresponding AutoCAD
entity (e.g. 3DFACE) is given. At the moment this is mainly for debugging purposes and may be
removed or made optional.
Material info. Unique ABS
materials can be created from
surface Colors or Layers and
be given real values in GEO.
Include entites Include, as
comments, the entity (e.g.
3DFACE) that created a plane.
Save non-face Saves any
pure LINEs found as markers in
a separate GEO-file.
Create creates also generic
receiver and source files.
Save as GEO. Saves the
currently viewed file to GEO.
Note: the Transform options
will be applied as shown in the
3D window and only layers that
are on will be exported.
File org.: Save all planes to the
Master-file (Single), to ranges
of 100 planes in each (id
Ranges) or to one file per layer
(Layers).
List of layers. RED indicates
that the layer is on, BLUE
that it is off. To toggle the
state, double-click or press
Enter (when a layer is
selected). Selected layers
are drawn with thick lines
while the dialog is open.
Only layers that are on will
be exported.
Hides all layers (all on).
Shows all layers (all off).
Reverses normals for all
surfaces in the selected
layer.
Closes the dialog export
keeping the layers on/off and
normal selections.
Dxf2Geo Help Copyright CATT 2004-2007
All products mentioned are trademarks of their respective owners 3
4. After a successful Save as GEO

After a successful conversion and save to GEO, the remaining work can be anything from almost
nothing to an amount of work that easily can make it slower to use a DXF-file than to make a model
from scratch in GEO. It all depends on how well the model is made, how complex it is, and how suitable
it is for geometrical acoustics modeling. It is also quite common that files made in AutoCAD are
inaccurate (warped planes or gaps) since they have been modeled by eye rather than by using GUI
tools like snap etc. It cannot be stressed enough: a model for geometrical acoustics must not be too
detailed, but it must be accurate in itself to allow accurate predictions.

The work after conversion to GEO will typically belong to one of two categories:

1. You have access to, and knowledge of, AutoCAD:
In this case, when errors in the GEO are found, it is often best to go back into AutoCAD, make
required changes, re-export and convert. If the Colors or Layers material options is used it will also
save time when assigning materials in GEO. You may also model just half the room in AutoCAD and
later use the GEO MIRROR directive.

2. You do not have access to AutoCAD but have a DXF-file only:
In this case you are left to do all alterations and fixes in the GEO-files, a task that may be difficult
since a DXF-conversion can only create a numbers-only GEO-files. If the drawing has layers there
is some help for alogical structure in GEO using the Layers file organization option.

Problems

It may well happen that some planes are detected as problematic. One way of handling that is to create
a new GEO-file problems.GEO and cut/paste all problem planes into this file. When the majority of the
planes have been read without immediate errors and can be displayed, problems.GEO can be
INCLUDEd in the master-file and these planes can be handled one at a time by gradually moving a
RETURN statement down through the list of problem planes. It may also happen that many planes must
be reversed, removed or otherwise changed. If all, or most, planes seem reversed, either use the
Reverse all normals option or change between FROMFRONT and FROMBACK in each file with planes.
Note: It is very strongly recommended that a debug file is created before attempting any calculations
what so ever after a DXF-file conversion.

Missing data

Even if a DXF-file converts well, a number of items are lacking simply because this information is not
available in a DXF:
Materials: actual values for ABS materials are lacking and any created materials have generic values
only and. If the Colors or Layers material ootions could be used, it is sufficient to assign actual existing
surface property names or give direct coefficients to each auto-created color- or layer-based material. If
these options could not be used every single plane has to be assigned an appropriate material.
Receivers: real data in the receiver file is lacking (if the option to create a receiver-file was chosen, it
contains only a generic receiver position to enable viewing the model).
Sources: real data in the source-file is lacking, likewise, if created, it contains only a generic source.

CATT WalkDecim v1.0c Help

1. Introduction

WalkDecim is a small utility written to work together with CATT-Acoustic and 3D rendering
software such as 3ds max. The general procedure is:

to model a room in a 3D rendering program and export to CATT-Acoustic, or to export a
model created in CATT-Acoustic to the 3D rendering program and graphicaly enhance it.
create a camera path for a video walkthrough in the 3D rendering software.
export the camera path to a text-file using a 3D rendering software script untility.
import the path text-file to WalkDecim that then creates a CATT-Acoustic receiver-file with
receivers along the path, as well as a complete Walkthrough Convolution Script (.WCS)
for the CATT Walkthrough Convolver.
after prediction and post-processing using these receivers, the Walkthrough Convolver
can directly be used with the WCS script to create an auralized WAV-file that will be
synchronized to a rendered video based on the indicated frame-rate used in the camera
path export.

2. The exported camera path

A camera path export utility must be created in the 3D rendering software (in 3ds max via
MaxScript, other software have similar utilities) that exports camera and target positions to a
text-file using the following TAB- or space-separated fields:

n xc yc zc xt yt xt


where:

n frame number (for reference, may start at any number)
xc camera x-position
yc camera y-position
zc camera z-position
xt target x-position
yt target y-position
zt target z-position

An example:

1 7.64889 -3.29267 0.768435 7.51677 -1.091690 1.29888
2 7.64222 -3.20721 0.789552 7.51306 -0.928482 1.33621
3 7.63514 -3.11644 0.811958 7.51082 -0.769308 1.37213
4 7.62784 -3.02131 0.835414 7.51014 -0.614298 1.40663
5 7.62033 -2.92252 0.859747 7.51105 -0.463577 1.43965
more frames


3. How to use WalkDecim

To read an exported camera path, first select the Unit used in the exported file and give the
video Framerate, then click Read camera. The camera path file selected (say path.txt)
will then be read and the frame positions will be decimated to a number of receiver positions,
based on the current selected maximum Move and Turn steps, and displayed in the 3D
window. If the unit was set wrong, see scale on path drawing, just select the correct unit and
read the file again. A new receiver position is created each time the camera has moved the
specified Move distance or has turned the specified Turn angle (since the latest receiver was
created). Typical good values are 1 m and 5but if that creates > 100 receivers it is better to
CATT WalkDecim help Copyright CATT 2006-2008 2
increase the Move distance than to increase the Turn value since too big turns will create
jumps in the sound. CATT-Acoustic currently allows 00..99 receivers in one calculation, if too
many receivers are created the last id is shown in red, else in green, and Save is disabled (if
it is necessary to create more than 100 receivers please contact CATT, it is possible but
requires some extra work). To see the new decimated path after changed parameters press
Test, when satisfied give the Id for source used and the SIM-file folder (folder where
created SIM-files will reside, typically the prediction output folder) and press Save receiver-
file.

The first file created is the receiver-file path_rec.loc, (in the folder where the camera path
was) where the relative and actual frame numbers are given as a comment. An example:

RECEIVERS
0 7.649 -3.293 0.768 7.517 -1.092 1.299 ; 1 1
1 7.575 -2.276 1.018 7.553 0.344 1.604 ; 11 11
2 7.524 -1.329 1.244 7.718 1.140 1.726 ; 19 19
3 7.510 -0.709 1.386 7.890 1.467 1.740 ; 24 24
4 7.517 -0.202 1.496 8.053 1.729 1.740 ; 28 28
more receivers

The second file created is path.wcs for the Walkthrough Convolver (also created in the
folder where the camera path was), a corresponding example:

CATT-WCS
VERSION = 0
SIMFOLDER = "c:\myroom\output"
INCHANNELS = 2
INCHANNELSUFFIX = "_L" "_R"
OUTCHANNELASSIGN = stereo
MODE = time_absolute
UNIT = frames 30 ;(fps)
1 "E_A0_00"
11 "E_A0_01"
19 "E_A0_02"
24 "E_A0_03"
28 "E_A0_04"
31 "E_A0_05"
more steps

Note that the MODE must be time_absolute and that UNIT must be frames (frames per
second, fps). The frame rate must be the same as was used in the camera path export and in
the actual video generation, this is necessary to synchronize the sound. WalkDecim sets
these fields correctly.

4. Step by step

A step by step procedure example how to how to create a video with binaural auralized
walkthrough sound:

1 3D-rendering: Create a room model in the 3D rendering program and export to
CATT-Acoustic. Or, if a CATT-Acoustic model already exists, it can often be exported
as VRML, imported to the 3D rendering program and further enhanced graphically.

2 CATT-A: Perform some preliminary predictions to verify the model and its indented
acoustic properties. Select the (stationary) sound source you want to use (say A0) to
correspond to the sound source in the video.

3 3D-rendering: Design a camera path to be used for a walkthrough video with
auralization.

CATT WalkDecim help Copyright CATT 2006-2008 3
4 3D-rendering: Export the camera path using an appropriate utility, use the actual
framerate of the video-to-be.

5 WalkDecim: Read the exported path file using WalkDecim and decide on a suitable
path decimation. When satisfied enter the Framerate, the Id for source used (from
step 2), the SIM-folder (the output folder from Step 2) and then Save reciver-file.

6 Copy the created receiver file (_rec.loc) to the input folder used in step 2.

7 CATT-A: Select the Prediction module:

a) load the previous Prediction settings-file (PRD) for this model from step 2;

b) in General settings select the receiver file created in step 5 and select as many
receivers as are contained in the path (Which to use);

c) select and edit Full detailed calculation and after setting appropriate calculation
parameters (should have been found out in step 2) switch on (Save data for)
Post-processing;

d) Save and Run the prediction. This creates echogram ECH-files for each receiver
to be used for binaural post-processing.

8 CATT-A: Open the Post-processing module:

Select General settings suitable for the room case: as usual, IR length should be the
same length as the longest reverberation time (if it differs a lot over the octave bands
choose a length corresponding to the 1 kHz rev. time). Select binaural receiver (and if
not already selected, HRTF and headphone equalization Prefs). Save the PST
settings-file.

9 CATT-A: Open the Sequence processing module:

a) add a REPEAT step that goes over all receivers using a variable RR;

b) add a Post-processing step after REPEAT and select the PST settings-file from
step 9 and one of the ECH-files created in step 8. Replace the receiver number in
the ECH-file name with <RR> (if the selected file is e.g. \E_A0_01.ECH change
it to \E_A0_<RR>.ECH).

c) Save and Run the sequence. This creates binaural room impulse responses
(SIM-files) for all receivers.

10 CATT-A: Reopen the Post-processing module (it was closed while doing sequence
processing). Click Walkthrough convolution and Browse for the WCS-file created
in step 5. Select an anechoic WAV-file and a resulting WAV-file name. Press OK.

11 After finished processing, the created WAV-file can be directly attached from start of
the rendered video (using e.g. Adobe Premiere) and should be perfectly
synchronized.


All products mentioned are trademarks of their respective owners
CATT-Walker
TM
v1.1f Help

1. Introduction

CATT-Walker
TM
creates real time auralization by continuously interpolating between B-format
(W,X,Y,Z) impulse responses while convolving in real time creating a seamless simulation
while walking around in the virtual room. The output is either binaural via a binaural down-mix
of an ambisonic decode or B-format suitable for sub-sequent decoding. To be able to achieve
low enough latency, CATT licenses a partitioned FIR convolution technique from Lake
Technology. The calculations to use the real time walkthrough via CATT-Walker
TM
is basically
the same as using static auralization with a few exceptions:

many receiver positions should be used, the more/denser the better. It is especially
important around the source if a walkthrough close to the source is desired. In general,
where the acoustics (i.e. the impulse responses) are expected to change fast with listener
position or head direction, a high density is required while e.g. at the back of a long room
it is less crucial. In the receiver-file a function recwalk() can be used to create positions
in concentric circles around a source and for positions further back recloop() or
recloop2() can be used. Below is an example of a good solution for a church:

X
Y A0
0001
0203
0405
06
07
08
09
10
11
12 13 14
15
16
17
18
19
20
2122
23
24
25
26
27
28
29
30 31
32
33
34
35
36
37
38
39
40
41 42 43 44 45 46 47 48
49 50 51 52 53 54 55 56
57 58 59 60 61 62 63 64
65 66 67 68 69 70 71 72
73 74 75 76 77 78 79 80


GLOBAL sx = 0 ;source x
GLOBAL sy = -1.8 ;source y
GLOBAL sz = 1.7 ;source z
LOCAL rh = sz
LOCAL da = 20 ;angle step for recwalk()
LOCAL dr = 2 ;radius step for recwalk()
LOCAL rfrac = 0.25
LOCAL dy = 3 ;y step for recloop()
LOCAL dx = 3 ;x step for recloop()
RECEIVERS
0 sx+rfrac*dr sy-rfrac*dr rh
1 sx+rfrac*dr sy+rfrac*dr rh
2 (-(sx+rfrac*dr)) sy-rfrac*dr rh
3 (-(sx+rfrac*dr)) sy+rfrac*dr rh
recwalk(4,sx,sy,da,dr,-3.8,-10,3.8,3.7,rh)
recloop(41,q,0,7,1, -2*dx,4.9+q*dy,rh)
recloop(49,q,0,7,1, -1*dx,4.9+q*dy,rh)
recloop(57,q,0,7,1, -0*dx,4.9+q*dy,rh)
recloop(65,q,0,7,1, 1*dx,4.9+q*dy,rh)
recloop(73,q,0,7,1, 2*dx,4.9+q*dy,rh)

the head direction chosen in Prediction General settings does not matter when post-
processing for CATT-Walker since it is set as required during the special post-processing,
CATT-Walker
TM
help Copyright CATT 2005-2008 2
see below. The head direction can be chosen to give good binaural static auralizations or
so that LEF values are according to standard (direction towards the source).

a new file type is used: a CAG-file (CATT-Acoustic Geometry) that includes the actual
geometry and all sources and receivers used for prediction. This file is always created in
the output folder when Save data for post-processing has been selected. CATT-Walker
uses this information to draw the real time auralization walkthrough 3D scene.

a special post-processing mode: Create CWI-file for CATT-Walker is used that does not
create individual SIM- or PLT-files but instead a single big CWI-file (CATT-Walker
Impulse responses) per source. This mode is enabled if Receiver model:B-format is
selected in General settings. A CWI-file contains impulse response information for all
predicted receiver positions for the source indicated in the file name. The IRs in an CWI-
file can be displayed much like individual SIM-files using the Utilities|Information|CATT
CWI-file menu. If details for specific receiver positions are interesting a normal post-
processing can be performed for those positions.

Since CATT-Walker is a separate program it does not read HRTFs and Headphone eq
from CATT-Acoustic Preferences. Instead, for the binural ouput, a small program
MakeWalkerBinDec.EXE has to be run to select the preferred filters that will be saved
as a file BinDec.DAT in the CATTDATA folder, this
file is then used by CATT-Walker. The initial
BinDec.DAT is for 44100 Hz and uses the CATT1
HRTFs and Beyer DT 990 Pro headphone eq.

Note: To change filters MakeWalkerBinDec has to
be run before CATT-Walker is started but it needs to
be run only once unless a new change in headphone
or HRTFs is desired.



Below is an overview of the processing done and the files used by CATT-Walker:

Walker_ss.CWI
Walker.CAG
Prediction Post-
processing
for CATT-Walker
E_ss_rr.ECH
CATT-Acoustic
Walker.CAG
Real time
walkthrough
auralization
CATT-Acoustic
Walker.CFG BinDec.DAT
MakeWalkerBinDec
HRTFs
Headphone eq
Anechoic WAV
L
R
CWI-file
addition
(delay, gain)
.
.
.

1)
2)
*.CWI
CATT-Walker
CWI
CATTDATA CATTDATA
W
X
Y
Z
.
.
.


External
decoder
for loud-
speakers


1)
Single source walkthrough
2)
Multiple source walkthrough via CWI-file addition
CATT-Walker
TM
help Copyright CATT 2005-2008 3
2. Interface

2.1 Configuration

When CATT-Walker is first started, a dialog is shown with license and version information:



Abort aborts CATT-Walker and exits.

Help displays this file

Start starts the processing based on the settings chosen in Config.

Config shows a dialog that allows for selection of files, output and processing parameters.
This dialog can stay open during processing and settings can be changed. However,
all settings except Output Queue will force reloading of the filters.





CATT-Walker
TM
help Copyright CATT 2005-2008 4
Config: Audio group

Output Format: Binaural or B-format. B-format requires a 4-channel capable soundcard to
be installed and selected and an ambisonic decoder to be used externally.

Output Device: if more than one soundcard is installed this allows selection of which to use.

Block size: the block size determines how many sample frames the system will process
each iteration. The smaller the block size, the quicker the system will
respond to interactive input. However, smaller block sizes also consume
more CPU, and the audio driver may not be able to feed the blocks fast
enough. 1024 is usually a reasonable compromise. The setting is PC hard-
ware and IR length dependent, experiment and select a setting that does
not give an interrupted sound and then click Save.

Output Queue: this setting determines how many blocks will be queued by the audio driver.
Generally a high value makes the playback more tolerant, but also
increases latency. Try to keep it low if possible, say 3. The setting is PC
hardware and IR length dependent, experiment and select a setting that
does not give an interrupted sound and then click Save.

Approx Latency: based on the above settings, an approximate latency is estimated. The
shorter the latency the faster the audio is updated during the walkthrough.

3D (Enable Z): If the CWI-file contains the Z-component it is used for height information so
that e.g. a source that is higher than a receiver it will perceived as higher up.
If a particular PC hardware is on the limit to handle a case, the full 3D
handling can be switched off (followed by Apply) to save some CPU.

Config: Scene group

CAG: the CAG-file to use (CATT-Acoustic Geometry). A CAG-file describes the room
geometry in question and is created by CATT-A when saving data for post-
processing.

CWI: the CWI-file to use (CATT-Walker Impulse responses). A CWI-file contains
impulse response information for all predicted receiver positions for the source
indicated in the file name. It is created when using the special post-processing
option Create CWI-file for CATT-Walker.

WAV: the anechoically recorded input WAV-file to use for the real time walkthrough
convolution, if the file is stereo it will be mixed to mono before use.
Note: the samplerate of the WAV must match the one used at post-processing.

Config: Save

Saves the current settings to Walker.CFG in the CATTDATA folder. These settings are then
automatically loaded the next time CATT-Walker is run.

Config: Apply (labeled Start when Config is opened before processing)

Applies the current settings for use when processing but without saving.

CATT-Walker
TM
help Copyright CATT 2005-2008 5
Start initiates loading and pre-processing of all IRs and the 3D geometry as indicated by a
progress bar. When finished, a clean 3D window is shown and by clicking the mouse the
walkthrough can start, by clicking the mouse again on the window you can go back to other
applications or to the Config dialog. See next section for how to navigate and use other
options.

2.2 Operation

The walkthrough is controlled using the keyboard and the mouse together. The mouse is
used to turn the head while the movement is controlled by pressing and holding the following
keys or arrow keys:

W or move forward
S or move backward
A or move left
D or move right
Q tilt right (rotation around view axis)
E tilt left
+ / - increase / decrease walking speed (2 m/s is the speed at startup)
Pg-Up / Dn raise / lower the sound level (master gain)
The movement is always at the height of the receivers and is restricted to be within the map
of receivers as a whole.

Some special keys are used e.g. to toggle on/off information in front of the 3D scene:

Y informative text
H a map of all receivers, current position and head direction, lines to all sources
J the very early part of the interpolated WXYZ IRs
G the wire-frame underlying the shaded graphics
1)

C Surface colors on/off
T textures on/off (for special purchased versions using textured graphics)
F1 opens the Config dialog if it was closed
Q or ESC exit CATT-Walker
1)
for special purchased versions (see 3.4), using textured graphics, the acoustic geometry
may typically be a simplified version and can be interesting to display for reference

3. News, limitations and possible future additions

3.1 Version history

v1.0a

First release version.

v1.1a

adds simulation of the height of the sound source (the B-format Z-component). This
requires that CWI-files are created with CATT-Acoustic v8.0d:3 or higher. It also requires
MakeWalkerBinDec.EXE v1.0b to be run again to create a new BinDec.DAT that holds
info needed to decode height.

adds the option to simulate multiple PA system source where all sources have the same
input sound. Similar to SIM-file addition, CWI-file addition can be performed using the
CATT-Walker
TM
help Copyright CATT 2005-2008 6
Utilities|CWI-file Addition menu. No matter how many CWI-files (sources) are added,
the same amount of CATT-Walker CPU is required as for one source. Note that for CWI-
files to be added, they all have to be created from ECH-files saved at the same time using
a multiple source prediction, this is to ensure that incompatible CWI-files are not mixed.
The Multiple source addition module does not have to be used unless corresponding
numerical measures are desired. Note that to resolve source interference at e.g. 1kHz a
receiver spacing of half a wavelength or less at 1 kHz (17 cm) is required so dont over
interpret interference effects (or lack thereof) for big receiver spacings. Same principles
holds for resolving fine directivity details, the walkthrough cannot give finder details than
the receiver spacing allows for.

Adds an option to select another soundcard than the system default.

Adds tilt controls (Q and E keys), only has effect on the sound if the Z-component is used.

Adds F1 to open the Config dialog if it was closed

Walking speed can be changed by the +/- keys ( and W S A D now use the same
speed)

At first startup the Config dialog has a Start button that directly launches the 3D window
and starts the processing, this button then changes to Apply and is used after loading a
new CWI-file or after a change of some other settings.

v1.1b,c

Minor fixes.

v1.1d

Adds support for Walker Steer, see below.

v1.1e

Changes to handle that from CATT-Acoustic v8.0g all data can be in a separate folder
(called CATTDATA selected with File|Preferences), here it concerns BinDec.DAT and
Walker.CFG.

v1.1f

Optional B-format output for external loudspeaker decoding.

3.2 General limitations

For positions close to and around the source it is important, as indicated in
the Introduction, to use many receivers. However, for positions closer to the
source than the inner ring of receivers the perceived sound source direction
will be wrong (in the example when being inside the square formed by
receivers 01,02,03 and 04). In practice it is of little importance since walking
that close to a source is not very interesting.

A0
0001
0203
04
05
06
0
0
0
1
11
12
13
14
15
16
17
18
19
20
21
22
32
33
4
5
36
37
CATT-Walker
TM
help Copyright CATT 2005-2008 7
3.3 limitations and possible future additions

The first versions concentrate on performance issues and lacks some implementation details
that will be added gradually with updates depending on how the software is mostly applied
and how well the many varying hardware combinations will perform.

If a pillar or a wall is between receiver positions, CATT-Walker will interpolate and let you
walk right through the wall. The intended application is not room mazes and similar, that
are very difficult to predict and auralize well, but rather typical mainly open-plan rooms
like auditoria, concert halls, churches, operas etc.

there is no overload indication, simplest is to move to a position closest to the source and
use the Pg-Up/Dn keys to set a high level without overload (distortion) and then keep it
like that.

actual source visuals are not used, the source is just indicated with a box and with a
green arrow pointing in the forward direction and a blue arrow pointing upwards.

A Doppler effect is implemented but is disabled in the initial versions pending some
further fine-tuning (it also consumes more CPU). Note that it anyway often can be better
not to use Doppler for pure room acoustics walkthroughs since de-tuning of instrument
tones can be very disturbing.

Windows multi-media drivers are used for the sound output, a future version may instead
use ASIO drivers for lower latency.

multiple sources using different anechoic input can not be simulated. Future
developments may be able to use further separate and independent sources
simultaneously but will consume CPU in direct proportion to the number of sources.

direct ambisonic output for loudspeaker replay may be implemented in a future version.

3.4 Special versions

Special purpose additions and versions of CATT-Walker will be possible but will require a
specially purchased additional license. Due to the specialized nature of some of these
additions it sometimes will have to be quoted as a dedicated project.

Examples of available special versions are:

external steering letting CATT-Walker act as an acoustics engine in a virtual reality
system where the graphics is rendered separately at higher detail. This is accomplished
via the Walker Steer API/SDK that allows remote control of CATT-Walker. Details of how
the remote control is implemented is up to the user (e.g. via TCP/IP if the graphics
application runs on another computer or via a memory-mapped file if it runs on the same
PC as Walker) but support is available on a case by case basis.

Examples of possible future special versions are:

head-tracking, for normal use in front of a small screen head tracking is not crucial but for
large VR screens it can be.

use of detailed textured graphics in CATT-Walker. This requires a detailed textured model
created in 3ds max (but also other rendering software can be possible). The rendering
CATT-Walker
TM
help Copyright CATT 2005-2008 8
software will then via a plugin export to a special format used by CATT-Walker. The
textured model can be fully detailed and does not have to use the simplifications of the
geometrical acoustics model, it just has to use the same scale and coordinate system. If
no detailed model exists a CATT-Acoustic model can be exported to VRML, imported into
3ds max and enhanced.



All products mentioned are trademarks of their respective owners

You might also like