# focusedBowlONeil

Compute O'Neil's solution for focused bowl transducer.

## Syntax

```[p_axial, p_lateral] = focusedBowlONeil(radius, diameter, velocity, frequency, sound_speed, density, axial_position, lateral_position);

```

## Description

`focusedBowlONeil` calculates O'Neil's solution (O'Neil, H. Theory of focusing radiators. J. Acoust. Soc. Am., 21(5), 516-526, 1949) for the axial and lateral pressure amplitude generated by a focused bowl transducer when uniformly driven by a continuous wave sinusoid at a given frequency and normal surface velocity.

The solution is evaluated at the positions along the beam axis given by `axial_position` (where 0 corresponds to the transducer surface), and lateral positions through the geometric focus given by `lateral_position` (where 0 corresponds to the beam axis). To return only the axial or lateral pressure, set the either `axial_position` or `lateral_position` to `[]`.

Note, O'Neil's formulae are derived under the assumptions of the Rayleigh integral, which are valid when the transducer diameter is large compared to both the transducer height and the acoustic wavelength.

Example:

```% define transducer parameters
diameter    = 120e-3;   % [m]
velocity    = 100e-3;   % [m/s]
frequency   = 1e6;      % [Hz]
sound_speed = 1500;     % [m/s]
density     = 1000;     % [kg/m^3]

% define position vectors
axial_position   = 0:1e-4:250e-3;       % [m]
lateral_position = -15e-3:1e-4:15e-3;   % [m]

% evaluate pressure
[p_axial, p_lateral] = focusedBowlONeil(radius, diameter, velocity, ...
frequency, sound_speed, density, axial_position, lateral_position);

% plot
figure;
subplot(2, 1, 1);
plot(axial_position .* 1e3, p_axial .* 1e-6, 'k-');
xlabel('Axial Position [mm]');
ylabel('Pressure [MPa]');
subplot(2, 1, 2);
plot(lateral_position .* 1e3, p_lateral .* 1e-6, 'k-');
xlabel('Lateral Position [mm]');
ylabel('Pressure [MPa]');
``` ## Inputs

 `radius` transducer radius of curvature [m] `diameter` diameter of the circular transducer aperture [m] `velocity` normal surface velocity [m/s] `frequency` driving frequency [Hz] `sound_speed` speed of sound in the propagating medium [m/s] `density` density in the propagating medium [kg/m^3] `axial_position` vector of positions along the beam axis where the pressure amplitude is calculated [m] `lateral_position` vector of positions along the lateral direction where the pressure amplitude is calculated [m]

## Outputs

 `p_axial` pressure amplitude at the positions specified by `axial_position` [Pa] `p_lateral` pressure amplitude at the positions specified by `lateral_position` [Pa]

`mendousse`