rayleigh_cw()
Description: Calculates pressure field generated by a transducer array in homogeneous media using the Rayleigh-Sommerfeld Integral.
Usage
pressure = rayleigh_cw(transducer_array, coordinate_grid, medium, ndiv, f0);
pressure = rayleigh_cw(transducer_array, coordinate_grid, medium, ndiv, f0, disp_flag);
pressure = rayleigh_cw(transducer_array, coordinate_grid, medium, ndiv, f0, disp_flag,nthreads);
Arguments
- transducer_array A transducer_array.
- coordinate_grid A coordinate grid struct like the ones created by set_coordinate_grid.
- medium A medium struct like the ones created by set_medium.
- ndiv The number of integral points to use.
- f0 The frequency of the array.
- disp_flag Display flag, 1 = display, 0 = suppress.
- nthreads The number of threads to use in the calculation.
Output Parameters
- pressure A 3-d array representing the complex pressure at each point in space.
Notes
Threading in FOCUS is implemented at the transducer level, meaning that single transducers will not benefit from this feature.
Specifying a number of threads larger than the number of CPU cores available will not result in a significant additional speed increase and may in fact result in slower speeds due to additional inter-thread communication overhead.