Next Previous Contents

3.3 The Model

Wave2D is a tool for the simulation of 2D wave-fields. Thereby it is not of interest what kind of wave-field is simulated. It is possible to simulate electro-magnetic wave-fields, waves in water, oscillating membranes and plates, and of course acoustical wave-fields. The specific details of the model, e.g. the speed of sound (air or water), geometry and the behavior at the boundaries (reflecting or absorbing), and the excitation of the model (loadspeakers for instance), can be edited via the dialogs in the model menu.

This Model menu provides access to all these model specific parameters, and furthermore to all simulation parameters. Simulation parameters are the temporal sampling interval, the spatial grid for the visualization, the accuracy of the simulation (please note that the FTM enables the independent adjustment of temporal sampling, spatial sampling, and accuracy), and further more specific parameters. The definition of additional outputs for sound recording, resp. in-depth observation of specific points, is also accessible via the Model menu. The dialogs are as follows:

Physical Properties

The physical properties of the model determine mainly the behavior of the simulation. They can be split into three logical units: the geometry, the parameters, and the boundary conditions. The dialog Physical Properties in the Model menu reflects this differentiation.

Dialog "Physics" As it can be seen on the right, three tabpages correspond to the three types of physical properties. The first page, which is depicted on the right, allows to choose between circular regions and rectangular regions. Further geometries are not implemented yet. Furthermore a rough specification of the models underlying PDE can be applied here by simply enabling/disabling physical effects like dispersion or damping.

The bottom of the dialog always shows information about the resulting base pitch of the model in Hertz, i.e. the lowest non-zero frequency that could be observed with this parameter-set. The halftime of the sound corresponds to the damping of the model. It indicates the time in seconds after that the amplitude has dropped to one half.


The second tabpage provides a table where all physical parameters from the PDE can be edited and given numerically. The following table shows a list of these parameters.

ParameterNameDescription
speed of sound (squared) speed of wave propagation when no additional physical effects (e.g. dispersion) are present, depends on the medium (e.g. air or water), resp. material, and varies with temperature
S^4 dispersion constant stiffness of the material, resistance against bending, important constant for metal or wood; causes higher frequencies to travel faster than the lower ones, therefore dispersion
d_1damping 1 frequency independent damping: causes the sound to decay exponentially, all frequencies are decayed with the same time constant
d_3damping 3 frequency dependent damping: causes the sound to decay exponentially, higher frequencies are damped more, important parameter for realistic damping, e.g. to model wood or wave propagation in sticky fluids
l_1length in x for rectangular geometry the length (size) of the model in x1-dimension in meter
l_2length in y for rectangular geometry the length (size) of the model in x2-dimension in meter
Rradius for circular geometry the radius of the model in meter

Another important aspect of the model's physical properties are the boundary conditions. For rectangular models (see also Known Bugs/Limitations), the user can edit the reflection coefficients of the four walls in the third tabpage.

Dialog "Physics" In doing so, it is possible to adjust the reflection at the boundaries from absorbing walls (reflection coefficient 0) to perfect reflecting walls (reflection coefficient 1). It is also possible to define negative reflections, by activating the negative check box in the Boundary tabpage. A reflection factor of -1 would correspond to boundary conditions of second kind, i.e. the pressure is set to zero at the boundaries. See also details about the underlying PDE.

As it can be seen on the right, one can either set the reflection coefficient with a slider, or one can input it numerically. Additionally, one can quickly set all four reflection coefficients identical by clicking the Same Reflection Factor for all Sides checkbox.


Two modeling with different physical properties can be seen in the screenshots below. The geometry can be set to circular models, as depicted on the left, what would correspond to wave field propagation in membranes and plates (see Known Bugs/Limitations). The right screenshot corresponds to the acoustical wave field in a rectangular room, with perfectly reflecting walls.

cicular geometry rectangular geometry

Model Excitation

One major benefit of the FTM is the flexibility and accuracy of the model excitation. Wave2D reflects the flexibility in the Excitation dialog box by enabling multiple excitations with a set of predefined spatial distributions and with an arbitrary temporal behavior, excitation function called in the sequel.

In order to define a specific excitation of the wave-field, one has to apply several steps:

  1. set the total number of excitation functions in the Absolute Number of Excitations field
  2. choose the Current excitation (combobox below), all further settings will apply to this excitation
  3. choose the spatial distribution of the excitation (the Type): either excitation in one single point, or spatially distributed in a circular area around the excitation point, or equally distributed over the complete model; it is also possible to activate multiple options, in this case the different types of excitation will be superposed
  4. determine the source of the excitation function (the temporal behavior of the excitation) by activating the corresponding check-box in the first tabpage, superpositions of different signals are also possible; you may choose from the following sources:
    1. short signals in the Impulse tabpage:
      there are several typical types of impulses, one can edit the length of the impulse and on can define a specific delay after that the impulse will start; of particular interest is he Amplitude A: the strength of the impulse; furthermore one can generate impulse trains
    2. periodic functions in the Function tabpage:
      several periodic functions can be choosen for excitation, typicallz sine and cosine functions are available, but also triangular and rectangular functions can be choosen; parameters are the frequency, the phase, and of course the amplitude of the function; a delay is also possible; for your information, the Current graphical Sampling Frequency is written below the definition of the function, it may be useful to avoid aliasing by choosing function frequencies below half of the graphical sampling frequency
    3. arbitrary signals from a Wave-file in the Wave-File tabpage:
      the most amount of flexibility is achieved by using arbitrary excitation signals from a standard wave-file; in the Wave-File tabpage you can input the name of any wave-file available on your PC, or you can even browse through your directories and search for your files with the button on the right of the File field; if available you can define which channel should be used, so you can even use multichannel wave-files for excitation and simulate stereo sound reinforcement for instance, see also the wave field synthesis example; a little bit more tricky is the definition of the Sample-Intervall T, either all samples of the wave-file are used, disregarding any mismatch of the wave-file's sampling frequency and the graphical sampling frequency (first option), or you take care of the sample frequency of the wave-file and tolerate a downsampling resp. upsampling of your wave-file (second option), or you can also define a sampling intervall manually (third option)
  5. for point-like excitations choose the location of the excitation in the Point tabpage: you can either use the quick way and click on the desired position on the depicted coordinate system, or you can edit the coordinates of the excitation numerically in the input fields below

The effect of different excitation functions is depicted in the two screenshots below. The left one was excited by an impulse in the small circular area around the red marker in the upper left corner. The right simulation was excited by a sine function, also in a small circular area around the red marker. The green marker indicates the position of an output, which is described in the next section.

impulse excitation sinusoidal excitation

Definition of Outputs

In order to use Wave2D also for the generation of sounds, for instance to simulate reverberation, and in order to study the wave field at specific points in depth, it is possible to define additional outputs. During simulation, these outputs record either the pressure or the particle velocity at specific points, and store these signals. These signals are automatically written to a wave-file when the program is left, or when a another simulation is started.

Dialog "Physics" The definition of outputs is straightforward and similar to the definition of excitations. First one has to choose the total number of outputs in the Absolute Number of Output Points field. After setting the current output it is time to define this output.

In the General tabpage one can set the type of normalisation and the physical variable, that should be recorded. Normalisation is important to avoid clipping in fixed point wave files. One can normalise each output separately or all togehter. no Normalisation is only useful for floating point (FP) wave file formats. The most typical Physical Variable that is normally used is the pressure, however as Wave2D simulates the complete physics it is also possible to output the particle velocity in either x1 or x2 direction.

The adjustment of the recording point location is identical to the definition of the excitation point location in the Model Excitations section. One simply has to define the point either by clicking or by numerical input in the Point tabpage.

Defining the Destination of the output signal, i.e. the output wave-file, is more tricky. Wave2D offers the feature to create wave files with multiple channels, one channel representing one output point. So, as it can be seen in the dialog box above, one has two option in defining the destination of an output:

  1. use a wave-file assigned to this output (own wave-file):
    the ouput has its own wave-file, you only have to define the name and location of the file (or browse throught your directories with the button right next to the file name) and have to set the bit-depth of the wave-file, and after simulation and after leaving the program you will find a newly created or updated wave-file
  2. join the wave-file from a different output:
    alternatively you can join the wave-file from another output, i.e. if output 1 has its own wave-file, you can assign output 2 to write its data in the wave-file of output 1; of course output 2 writes its data in a different channel, which you can assign too


The Meshgrid

The Meshgrid dialog box seems a little bit missplaced in the Model menu, however it is placed there as it (like the Algorithm dialog) affects the performance of the simulation heavily.

Dialog "Physics" The most important parameter in the Meshgrid dialog box is the Minimum Resolution of the Net, as it can be seen on the right. To explain this parameter, the visualisation procedure has to be described first. The FTM by itself has no need for any spatial discretization or spatial grid, the model (the wave field) is solved in the so called frequency domain. However, to display the results of the FTM on computer hardware, the wave field has to be discretized. This is done by the Meshgrid, the wave field is sampled on an equally spaced grid. However, in opposite to other wave field simulation techniques, this spatial sampling is totally independent from the temporal sampling and from the accuracy. This means, the resolution can be adjusted completely independent from all other parameters.

Resolution in this case (and in the dialog box) means the number of spatial points from the center to the border of the wave field. In consequence a resolution of 128 means a 256×256 spatial grid for a quadratic wave field. This resolution is called Minimum, as 256 would be the smaller number in the case of rectangular, non-quadratic wave fields (256×301 for instance).

The remaining part of the dialog box is related to the visual properties of the meshgrid. Of course there is an amplification factor to enlarge small amplitudes of oscillation, and there is a slider to change the Point of View, i.e. the perspektive. The checkbox Flat View means completely no perspective, what is very useful to create top views of the wave field.


The last option is best explained by the following two screenshots. The meshgrid can be visualized either wih a true grid, as depicted on the right, or with an interpolated solid surface, there the space between the spatial sampling points is filled with triangles.

solid display grid style display

Algorithm Adjustment

Dialog "Algorithm" The Algorithm Options split into options named Harmonics, which are strongly related to the FTM, and into Discretization options. The first ones are more for the advanced user, however there is a very important parameter called Maximum allowed Frequency. This parameter limits all harmonics of the model below a specific frequency, and thus mainly determines the accuracy of the simulation. Normally, one would like to set it to half the sample-rate (parameter Number of Frames per Second in the same dialog box) in order to avoid aliasing (so called Nyquist criteria), however this is not a must with the FTM.

The second very important parameter in this dialog box is the Number of Frames per Second. As any simulation algorithm, Wave2D has to discretize the simulation, both in time and space, in order to realize and display it on computer hardware. This means, that only discrete time-steps are calculated. Normally these time-steps are equally distributed over time, i.e. the time intervall (so called sample intervall) from one time step to the next is constant. This constant sample intervall corresponds to a constant sampling rate, which is measured in samples (here frames) per second.

Another interesting feature in this dialog box is the subsampling of calculated frames. Every frame needs computation time to be calculated, so it normally is the best to display all calulated frames, however especially for sound-output (see the sound example) and for video-output (see the video example) it might be very useful to subsample the display. The Nyquist criteria links the maximum allowed frequency with the sampling rate, so for a desired accuracy (i.e. maximum frequency) a minimum sampling rate is required. For sound output it is not needed to display all these frames, one can save up to one half of computational power by subsampling the displayed frames. This can be done by disabling the check-box Display all Calculated Frames and setting the Displayed Frames Subsampling Factor to the desired integer (2 to display every second frame for instance).




Next Previous Contents