How to calculate array factor in matlab
이전 댓글 표시

I m trying to write matlab code for this expression.
Can anyone help me with this?
Thanks!!!!
댓글 수: 11
Rik
2021년 12월 23일
What have you tried so far? This doesn't look like it should be too complicated to write.
Note that the subscripts are very hard to read in your image.
FARHA KHAN
2021년 12월 23일
편집: Rik
2021년 12월 23일
FARHA KHAN
2021년 12월 23일
Rik
2021년 12월 23일
I can't properly read you function, so I can't absolutely confirm you did it correctly.
The main advice I have for you is to split your calculation into several parts you can more easily read. One main thing would be to move the calls to deg2rad outside the loop.
If you post a clearer version of your mathematical notation I can try to help you check if this is correct.
FARHA KHAN
2021년 12월 23일
Rik
2021년 12월 23일
Yes, this I can read.
I would convert this to Matlab as follows:
lambda=__;
M=2;
N=[4 16];
K=(2*pi)/lambda;
r=[0.5 2.5]*lambda;
theta=0;
phi=[90:90:360 zeros(1,12); ...
22.5:22.5:360];
phi_=0;
alpha=__;
s=0;
for m=1:M
for n=1:N(m)
tmp=K * r(m) * sin(theta) * cos(phi_-phi(m,n)) + alpha(m,n);
s=s + W(m) * exp(1j*tmp);
end
end
FARHA KHAN
2021년 12월 23일
FARHA KHAN
2021년 12월 23일
편집: Walter Roberson
2021년 12월 24일
FARHA KHAN
2021년 12월 23일
Rik
2021년 12월 23일
You could also calculate alpha in your loop:
s=0;
for m=1:M
for n=1:N(m)
alpha=-K*r(m)*cos(phi0-phi(m,n));
tmp=K * r(m) * sin(theta) * cos(phi0-phi(m,n)) + alpha;
s=s + W(m) * exp(1j*tmp);
end
end
FARHA KHAN
2021년 12월 24일
답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 MATLAB Support Package for Raspberry Pi Hardware에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
