Loudspeaker simulator

Version 2.0

User’s Guide

Ó Tolvan Data 2005-2008


Table of contents

Table of contents. 1

Introduction. 2

Overview.. 2

The main window.. 2

The tabs. 3

Source / Active filter tab. 3

The Linkwitz transform tab. 4

Power amplifier / AC-bass tab. 4

Advanced network tab. 5

Passive filter tab. 6

Driver tab. 7

Box tab. 8

Baffle designer 10

Back wall reflection. 12

Multiple systems. 13

Measured response. 13

Vent / Passive radiator tab. 14

Room gain. 15

Design suggestions. 16

Curves tab. 17

Appearance tab. 17

Comment tab. 18

The response window.. 18

The response curves. 20

System response / Driver response / Vent response / Electrical impedance. 20

Cone velocity and displacement 21

Vent velocity and displacement 21

Driver and vent baffle step. 22

Box pressure. 22

Electrical impedance, resistance and reactance. 23

Reactance interpreted as an inductance. 23

Room gain. 24

Linkwitz transform.. 25

Maximum output level (MOL) 25

Driver voltage at MOL. 26

Cone excursion and velocity at MOL. 26

Vent velocity and excursion at MOL. 27

Box pressure at MOL. 27

Margins. 28

Driver/amplifier voltage. 28

Constants dialog. 29

What Basta! cannot model 29

Cone break-up. 29

Wall/floor/ceiling reflections, Room resonances. 29

Box resonances. 29

Non-cylindrical vents. 29

Edge diffraction directivity. 29

Non-linearities. 30

Version history. 30 30 30 30 30 30 30 31 31 31 31 31 31

Known problems. 31


Basta! is a computer program for simulation of loudspeaker systems. Basta! can simulate open baffles, closed boxes, vented boxes (“bass reflex”) and 1- and 2-ported bandpass systems. For ported enclosures, pipe resonances in the vent can be simulated. Instead of a vent, the ported enclosures can have a passive radiator.

Basta! also includes simulation of baffle step, wall-mounted loudspeakers, lossy voice coil inductance, multiple and isobaric drivers. Basta! can also simulate Active and passive crossover filters, the Linkwitz transform, most passive crossover networks, AC-bass and an approximation of the room gain in an average room.

Basta! shows graphs for the frequency response of the system and the individual driver and ports, cone and vent velocity and excursion, driving voltage box pressure, electrical impedance and its resistive and inductive parts.

Finally, Basta! can also calculate a frequency dependent, maximally allowed output level from the system, based on the maximum power amplifier voltage, Re power dissipation, cone excursion, vent excursion and vent velocity.


The Basta! simulation can be illustrated by the diagram below. Starting from the left, there are

·        A voltage source

·        An active filter

·        A power amplifier with gain=1 and optionally AC-bass

·        A passive electric circuit (filters/conjugate link etc)

·        The loudspeaker driver

·        The box


Block diagram for the Basta! simulation.

The main window

The main window is the place to configure the systems. In the system list, systems can be selected to be plotted in the response graph. By selecting a system in the list, the parameters of this system appear on the tabs below the list. New systems can be created and existing systems can be copied, deleted and renamed by using the buttons to the right of the list. On the tabs in the System parameters group the systems are configured.

In Basta! a “system” is one branch in the crossover filter. This means that a typical two-way loudspeaker needs two “systems” in Basta!; one for the woofer and one for the tweeter.

The main window with three systems, and the driver tab for “Subwoofer” system selected.

The tabs

The parameters describing the loudspeaker system are entered on a number of tabs. The Basta! simulation can show several systems simultaneously for comparison. Multiple systems can be shown in the System list and the response graph. Whenever a system is selected in the System list, its parameters are shown on the tabs. These parameters and tabs are described below.

Source / Active filter tab

On this tab the input voltage to the model can be selected and the active filter can be configured. The input voltage is typically set to 2.83 volts, since this voltage normally used to determine the sensitivity of a loudspeaker. The response curve level will correspond to the sensitivity of the loudspeaker at mid frequencies. Normally the baffle should be disabled for this to work; sensitivity is typically measured in half-space.

The active filter consists of two cascaded parts, one low-pass filter and one high-pass filter. Each of the filters can be of order zero to four, where zero corresponds to a disabled filter. Each of the filters consists of cascaded first or second order sections; the first order section is described by a cutoff frequency, f0, the second order sections are described by a cutoff frequency, f0, and a Q value.

A table lookup function is available, which provides the required values for f0 and Q at a given filter cutoff frequency. The lookup functions set the response of the filter to Butterworth for odd order filter and to Linkwitz-Riley for even order filters.

At the bottom of the screen, a circuit diagram that can be used for the realization of the filter circuit is suggested. For details on the component values, please consult the Basta! technical documentation.


The Basta! Source /Active filter tab. Here the voltage source is set to 2.83 volts and connected to a fourth order lowpass filter is cascaded with a fourth order highpass filter.

The Linkwitz transform tab

On the Linkwitz transform tab, an active circuit for extending the bass response of a closed box can be entered. The bass boost is created by a pole pair and a zero pair. Typically, the zeroes are used to cancel the poles of a closed box design, and new system poles are defined by the poles in the transform circuit. In practice, this is the same as applying a bass boost to the system. For more details on a practical realization of the circuit, see The response of the Linkwitz transform circuit can be made visible as a separate curve in the response window.


The Basta! Linkwitz transform tab. Here, is an example of how to compensate a closed box that has a system resonance of 50 Hz, Qtc=0.5. The virtual system resonance becomes 20 Hz, and virtual Qtc=0.4.

Power amplifier / AC-bass tab

The signal from the active filter is sent to an imaginary power amplifier which has the gain=1 and the output impedance Rg which can be positive or negative.

The power amplifier can also be set in an AC-bass configuration, which gives it a special output impedance. In short, AC-bass seemingly modifies the mechanical parameters of the driver. In effect, the fs, Vas and Qts parameters of the loudspeaker driver can be freely selected.

The AC-bass output impedance is described by four components; Racneg which is usually near Re of the driver but with opposite sign (i.e. negative), and Lac, Cac and Rac which together with the driver determines the parameters of the virtual driver. Basta! can calculate the values of these components from the virtual driver parameters, or the values can be entered manually.

The amplifier has a maximum output voltage, which can set. The voltage appears after either of Rg or the AC-bass network, since these are typically achieved by means of current feedback within the amplifier. This maximum output voltage is one of several limits, which together determine the maximum output level of the loudspeaker system.

At the bottom of the screen a circuit diagram is shown indicating the power amplifier and its output impedance. The diagram does not show how the actual amplifier is implemented, but rather a conceptual model of how the technique works and also how it is implemented in the Basta! simulation.

For an explanation of AC-bass, see the tutorial below.


The power amplifier / AC-bass tab. Here, the voltage limit is set to 100 volts, and in the left panel the amplifier is set in AC-bass mode; the AC-bass amplifier is set to give the virtual driver fs=20 Hz, Vas=20 liters and Qts=0.383. Racneg is automatically selected to –6.1 W. The other values of the output impedance that needs to be implemented by the AC-bass amplifier can be seen under AC-bass amplifier properties. The right panel shows a configuration where the amplifier has been give a negative output resistance of –2 ohms.

Advanced network tab

The signal from the power amplifier is fed to a freely configurable passive network. This is typically the place to enter more advanced crossover and baffle step compensation networks. This network alone can implement the complete crossover, or it can be used combined with the passive filter described below. The network is described by the component list, in which each component is given either of the types “R”, “L” or “C” for a resistor, inductor or a capacitor, it is also given a value, two nodes and an optional comment. The value is in W for resistors, in mH for coils, and µF for capacitors.

The node names can be freely selected, except for the input node, which is named “in”, the output node, “out”, and ground, “gnd”. The input node is connected to the power amplifier, and the output node is connected to the passive filter described below.

In some cases, such as for a conjugate link, the passive network does not have a separated input and output, but only components connected in parallel with the driver. In this case the in and out nodes can be shorted by checking the “short in and out” checkbox, and the node name “in” is treated as a synonym to “out”.

Components can be added/deleted/copied/moved with the buttons below the list.


The Advanced network tab. The network described here consists of one 15 µF capacitor, one 3 mH coil with an internal resistance of 0.2 W, and two resistors of 6.1 and 8 W. Internal node names are “1” and “2”.

Passive filter tab

The passive filter tab offers a few commonly occurring pre-defined filter configurations. The passive filter consists of four optional sections; a lowpass filter, a highpass filter, a voltage divider (L-pad), and a conjugate link. The filters can be of order zero to four, where zero means that the section is bypassed. As with the active filter there is a lookup table that supplies the values for the filter, based on the voice coil resistance Re. The table lookup values are not likely to produce the optimal response curve, however, since the driver impedance deviates from Re. The values should normally be altered manually to achieve the optimal solution.

The L-pad attenuates the signal to the driver. Doing so, the driver also sees a driving impedance that is higher than zero ohms. One effect of this is that the apparent driver Qts increases, and the new Qts value can be seen next in the L-pad box. Note, however, that this new Qts value does not include the effects of any of the other resistances in the rest of the AC-bass, passive or advanced networks.

The conjugate link compensates the increased impedance that occurs due to the voice coil impedance. Basta! can calculate the values of this compensation network, but again these values should probably be changed a bit to fit the actual driver due to the lossiness of the typical voice coil inductance. 

At the bottom of the screen a circuit diagram for the selected passive filter configuration.

The passive filter tab. Here, the full configuration of a fourth order low-pass filter, a fourth order high-pass filter, an L-pad and a conjugate link is used.

Driver tab

On the Driver tab the parameters on the loudspeaker driver are entered. The parameters are entered in groups; the first group consists of fs, Mms, Cms, Vas and Sd. Of these five only three should be given, Basta! calculates the other two. You select which parameters you want to enter by selecting their corresponding checkboxes. The same principle is used for the other group, Bl, Re, Qes, Rms and Qts.

On the driver tab also the number of drivers, their mounting (normal or isobaric), the voice coil temperature and an added acoustic pathway can be entered. The single driver data can be loaded from a file or entered manually. Most parameters can usually be found in the data sheets from the manufacturer, but the Le and Le loss values are rarely specified as in Basta!. Instead, the Le and Le loss values should be determined by comparing a measured impedance curve with the Basta! model. See Determining Le and Le loss below.

The driver also has two level limiting factors that are used to determine the maximum output level (MOL) of the system; the maximum peak one-way cone amplitude, Xmax, and the maximum power dissipated in Re, Pmax.

If the number of drivers is even, the drivers can be mounted in isobaric configuration. The voice coil temperature can also be changed; it is normal that the voice coil gets heated during heavy load, and the effects of this can be seen by changing value in the temperature box. The data for the single driver are assumed valid at 20 °C.

An added pathway can also be added; the effect of this is a delay that is added to the signal. This feature is useful to simulate the effects of multiple drivers mounted at different distances from the microphone. Note that the vents have a similar setting that can be used for vents mounted far away from the driver, for example if it is mounted on the back of the box.

Basta! calculates some data on a driver equivalent to the configuration selected; the total compliance, moving mass, an equivalent effective drive diameter, Qes, Qms and Qts, and a maximum volume displacement. Some erroneous driver data can yield negative values for Qms, this is indicated by red color on the Qms value. The maximum volume displacement, Vmax, is the product if Sd and Xmax. This value is an important factor for the maximum output level at low frequencies, and can be used to compare drivers and driver configurations in that aspect.

The Show kr=1 checkbox enables a vertical dashed line in the response graph at the frequency where the circumference of the equivalent driver equals the wavelength. Below this frequency the driver is approximately omni-directional, above this frequency the driver has a more pronounced directivity, all under the assumption that the cone behaves like a rigid piston. Even though the transition from omni-directional to directional is gradual, the line can help to get an estimate on the directivity of the driver, in particular to indicate if the frequency range of interest is well below kr=1, i.e. in the omni-directional region.

The Vent / passive radiator tabs also have a Show kr=1 checkbox.

The Driver tab. Here, the user has selected to input fs, Vas and Sd, Mms, and Cms are calculated by Basta!. The user has also selected too input Bl, Re and Qts, and Qes and Rms are calculated by Basta!.

Box tab

On the box tab the type of box and the box size is selected. The data for baffle edge diffraction, ie the baffle step is entered in the baffle designer, which can be started by the baffle designer button or from the tools menu.

Box types:


For the box there are three parameters, the box volume, degree of isothermalization and the Q value of the box. The two latter are closely associated with the amount and type of damping material in the box.

The Q value models the other effect of damping material. A lower Q value corresponds to a more damped box with more damping material. For the bandpass boxes that has two cavities, each of those boxes have volume and Q settings.

Damping material also has the effect that the compression and de-compression of air becomes isothermal, rather than adiabatic due to heat exchange between the air and the damping material. The result of this is that the box can appear up to 40% larger for a heavily damped box than for an empty box. Basta! does model such isothermal behavior, by treating a percentage, Viso, of the box volume as having isothermal decompression/compression of the air. Depending on the damping material, this volume should be set slightly smaller than the actual volume of the damping material. Basta! calculates an effective Vb from Vb and Viso that is used in the simulations.

Viso is a number between 0% and 100%. If Viso is 0% the box is empty and the compression of air is considered adiabatic. If Viso is 100%, the box is full with an ideal material that makes compression completely isothermal.

When a driver is placed in a lossless closed box, the system will have a higher resonance frequency and Q value than the driver had in free air (fs and Qts). These values are calculated automatically for the closed box, but also for the vented box and the 1-ported bandpass box. For the 1-ported bandpass box, Vb2 only is used for this calculation. It might seem odd to display these numbers for all boxes, since they strictly are only valid for the closed box, but it turns out that they can be useful for the dimensioning also of the other box types.



The Box tab. The first panel illustrates a vented box with a volume of 23 liters. The other panel illustrates a 2-ported bandpass system with two cavities of 23 and 10 liters, respectively. Boxes have some amount of damping material, giving a box Qb of 5 and a partly isothermal compression/decompression of the air (Viso=40%).

Baffle designer

The baffle geometry is entered in the Baffle designer. A baffle adds edge diffraction, which affects the frequency response of the system. This change in the response is called the baffle step. The baffle edge diffraction, and thus the baffle step, can be included in the Basta! simulation of response curves. The number of edge sources per driver and vent source can be set under Edge sources. A higher number of edge and driver sources results in a higher precision of the simulation, but takes longer to compute. The appropriate source density can be set by changing the value while looking at the changes in the response. Once the changes are small, the source density does not need to be increased further.

A high source density is most important for simulation at high frequencies, and simulations with the microphone extremely close to the driver/vent.

The wall behind the loudspeakers reflects the sound, and just as the reflections at the baffle edges, the back wall reflection alters the response of the system. The back wall reflection can be included for any speaker, but it is particularly relevant for wall mounted speakers, since the baffle-to-wall distance is well known.

The arrow buttons can be used to restrict the movement of the items horizontally or vertically. There are also 2-4 buttons to lock or free the movement of corners, drivers, microphone and back wall fixpoints.


Note: Basta! uses the same model for edge diffraction as The Edge free software from Tolvan Data, available at



The geometry seen in a 3D perspective. Here, the virtual microphone position is 1 meter in front of the baffle, and 0.3 meters to the side.


The Baffle designer. This system has two drivers (blue circles) and one vent (green circle).


If the Far field check box on the Box tab is checked, the distances to all driver and edge sources are the same. If the far field check box on the box tab is not checked, a microphone symbol appears in the baffle designer. In this case the z-coordinate of the microphone is specified under Mic-baffle distance and the x- and y-coordinates are specified by the placement of the “mic” symbol in the Baffle designer.


Here the Far field checkbox is unchecked which reveals the mic symbol. In these cases the microphone is placed 1 meter in front of the baffle and at 0.6 m above the lower edge of the baffle. In the first case the microphone is placed straight in front of the baffle, in the other the microphone is offset 0.5 meters to the right, or 30° off axis.




The response of the three microphone positions above. The black curve corresponds to the far field response, the blue curve to the 1 m response in front of the drivers, the red curve corresponds to the system with the microphone to the side. Note the response drop at high frequencies.


For additional details on the Baffle step, see the Baffle step tutorial below.

Back wall reflection

Basta models back wall reflections in a way intimately connected to the modelling of the baffle step. When back wall reflection is on, each edge source result in another source of opposite sign and delayed corresponding to twice the distance between that particular source and the wall. Three fixpoints in the baffle designer define the baffle-to-wall distance. If all distances are set equal or if the Baffle and wall are parallel checkbox is checked, the baffle and wall are parallel.

If the Box is mounted on a wall checkbox is checked, three back wall fixpoints become visible in the baffle designer. The fixpoint locations in the baffle designer and their distances defined on the box tab define the orientation of the wall behind the baffle.

The back wall reflection feature is primarily intended for speakers mounted on-wall, such as surround speakers. The simulation is most accurate for small angles between the back wall and baffle.

The three fixpoints are shown in the baffle designer by yellow markers. The distance between the baffle and back wall in these three points are set under Baffle-wall distance. In this case fixpoints 1 and 2 define the distance to 150 mm across the left edge of the baffle, and the placement and distance of the third fixpoint sets the distance at the right edge to 30 mm, since fixpoints 1 and 2 are equal and aligned vertically. The vertical dashed line indicates where the baffle plane and the back wall would intersect if the baffle was infinitely large.

Multiple systems

If Basta! has several systems loaded, such as a woofer and a tweeter, the baffle designer can show them all simultaneously, for example to avoid placement of the drivers on top of each other. Basta can also use a common microphone position, and this is very useful for studying the directivity near the crossover frequency of multi-way loudspeaker systems.

A system with a dual driver bass reflex woofer system (gray circles) and a tweeter system (black squares). A common microphone position is used (yellow) positioned to the right.

Measured response

Basta! can import response curves from Tolvan’s loudspeaker analyzer Sirp. Basta! needs at least one response curve and the electrical impedance of the driver mounted in the box in order to simulate the behaviour of crossover filters etc. Several response curves can be imported, for example for different directions.

If there is no impedance curve, Basta! cab use a purely resistive load of 4 ohms. This is not recommended if passive circuits are to be used, but if only active circuits are used it is ok. A delay corresponding to an added pathway can be added to compensate for different loudspeaker-to-microphone distances. Note, however, that this compensation does not take the varying directivity and baffle diffraction effects into account.

The Measured response tab. Here impedance and frequency response data can be imported to Basta! from Sirp.


Importing text files

Text files from various other softwares can be imported to Basta!. The settings for the import may have to be altered. The column separator is the character between the columns. The decimal separator is typically the period in decimal numbers, but for some international settings some softwares use a comma as a decimal separator. This is particularly true for Microsoft Excel. The amplitude data can either be expressed on a linear or logarithmic scale. Sound level data is mostly expressed in dB re 20 µPa i.e. on a logarithmic scale, and electrical impedance data is expressed in ohms, i.e. on linear scale. Basta! assumes that frequency in Hz appears in the first (leftmost) column, amplitude data in the second column and phase information in degrees in the third column. Any additional columns are ignored.


The Text file import dialog. Be careful to select the settings so they match the file.

Vent / Passive radiator tab

For the vented and bandpass boxes, one or more vents are needed. This vent is considered as one or more cylindrical tubes with a diameter and a length. This air mass in this vent will form a Helmholtz resonator together with the cavity of the box. The diameter or cross-sectional area Sp, and the resonance frequency fp is entered and Basta! calculates the length of the tube.

Some of the free air on both sides of the port adds to the oscillating mass, the actual port length needed is somewhat shorter than the effective length. Both these lengths are calculated by Basta!, but usually only the actual length is interesting for the box design.

If multiple vents are used, the diameter, Sp and lengths numbers represent each one of the vents.

The vent can also have some resistive losses, and these are entered by the Qp value. A higher Qp value corresponds to smaller losses.

Like organ pipes, vent tubes have pipe resonances in addition to the Helmholtz resonance. This resonance originates in that the air in the tube is compressible, and that the tube behaves like a wave guide. The resonances occur at frequencies where the tube length is an integral number times the wavelength. Basta! can model these resonances by dividing the tube in sections, and considering each of these parts having a mass and a compliance. By entering a number of tube sections greater than zero, this model is invoked. Typically 5-10 sections are sufficient to predict the behavior of the first resonances. Note: Compared to measured data on real systems, Basta! seems to overestimate the amplitude of the resonances, probably due to that some losses that occur at high frequencies in the real world are not included in the Basta! model. Nevertheless, the frequencies of the resonances that Basta! predicts are accurate if the number of sections is high enough.

Ideally, the vent tube behaves like an acoustic mass in the frequency range of interest. However, the behavior of a real vent changes when the amplitude becomes too high. The mechanisms behind vent overloading are very complex and in critical designs the tube should not be made a cylindrical tube with sharp edges but rather have smooth, rounded edges at both openings. Anyway, there is a level at which the tube stops behaving like a mass, and critical factors determining this level is the excursion and velocity of the air mass.

The excursion and velocity can be given limits for the calculated maximum output level (MOL) of the system. The max peak excursion can be entered either in millimeters, or relative to the actual port length. The latter ensures that a certain percentage of the port air mass stays inside the tube during the oscillatory cycle.

In cases when the tube length becomes impractically long, i.e. when pipe resonances occur at a too low frequency, a passive radiator can be considered instead. Typically, this occurs in small boxes tuned to low frequencies, and when a high maximum output level is desired. A passive radiator is as an ordinary loudspeaker element, but without the electromagnetic driver motor. Passive radiators commonly have a longer maximum linear cone excursion, Xmax, than a driver.

For the passive radiator, Basta! needs an extra parameter, Vas. Just as with a driver, Vas determines the suspension compliance of the passive radiator. The compliance, combined with the moving mass gives the passive radiator a free air resonance frequency, which typically occurs at least one octave below fp. Basta! calculates the moving mass needed to get the desired fp. Passive radiators often have the option of adding an extra mass to the cone, so adjustment of the mass is possible.

The velocity and excursion limits applied to the vent tube can also be applied to the passive radiator. The velocity limit is rarely useful, but the excursion limit should be set to the Xmax of the passive radiator.

For the Show kr=1 checkbox, see the Driver tab

For bandpass boxes with two vents, there is a nearly identical second tab for the second vent.


The Vent / Passive radiator tab. The first panel illustrates a vent with a cross-sectional diameter of 50 mm tuned to 35 Hz, the other panel a passive radiator with an equivalent piston area of 200 cm2, tuned to 35 Hz. Note that red text under Max peak excursion, indicating that it is inappropriate to enter the max excursion relative to the port length, since a passive radiator does not have a port length. The absolute setting should be selected instead and the Xmax value for the passive radiator should be entered under Absolute.

Room gain

“Room gain” is a term frequently used term for the boost of low frequencies that occur when a sound source is placed in a room. Simulating this gain accurately is difficult (but possible with other software) and it is questionable if it even is desirable for the loudspeaker designer. Mostly, the room in which the loudspeaker is to be used is not known and it is even more unlikely that the exact placement in that room is known. Furthermore, there are psychoacoustical aspects that might make a complete compensation for the transfer function from the loudspeakers to the listening position less desirable.

The approach to consider room gain in Basta! is to approximate an average low frequency boost by a pole pair and a zero pair. The default values in Basta! might be considered as a sensible gain to compensate for in an average listening room.

Acknowledgements goes to Ingvar Öhman for fruitful discussions on the default values. 

The room gain tab. Here two poles are placed at approximately 80 and 17 Hz, and two zeroes both at 80 Hz. In this case one pole cancels one zero since the have (nearly) the same frequency.

Design suggestions

On the Internet, several design formulas can be found that determine the box volume and tuning. Three of these are implemented in Basta! on the Design suggestion tab at the request of the users. These equations originate from a time when computer simulations were rare and loudspeakers were designed with a calculator at best. They do not consider important factors such as voice coil inductance,  room gain or the baffle step, which in turn makes their results deviate from an optimal design. Nevertheless, they can serve as starting points, keeping in mind that it is usually worth tweaking the design further.



Curves tab

Basta can calculate some 20-40 curves for the systems depending on the box type. Displaying them all at the same time would however be slightly confusing. Therefore, it is possible to show only the curves of interest. Which curves that are displayed are selected on the Curves tab.

The Curves tab. With this setting, the four selected curves will appear in the response graph.

Appearance tab

Each of the curves in the response graph can be displayed using different style, width and color. An appearance can be saved as a Color scheme, which will contain the style, width and color for each curve. By default the curves of a system are displayed in a preset color scheme suitable for viewing a single system, but when viewing more than one system it is often preferable to assign each system a unique color instead. Such color schemes can be downloaded from Tolvan Data, by the download button.

Note: If the line width greater than one, the style can only be a solid line on most graphic drivers.


The Appearance tab.

Comment tab

Any text can be entered on the comment tab.

The comment tab.

The response window

In the response window, the results of the Basta! simulations are presented. It can contain 1 to 3 graphs; group/phase delay, phase and amplitude. If all three are visible, the upper panel contains group and/or phase delay information, the middle panel contains phase information and the lower panel contains amplitude information.

The two upper panels can be hidden from the view options dialog on the tools menu. The grid in the response graph can belong to any of the y-axes, to select a grid, drag the corresponding axis. The frequency and the amplitude of the currently selected y-axis at the cursor are displayed on the status bar at the bottom of the window. Click in the graph move the cursor and show the values. If a curve is selected on the curves tab, the value of that curve at the cursor frequency is also shown and the cursor snaps to that curve.

The response is automatically redrawn as values are changed, but this feature can be switched off on the Response menu. This is particularly useful when the system configuration is computationally demanding, for example when the number of sources in the baffle designer is high. In that case the curves can be redrawn manually by clicking on Response|Plot now!.

A legend identifying the systems can be shown in the lower panel, indicating the color and style of the “System response” curve of each system.


The response window. The impedance axis is selected, and the impedance grid is therefore active. The mouse cursor is located at 36.8 Hz / 4.995 W. Since the system response curve was selected on the curves tab, the system response at 36.8 Hz is also shown as 83.92 dB.


The scales of the axes can be changed by dragging them with the mouse. Each scale has three zones, which will result in different changes when dragging the mouse.

The three different zones of the level axis. Each zone is indicated by the change of the cursor. If the mouse button is pressed on the lower zone, the axis is stretched/shrinked with the topmost value of the axis fixed. The opposite applies in the topmost zone. The mid zone is used to drag the entire scale up/down, without stretching/shrinking.


The settings for the response window can be changed by selecting Tools|view options on the menu.

The response window transparency can make the windows transparent, which is very useful for comparing the Basta! simulations with results or measurements from other programs. When the window is transparent, it can be put on top of other windows, and with proper axis adjustment, the curves of Basta! can be compared to those in the other window. To make such comparison possible, all amplitude axes, except for the level axis, can be set to be either linear or logarithmic.

To show the phase phase delay or group delay of the curves in the response window, check the corresponding checkboxes. If group delay is shown, a line can be drawn at the delay d=0.8/f , which is an approximation of the audibility threshold in the range 20-200 Hz.

Finally, a sum of systems can be shown; this is useful for designing loudspeaker systems with different speakers for different frequency ranges (woofer, tweeter etc.). The responses of the selected systems are added, including phase, and if they do not contain active filters, they are included in an impedance curve too.


The View options dialog.

The response curves

Below the curves in the response graph are described. They are described for a vented box, but the descriptions are in most cases valid for the other box types as well, when the curves exist.

System response / Driver response / Vent response / Electrical impedance

In the vented box, the system frequency response is the sum of the response from the driver and the vent. The system response is probably the most interesting curve that Basta! generates.

The System response (black) / Driver response (solid blue) / Vent response (dotted blue) / Electrical impedance (dashed green).  It can be seen that the vent response has a peak at 35 Hz, which is fp for the vent. Above this frequency, the contributions are in-phase and the system response becomes greater than the individual contributions. Below fp, they are out of phase, and the system response level becomes lower than the individual levels. 

Cone velocity and displacement

The cone velocity and displacement. While the cone velocity is mostly of academic interest, the cone amplitude is a very important property that often determines the maximum output level from a system at low frequencies.

The driver velocity (yellow) and excursion (red). Both curves have a minimum at the resonance of the vent, fp. This is one of the benefits of the vented system; the cone excursion does not have to be as large as for a closed box. 

Vent velocity and displacement

Similarly to the driver, the velocity and displacement of the vent can be shown. Both of these are important for the maximum level that the port can generate.

The vent velocity (yellow) and excursion (red). The vent velocity has a maximum at fp.

Driver and vent baffle step

The baffle step is a 6 dB rise towards high frequencies, and the details of the response depend on the size and geometry of the baffle and the placement of the driver. The vent baffle step is mostly of little importance since the vent contribution is small for high frequencies. Here, the vent is only simulated with a single point source, which in turn results in an unimportant ripple towards high frequencies.


The driver (solid gray) and vent baffle step (dotted).

Box pressure

The pressure inside the box is interesting for two reasons. Firstly, a very high box pressure can be a source of distortion, secondly, the box pressure has a very close relation to the radiated sound at low frequencies, and a measurement of the pressure inside the box with a microphone can be used as a verification of the response of the system. Such a measurement is valid below the lowest box resonance, corresponding to the largest dimension of the box. The box pressure can be very high, particularly in small boxes and at low frequencies. Since levels above 140 dB are common, you should either make sure that the microphone can handle these levels, or lower the signal to a sufficiently low level.

The box pressure (light blue). Note the large level difference between the inside and outside of the box at low frequencies. At 35 Hz, the box pressure level reaches 140 dB. Still, the level outside the box, at 1 m distance, is only about 83 dB.

Electrical impedance, resistance and reactance

The electrical impedance shows the impedance of the system, including the passive filter and advanced network. This impedance can be divided in a resistive part and a reactive part. The reactive part becomes negative if the impedance is capacitive.

The electrical impedance (green), resistance (red) and reactance (blue). 

Reactance interpreted as an inductance

The reactive part of the impedance can be interpreted as a frequency-dependent inductance. For example, it is common for manufacturers to measure the voice coil inductance as the reactive part of the impedance at a certain frequency, e.g. 1 kHz. While this interpretation of the reactance can be illustrative and useful for determining the value to enter in the Le box, a comparison with a measured impedance curve is far better.


The reactive part of the impedance interpreted as an inductance (blue). Note that when the impedance is capacitive, the resulting inductance appears as negative.


The reactive part of the impedance interpreted as an inductance (blue)(magnified). An inductance measurement of this driver at 1 kHz would result in about 0.41 mH, but at 10 kHz the result would be about 0.24 mH. This illustrates that the voice coil inductance varies with frequency and that Basta! can model it.

Room gain

The room gain approximation typically results in a bass lift of some 10 dB at the lowest audible frequencies. This gain can be displayed as a separate curve in the response window.

Room gain (thin curve).

Linkwitz transform

The Linkwitz transform adds a gain at low frequencies by means of an active circuit before the power amplifier. The effect on the frequency response of the system is very similar to that on the room gain tab, but in this case also the voltage from the power amplifier is changed. More information on the Linkwitz transform and its implementation is available on and on several other sites on the web.

Linkwitz transfom (thin curve)

Maximum output level (MOL)

Basta! can calculate the maximum output level (MOL) that the system can deliver. This level is based on five limits that can be set individually, and MOL is the maximum level at which neither of the limits is superseded. The MOL curve does not represent actual frequency responses, but simply the highest level of sound that can be produced at different frequencies without exceeding any of the limits.



The maximum output level (gray).

Driver voltage at MOL

This curve shows the voltage required at the driver in order to reach MOL. If there is no passive filter or advanced network, this curve is identical to the amplifier voltage at MOL (which otherwise can be shown as a separate curve).


The driver voltage at MOL (green).

Cone excursion and velocity at MOL

Basta! can show the cone excursion and velocity at the maximum output level of the system.

The cone excursion (red) and cone velocity (yellow) at MOL. It can be seen that the cone excursion reaches the maximum allowed excursion (Xmax) below 28 Hz and between 45 and 120 Hz. From this it is clear that the cone excursion limits the maximum output of the system at these frequencies.

Vent velocity and excursion at MOL

Basta! can show the vent excursion and velocity at the maximum output level of the system.

The vent excursion (red) and velocity (yellow) at MOL. The velocity reaches its maximum allowed value between 28 and 45 Hz, and from this it can be seen that the port velocity limits the maximum output level of the system in this range.

Box pressure at MOL

Basta! can show the sound pressure level inside the box at the maximum output level of the system. This level can become very high. This is important since the air itself can become non-linear, causing distortion. Also, high SPL inside the box can make the suspension of the cone behave unpredictable due to the high forces from the pressure difference on the in- and outside of the suspension. Thus it is recommended to keep this level reasonably “low”, typically below 160 dB.

Box pressure at MOL. For this system, the box pressure can exceed 150 dB at 45 Hz.


The MOL for the system is based on five limits. One way of viewing the effects of the limits is the MOL. Another way is the margin between the limit and what is used for the simulation. For example, if the power amplifier generates 2.83 volts and has a limit of 283 volts, the margin is 100 times or 40 dB. Such a margin exists for each of the five limits.


Margins. The figure shows the margin for power amplifier voltage (green), cone excursion (solid red), vent velocity (yellow) and excursion (dotted red) and Re power (dashed black). The gray curve shows the lowest value for all the margins and determines the MOL for the system together with the response curve (solid black).

Driver/amplifier voltage

If there are passive filters or an advanced network present, the driver voltage will be different from that of the voltage source. If the filters are active or if AC-bass is invoked, the amplifier voltage will also be altered. These voltages can be shown by the driver voltage / amplifier voltage


Driver (lower green) and amplifier (upper green) voltage. This system has an active highpass filter at 300 Hz and a passive lowpass filter at 2000 Hz to demonstrate the differences between the curves.

Constants dialog

The constants dialog box includes the speed of sound and density of air. These values rarely need to be changed. The Significant digits setting changes the number of significant digits that are displayed for values calculated by Basta!. The repaint delay is a delay between entry of numbers and the start of a recalculation of the response curves.

The constants window.

What Basta! cannot model

While Basta! can simulate many of the aspects that are important in loudspeaker design, there are also a few things that are not considered in the simulations. In particular, these issues should be kept in mind:

Cone break-up

Above a certain frequency, the cone of the loudspeaker driver stops acting like a rigid piston. This leads to that different parts of the cone oscillate at different phase and the response of the driver becomes irregular. The resulting response is dependent on the design of the driver, and in particular the propagation speed of waves within the cone, the cone size and losses in the membrane and suspension.

Basta! does not model this phenomenon, which leads to a discrepancy at high frequencies between the actual driver response and the response modeled by Basta!. Using the transparency feature of the response window and response graphs published by the manufacturers can reveal these differences, such that they can be considered during the design process.

Wall/floor/ceiling reflections, Room resonances

Basta! does not model the effects of reflections of a particular room, except for those from the back wall for wall mounted loudspeakers. However, Basta! can approximate an average room; this room is represented as a smooth bass lift without the resonant behavior of typical rooms. After all, this is what the loudspeaker designer typically wants; loudspeakers should rarely be optimized for a particular room and a particular placement within that room.

Box resonances

Resonances inside the box can cause changes in the response curve of the loudspeaker system. Such resonances can be avoided, either by adding a sufficient amount of damping material in the box or filtering out frequencies at which resonances occur (e.g. by a lowpass in a subwoofer). Basta! does not model box resonances.

Non-cylindrical vents

Basta! assumes a cylindrical tube for each vent of the vented and bandpass boxes. There are, however, good reasons to use other shapes of the vent, eg flanged ends and/or multiple tubes. Basta! provides no help to convert between these types of vents. The effects of different cross-sectional area shapes is however, rather easy to approximate; just enter the total area of the vent(s) under Sp and use the suggested port length for the tube(s). After building the system, the tuning can be verified by comparing the simulated electrical impedance with measurements.

Edge diffraction directivity

The edge sources used in the Basta! simulation of diffraction does not have any directivity. This is perfectly ok for locations straight in front of the baffle, and actually rather far to the sides too. However, as the microphone position approaches the 90° direction, there will be serious discrepancies between the simulation and reality. This is particularly true for open baffle simulations; the reduced level to the sides due to dipole directivity at low frequencies (the “8”) does not appear in the Basta! simulations.


Basta! only models the small-signal, linear behavior of the system. However, the limits for the amplifier, driver and vents provide a reasonably powerful way to keep the non-linearities under control.

Version history

First release.

Added features:

·        A checklistbox for selection of which systems that are to form the system sum.

·        Unit for coils and capacitors in advanced network are now mH an µF.

·        The automatic replot of the Response window can be disabled. This is useful for complex systems that take a long time to redraw.

·        User is informed at first run on a system that Basta! checks for new versions automatically. Users with a firewall just got a notice that Basta! does something on the Internet, which may appear suspicious. The autocheck feature can be permanently switched off on the Help menu.

·        Saving of .basta files is now allowed also in the demo version.

·        Bug fix: Bad behavior of the advanced component list when switching between systems fixed.

·        Bug fix: Automatic update tended to indicate a new version when there was none. Fixed.

·        Added aspect ratio adjustment to 25 dB/decade of the response window to the response menu. Clicking on this option sets the aspect ratio of the response amplitude graph to the same as “The” classical paper size. This allows for easy visual comparison between curves.

·        Back wall reflection. This feature is necessary for designing wall-mounted speakers, since the back wall reflection occurs near (in time) to the direct sound from the loudspeaker.

·        Added display of group delay.

·        Added display of phase delay.

·        Bug fix: Phase response of the sum of systems contained all systems listed in the “show sum of these systems” listbox, not only the checked ones. Fixed.

·        Removed the feature back wall for the open baffle. This was available in, but produced inaccurate results.

·        Added Viso, which represents the isothermal effects that makes the box appear bigger due to stuffing.

·        Added groups for data input. The groups are fs-Mms-Cms-Vas-Sd and Bl-Re-Qes-Rms-Qts and the parameters within these groups are interdependent. Which parameters that should be entered is selectable with checkboxes, and the other ones are calculated by Basta!.

·        Other minor bugs and quirks fixed.

·        Used a newer version of the complier; this fixes some minor OS specific errors.

·        Multiple systems are shown in the baffle designer.

·        Output impedance Rg of the amplifier (before the voltage margin).

·        Design suggestions using three different commonly found design formulas.

·        Room gain approximation.

·        The response window is now completely non-transparent when the “response window transparency” slider is in its rightmost position (some screen grabbers had problems otherwise).

·        A cursor is now present in the response window.

·        Curve colors are now saved with the systems.

·        Legend in the response graph and the systems list box.

·        Axis ranges are now saved between sessions

·        Slight adjustment of constants to more accurate values at 20 °C (c=343.6 m/s, r0=1.204 kg/m3).

·        Minor fixes of hint texts.

·        The mouse scroll wheel can now be used to zoom in the baffle designer.

·        Fixed a bug concerning file names during save.

·        Fixed a bug concerning the microphone position in baffle designer.

·        Fixed a bug, Qes sometimes became zero when loading a system or driver from file.

·        The <unknown> design suggestion was replaced by that of Margolis/Small, which produced nearly identical results.

·        Added support for multiple vents

·        Added entry of vent diameter

·        Added support for Linkwitz transform

·        The volume of air enclosed by the vent(s) is now shown.

·        Added support for source density>1 also for vents; this enables simulation of close-field measurement of vents.

·        Added individual microphone distance to each system. This enables comparison between measurement distances

·        Export of response curves to text files

·        Added selection of font for the axes in the response window

·        Added a “Reverse polarity” checkbox on the driver tab

·        The sensitivity of a driver is shown on the driver tab

·        Qb is considered for the Q in box value

·        New color schemes are now available with more colors

·        Added a delay for updating curves; Basta! now waits approximately 1 s to update curves in order to avoid frequent redrawing.

·        Moved baffle designer settings to the baffle designer

·        Fixed quirk that caused multiple updates, slowing down the redraw procedure

·        Fixed a flaw in how co-oscillating air was calculated. The difference is small however, typically within tenths of a dB.

·        Fixed a bug in opening of .bastaelement files.

·        Changed clipboard copy shortcut of response data from ctrl-c to ctrl-e, since ctrl-c prohibited copy between parameter entry fields.

·        Added a “change all colors” button to the appearance tab.

·        New file format. Basta! Can still open and save in the old format, but older versions cannot open the new format.

·        Added saving/restoring of response window settings.

·        Added ability to increase/decrease most numerical values with the up/down keys on the keyboard.

·        Fixed a bug in recently used file lists for window settings and basta files.

·        Fixed a bug in file format for window settings.

·        Improved the increase/decrease functionality.

·        Last free update for Basta! version 1

·        New version

·        Added support for importing measured data from Sirp and text files.

·        Improved support for text file import

·        Bug fix: Basta! remembered the .basta file location even if a file was moved to another computer and saved it in that location on the new computer, rather than where it was opened from.

·        Fixed colors of legend for measured systems so that the color of the first measured curve is shown.

Known problems

Some older computer systems experience BSOD (blue screens) when Basta! is run. See I am very interested in having reports from those of you who experience this. I am particularly interested if the test program on the page above ( also causes your system to crash. Note: As time has passed, this appears not to be a problem anymore; nowadays I hardly ever get any reports regarding this.