日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > 循环神经网络 >内容正文

循环神经网络

matlab浮点数求绝对值_MATLAB仿真阵列天线切比雪夫综合法(附代码)

發(fā)布時間:2023/12/4 循环神经网络 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 matlab浮点数求绝对值_MATLAB仿真阵列天线切比雪夫综合法(附代码) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

來源:cnblogs

在《自適應天線與相控陣》這門課中,了解到了關于理想低副瓣陣列設計的一些方法,其中切比雪夫等副瓣陣列設計方法是一種基礎的方法,故將其設計流程寫成maltab程序供以后學習使用。在此分享一下。?此方法全稱為道爾夫-切比雪夫綜合法,簡稱為切比雪夫綜合法,是一種工程實際中常用的可控制副瓣電平的陣列天線綜合方法。切比雪夫陣列的特點是:

(1)等副瓣電平;

(2)在相同副瓣電平和相同陣列長度下主瓣最窄,為最佳陣列;

(3)單元數過多時,陣列兩端單元激勵幅度跳變大,使饋電困難。一般在雷達系統(tǒng)中,為了使其具有較高的抗干擾、抗反輻射導彈的能力,往往要求雷達天線的副瓣盡量低,而采用道爾夫-切比雪夫綜合法以及進一步的泰勒綜合法等設計的陣列天線就可以實現(xiàn)低副瓣。最早,道爾夫(C.L.Dolph)利用切比雪夫函數來逼近天線陣列的陣因子函數,得到了這種嚴謹規(guī)范的綜合方法。而且,經過前人研究,當天線單元N≤13時,切比雪夫陣列從中間到兩端的激勵分布是單調減小的;而當N>13時,陣列兩端單元的激勵開始出現(xiàn)跳變。所以對于大型陣列來說一般不宜采用切比雪夫方法綜合陣列。所以下面的Matlab程序正常工作在天線單元數N為3到13這個范圍內。關于如何采用切比雪夫多項式去設計陣因子的具體技術步驟,另一篇文章較為詳細地介紹了,此處不再贅述,大家可以在文尾或評論區(qū)查看。下面是可以綜合設計天線單元從3到13單元的切比雪夫綜合法的Matlab程序:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

%% --------------------------------------------------------------------------

% 切比雪夫低副瓣陣列綜合

% 設計一個間距為d,單元數為N,主副瓣電平比為RdB,掃描角度為theta0的切比雪夫陣列。

% 2019.11.10

%--------------------------------------------------------------------------

%% 初始數據賦值

clear

clc

N = 13;??????????????????????????????????%單元數N(3

if?rem(N,2)==0??????????????????????????%求和項數M(奇偶不同)

????M = N/2;

else

????M = (N-1)/2+1;

end

RdB = 26;???????????????????????????????% 主副瓣比(dB值)

lamuda = 10;????????????????????????????% 波長

d = 0.6*lamuda;?????????????????????????% 單元間距

theta0 = 80/180*pi;?????????????????????% 掃描角度,相對于陣列排布方向的夾角

A = [1,0,0,0,0,0,0,0,0,0,0,0,0,0;???????% chebyshev多項式Tn(x) = cos(nu)= f(x)系數矩陣A

????0,1,0,0,0,0,0,0,0,0,0,0,0,0;????????% 系數矩陣A每一行表示n,從n = 0開始

????-1,0,2,0,0,0,0,0,0,0,0,0,0,0;???????% 列表示x的冪次方,從0次方開始

????0,-3,0,4,0,0,0,0,0,0,0,0,0,0;

????1,0,-8,0,8,0,0,0,0,0,0,0,0,0;

????0,5,0,-20,0,16,0,0,0,0,0,0,0,0;

????-1,0,18,0,-48,0,32,0,0,0,0,0,0,0;

????0,-7,0,56,0,-112,0,64,0,0,0,0,0,0;

????1,0,-32,0,160,0,-256,0,128,0,0,0,0,0;

????0,9,0,-120,0,432,0,-576,0,256,0,0,0,0;

????-1,0,50,0,-400,0,1120,0,-1280,0,512,0,0,0;

????0,-11,0,220,0,-1232,0,2816,0,-2816,0,1024,0,0;

????1,0,-72,0,840,0,-3584,0,6912,0,-6144,0,2048,0;

????0,13,0,-364,0,2912,0,-9984,0,16640,0,-13312,0,4096];

% 初始矩陣賦值

I =?zeros(1,M);?????????????????????????% 電流幅度矩陣

S =?zeros(M,M);?????????????????????????% 陣因子系數矩陣

S_compare =?zeros(1,M);?????????????????% 系數比對矩陣

R = 10^(RdB/20);????????????????????????% 非dB 值的主副瓣比

x0 = 1/2*( (R+sqrt(R^2-1))^(1/(N-1))+...% 變量代換值x0

????????????(R-sqrt(R^2-1))^(1/(N-1))? );

%% 求S、S_compare和I

% 從系數矩陣中擇選出M個求和項對應的系數S(奇偶分開討論)

for?i?= 1:M

????if?rem(N,2)==0??????????????????????% 偶數情況

????????for?j?= 1:M?????????????????????% 第i行表示x的i次方,

????????????S(i,j) = A(2*j,2*i);????????% 第j列表示第j個求和項系數(未除x0)

????????end

????????S_compare(i) = A(N,2*i);????????% 比對矩陣,即下標為N-1的chebyshev多項式的系數

????else????????????????????????????????% 奇數情況

????????for?j?= 1:M????????????????????

????????????S(i,j) = A(2*j-1,2*i-1);???

????????end

????????S_compare(i) = A(N,2*i-1);????

????end

end

% 通過S和S_compare系數比對求出電流幅度

for?k = 1:M

????i?= M-k+1;

????if?rem(N,2)==0??????????????????????% 偶數

????????I(i) = (S_compare(i)*x0^(2*i-1) -...

????????????I*S(i,:)')/S(i,i);

????else????????????????????????????????% 奇數

????????I(i) = (S_compare(i)*x0^(2*(i-1)) -...

????????????I*S(i,:)')/S(i,i);

????end

end

I = I/max(I);?????????????????????????% 對I歸一化

if?rem(N,2)==0

????I_final = [fliplr(I),I];??????????% 最終的單元排列(左右對稱)

else

????I_final = [fliplr(I),I(2:end)];

end

sprintf('天線單元歸一化電流幅度:')

sprintf('%.3f? ',I_final)

%% 獲得最終陣列方向圖S_P

theta_rad = 0:0.01:pi;

theta = theta_rad*180/pi;

u =?pi*d/lamuda*(?cos(theta_rad)-?cos(theta0));

S_P =?zeros(1,length(theta_rad));???????% 最終方向圖

for?k = 1:M

????if?rem(N,2)==0

????????S_P = S_P + I(k)*cos((2*k-1)*u);% 偶數

????else

????????S_P = S_P + I(k)*cos(2*(k-1)*u);% 奇數

????end

end

S_P_abs =?abs(S_P);?????????????????????% 對S_P取絕對值

S_PdB = 20*log10(S_P_abs/max(S_P_abs));?% 對S_P取dB值

%% 繪圖

H = -ones(1,length(S_P_abs))*26;?????  % 根據預先設置的主副瓣比得到的參考曲線

% 直角坐標系

figure('NumberTitle',?'off',?'Name',?'S Parameter (abs)-Plot');

plot(theta,S_P_abs,'b','LineWidth',1.5)

xlabel('theta(°)')

ylabel('|S| ')

title('chebyshev低副瓣陣列直角坐標圖')

figure('NumberTitle',?'off',?'Name',?'S Parameter (dB)-Plot');

plot(theta,H,'r--','LineWidth',1.5)

hold?on

plot(theta,S_PdB,'b','LineWidth',1.5)

xlabel('theta(°)')

ylabel('|S| dB')

title('chebyshev低副瓣陣列直角坐標圖')

legend('預設副瓣參考曲線','方向圖')

% 極坐標系

figure('NumberTitle',?'off',?'Name',?'S Parameter (dB)-Polar');

polarplot(theta_rad,H,'r--','LineWidth',1.5)

hold?on

polarplot(theta_rad,S_PdB,'b','LineWidth',1.5)

thetalim([0 180]);

rmin = S_PdB(1,1);

rmax =?max(S_PdB);

rlim([-50 rmax]);

title('chebyshev低副瓣陣列極坐標圖')

legend('預設副瓣參考曲線RdB','方向圖(dB)')

下面即為一個示例:單元間距d=0.6λ、單元數13、主副瓣電平比26dB、掃描角度80度(相對于單元排布方向)的切比雪夫陣列設計。歸一化單元電流幅度比為:0.406 ?0.432 ?0.604 ?0.770? 0.908 ?1.000? 0.516 ?1.000? 0.908 ?0.770? 0.604 ?0.432 ?0.406

----END上文提到的另一篇文章。

陣列天線綜合之切比雪夫低副瓣陣列設計 MATLAB(作者:OLIVERMAHOUT)

相控陣天線中,直線陣列作為重要的一種,有著極為廣泛的應用。切比雪夫低副瓣陣列設計是一種典型的設計方法。

切比雪夫方法主要是實現(xiàn)低副瓣、窄波束:

其產生的核心如下:

我的理解:因為能量守恒,所有副瓣都一樣的時候,能量會更多的集中在副瓣中,

主瓣最大增益也不會改變,這樣就可以使主瓣窄,副瓣電平降低。G=4πS/λ2

結合切比雪夫函數,可以得到:

?

?

?

當具體應用時,解決方案如下:

?

話不多說,其Matlab中的程序如下:

1

% 2019-11% 切比雪夫低副瓣陣列饋電設計_1.0 (端射陣)

close all;clear% digits(3);

% 參數設置lamda = 1; % 波長d = lamda * 0.6; % d為陣元間距theta0 = (120/180)*pi; % 掃描角度theta = 0: 0.01 : pi; % Θ為方向角u = pi*d*(cos(theta)-cos(theta0))/lamda;?%T = Chebyshev; % T為切比雪夫恒等式系數矩陣N = 10; % N為直線陣的陣元數量,M為一側的單元數(對稱)R0dB = 26; % R0dB為副瓣電平

if (mod(N,2)==0)M = N / 2;parity = 0; % parity為奇偶性,0為偶數elseM = (N+1)/2;parity = 1;end

% 導入切比雪夫多項式syms x;?T = [1;x;2*x^2-1;4*x^3-3*x;8*x^4-8*x^2+1;16*x^5-20*x^3+5*x;32*x^6-48*x^4+18*x^2-1;64*x^7-112*x^5+56*x^3-7*x;128*x^8-256*x^6+160*x^4-32*x^2+1;256*x^9-576*x^7+432*x^5-120*x^3+9*x;512*x^10-1280*x^8+1120*x^6-400*x^4+50*x^2-1];

% 換算副瓣電平R0R0 = 10 ^ (R0dB / 20);

% 計算x0x0 = ((R0 + sqrt(R0^2 -1))^(1/(N-1)) + (R0 - sqrt(R0^2 -1))^(1/(N-1))) * 1/2;

% 定義饋電幅度矩陣II = sym('I', [1 M]);

% 計算展開的方向圖表達式S = T(2) * I(1);

for k = 2 : MS = S + T(2*k) * I(k);end

%collect(S,x)%vpa(S)

S_po = coeffs(S,x); % 含電流的方向圖多項式系數T_po = sym2poly(T(N)); % 標準的方向圖多項式系數(反向了)T_PO = zeros(1,M);?for k = 1 : MT_PO(k) = T_po(2*k-1);S_po(k) = S_po(k)/x0^(2*k-1);end% T_PO% vpa(S_po)

% 系數比較求出電流大小eq = sym('eq',[M 1]); % 系數比較恒等式for k = 1 : Meq(k) = S_po(k) == T_PO(M+1-k);end

vpa(eq)I_st = solve(eq);I_ce = struct2cell(I_st);i = zeros(M,1); % 最終的電流矩陣for k = 1 : Mi(k) = I_ce{k,1};i(k) = i(k);endfor k = 2 : Mi(k) = i(k)/i(1); % 電流歸一化endi(1) = 1; ii=[1;0.89;0.706;0.485;0.357]; % 用來檢驗的數據

% 計算最終的陣因子S_all = zeros(1,length(theta));for k = 1 : MS_all = S_all + i(k)*cos((2*k-1)*u);endSS = S_all;

% 畫圖 —— 直角坐標系S_max = max(S_all); % 歸一化處理S_all = 20*log10(abs(S_all/S_max)); % 取分貝值figure('NumberTitle', 'off', 'Name', 'S Parameter (dB) - Cartesian');theta_ = theta * 180 / pi;plot(theta_,S_all,'k','LineWidth',1.5);grid offxlabel('\theta (°)','FontSize',13);ylabel('|S| dB','FontSize',12);axis([0 182 -50 2]);box on

% 畫圖 —— 極坐標系figure('NumberTitle', 'off', 'Name', 'S Parameter (dB) - Polar');S_pol = SS / max(SS);polarplot(theta,S_all,'k','LineWidth',1.5);thetalim([0 180]);rmin = min(S_all);rmax = max(S_all);rlim([-50 rmax]);

上述測試的N=10的10個陣列,側射陣(θ=0),副瓣電平SLL=26dB,結果如下:

?

?經過比較,結果較為標準。

更改一下theta0的值,改為120讀,即偏離法相30度:

?

來源:cnblogs

總結

以上是生活随笔為你收集整理的matlab浮点数求绝对值_MATLAB仿真阵列天线切比雪夫综合法(附代码)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。