hello, can anybody hello me solve the problems?
I wanna define a circular phased array ultrasound with 16 elements and the focus point is at center of the circle.
I have two methods to approach problem.
the below is Matlab code.
1:define one element of the transducer.
source_shape1 = makeCircle(Nx, Ny, 0, 0, 100, pi/8);
2:Rotate source_shape1 about pi/8 as the second element
source_shape2 = imrotate(source_shape1, pi/8)
2:Rotate source_shape1 about pi/8 as the third element
source_shape3 = imrotate(source_shape2, pi/8)
..........................
16:source_shape16 = imrotate(source_shape2, pi/8);
add all the source_shape together
but Matlab generate:
Error using +
Matrix dimensions must agree.
The second approach:Nx = Ny = 360
define the first elements
source_shape1 = makeCircle(Nx, Ny, 0, 0, 100, pi/8);
define the second element
source_shape2 = makeCircle(Nx, Ny, 0, 0, 100, pi/4);
cut the unwanted element of the source_shape2
source_shape2(180-50sin(pi/8:360, :);
source_shape3 use the same method as source_shape2;
add all the source_shapes together
source.p_mask = zeros(Nx, Ny);
source.p_mask(:, :) = source_shape1 + source_shape2 + ...........source.shape16 ;
but output of the matlab only come out the largest element, why?