VIEWXDCR View your transducer (XDCR)
VIEWXDCR plots the transducer defined in the structure PARAM.
Contents
Syntax
VIEWXDCR(PARAM) plots the transducer (xdcr) defined by the parameters included in the structure PARAM (see below).
The transducer can be a rectilinear or convex ULA (uniform linear array), for a use with TXDELAY, PFIELD, and SIMUS, or a planar array such as a matrix array, for a use with TXDELAY3, PFIELD3 and SIMUS3. See below the fields of the PARAM structure.
P = VIEWXDCR(PARAM) also returns the patch object that contains the data for all the elements of the transducer.
Note: If a transmit apodization is given (PARAM.TXapodization), it determines the element colors.
The structure PARAM
PARAM is a structure that contains the following fields:
- UNIFORM LINEAR ARRAY (rectilinear or convex)
- PARAM.Nelements: number of elements in the transducer array (required)
- PARAM.pitch: pitch of the array (in m, required)
- PARAM.width: element width OR PARAM.kerf: kerf width (in m, required; width = pitch-kerf)
- PARAM.height: element height (in m, ignored if Y is not given). The default is Inf (no elevation focusing)
- PARAM.radius: radius of curvature (in m). The default is Inf (rectilinear array)
- 2-D PLANAR ARRAY (e.g. matrix array)
- PARAM.elements: x- and y-coordinates of the element centers (in m, required). It MUST be a two-row matrix, with the 1st and 2nd rows containing the x and y coordinates, respectively.
- PARAM.width: element width, in the x-direction (in m, required)
- PARAM.height: element height, in the y-direction (in m, required)
- TRANSMIT PARAMETERS
- PARAM.TXapodization: transmision apodization (default: no apodization)
X-, Y-, and Z-axes
Conventional axes are used:
The X axis is PARALLEL to the transducer and points from the first (leftmost) element to the last (rightmost) element (X = 0 at the CENTER of the transducer).
The Z axis is PERPENDICULAR to the transducer and points downward (Z = 0 at the level of the transducer, Z increases as depth increases).
For a convex array, the X axis is parallel to the chord and Z = 0 at the level of the chord.
The Y-axis is such that the coordinates are right-handed.
Rectilinear, convex, and matrix arrays
The geometry and axes of the transducer arrays are defined by the figure below.
Example #1: Phased-array transducer with apodization
This example shows a phased-array transducer with transmit apodization.
Download the properties of a 2.7-MHz 64-element cardiac phased array in a structure param by using GETPARAM.
param = getparam('P4-2v');
Define a Hann window apodization.
param.TXapodization = sin(pi*linspace(0,63,64)/64).^2;
Plot the transducer.
figure viewxdcr(param) colormap parula c = colorbar('SouthOutside'); c.Label.String = 'TX apodization'; title('64-element phased array w/ apodization')
Example #2: A convex tranducer
This example shows a convex tranducer.
Download the properties of a 3.6-MHz 128-element convex array in a structure param by using GETPARAM.
param = getparam('C5-2v');
Plot the transducer.
figure
viewxdcr(param)
title('128-element convex array')
Example #3: A matrix array
This example shows a 32-by-32 matrix array with transmit apodization.
Create a 3-MHz matrix array with 32x32 elements.
param = []; param.width = 250e-6; param.height = 250e-6;
Specify the x- and y-coordinates of the elements.
pitch = 300e-6; % pitch (in m)
[xe,ye] = meshgrid(((1:32)-16.5)*pitch);
param.elements = [xe(:).'; ye(:).'];
Define a 2-D Hann window apodization.
apod = sin(pi*linspace(0,31,32)/32).^2; apod = apod'*apod; param.TXapodization = apod(:);
Plot the transducer.
figure viewxdcr(param) title('32\times32-element matrix array') colormap cool c = colorbar('SouthOutside'); c.Label.String = 'TX apodization';
See also
getparam, pfield, pfield3, simus, simus3
About the author
Damien Garcia, Eng., Ph.D. INSERM researcher Creatis, University of Lyon, France
websites: BioméCardio, MUST
Date modified