Как построить полярный график?

вопрос Учитывая N=1, антенна имеет диаграмму направленности, заданную как y(theta)=sin(N4pitheta)/(N4pitheta) Предположим, что формула действительна в диапазоне . Сгенерируйте полярный график диаграммы направленности. Используйте 400 точек для вашего графика.

вот мой код, я продолжаю получать «THETA и RHO должны быть одного размера». что это значит и как я могу исправить мою треску? Благодарность

   function [graph,x,y]=question3(N)
      x=linspace(-pi,pi,400);
      y=(sin(N*4*pi*x)/(N*4*pi*x));
      graph='polar(x,y)';
    end

person user3531022    schedule 06.10.2015    source источник
comment
Этот код не дает эту ошибку.   -  person Ander Biguri    schedule 06.10.2015


Ответы (1)


Ваша проблема в том, что вы выполняете матричное деление, а не поэлементное деление.

изменить y=(sin(N*4*pi*x)/(N*4*pi*x)) на y=(sin(N*4*pi*x)./(N*4*pi*x))

Обратите внимание, что в Matlab * и / будут выполнять операции с матрицами, а .* и ./ будут выполнять операции с массивами.

Подробнее читайте здесь.


Примечание: похоже, вы используете eval для оценки вывода этой функции. Если это сделал ваш профессор, оставьте это, но помните, что даже Сами сотрудники Matlab советуют никогда не использовать eval.

person Ander Biguri    schedule 06.10.2015