| 
                 
TA的每日心情|  | 慵懒 2020-9-2 15:07
 | 
|---|
 签到天数: 3 天 [LV.2]偶尔看看I | 
 
| 
在雷达信号处理中,有些函数经常被用到,现做个总结,留个标记。
x
EDA365欢迎您登录!您需要 登录 才可以下载或查看,没有帐号?注册  % x4 {# Z9 b+ Q. s( S3 f  f+ O; ?# s2 E3 s
 fix朝零方向取整,如fix(-1.3)=-1; fix(1.3)=1;% |( Z0 J6 b# B1 l! T* I& Y
 ) s5 s0 O! x2 Q
 如:N = fix(fs*Timewidth/2)*2;   %有效信号采样点数
 ( W: M' r% L2 t# x  c- N' y2 {% u- |( L! W! p: U2 d
 % O4 t4 j7 a0 B5 [* n4 M1 m* |" ?6 K
 floor,顾名思义,就是地板,所以是取比它小的整数,即朝负无穷方向取整,如floor(-1.3)=-2; floor(1.3)=1;floor(-1.8)=-2,floor(1.8)=1$ A+ f% i2 G# m7 f
 
 ( C# y5 a1 a$ Q
 & I* a6 ^0 V& W    ceil,与floor相反,它的意思是天花板,也就是取比它大的最小整数,即朝正无穷方向取整,如ceil(-1.3)=-1; ceil(1.3)=2;ceil(-1.8)=-1,ceil(1.8)=2# t4 a% u# P* i+ R# u, W. L8 y. j
 
 1 R7 z! S7 R3 Y1 i: |; o3 h4 c8 ^9 B5 i: F7 `9 J
 round四舍五入到最近的整数,如round(-1.3)=-1;round(-1.52)=-2;round(1.3)=1;round(1.52)=2。6 @5 R0 n3 Z) E7 y# j+ O. x+ ]
 
 : ]. H" F  C/ Q. p- v# p
 8 Z+ |( S6 K3 T& c1 `7 @/ I
 / ^( W  x$ H( V) l4 Y& Q" I/ j7 [chirp = exp(j*pi*(B/Timewidth)*t.^2);  %线性调频信号
 x7 T1 `' o& ~+ ]  J9 w! p
 & H# |, Y5 k6 \/ d' h( V 0 c3 J7 I' U0 Z) {& t
 
 - }2 P% D; z1 v& }1 ^2 B- Bconj 是求复数的共轭,  h9 {& O6 m4 f& Y2 w2 H! e
 
 ; p' L' H) ?! M) b! [9 @& |若x=a+bi(a,b∈R),则 x'=a-bi(a,b∈R)
 3 f% n9 A9 N5 g) K, V4 a: B3 }- T/ i* D" a/ Z! y; J
 
 : U2 K$ P$ J' a! p3 f' H5 C# z# Q2 d: f: ?. a5 X) U$ M. W
 reshape:5 T" T* L2 L1 v
 
 $ H( \3 k6 t: Z5 p. Y. qb=reshape(a,m,n);
 % D2 {6 Y: z: N& u) T. Q3 |
 ' q2 \# \5 `' D$ i6 E7 i其中的规律是这样的,先把矩阵a按列拆分,然后拼接成一个大小为m*n的向量。然后对这个向量每隔m间隔取一个元素组成一个向量b_i,之后的向量b_i+1也是这样生成,只不过第一个元素往下移一位。这样做完之后得到m个大小为n的行向量,将这些行向量拼接即可得到矩阵b。( v1 q1 Y  A  A; [  d
 0 d9 i) h0 Y% }  f+ S9 L6 h
 
 " y; s' b2 _$ b$ L$ i  p: y# S% i, Z# T4 b# n$ I0 f5 q4 [, A
 fopen()是个将数据按指定格式读入到matlab中的函数。 fileID = fopen('filename')% \- t, S8 Z5 u% w7 `) s8 M% w( u
 $ R% |  B" l6 c1 S. }6 C; {8 g
 fprintf()是个将数据按指定格式写入到文本文件中的函数,基本格式fprintf(fid, format, variables)
 + l( A: K# E" D7 _4 U
 4 a; S+ s1 F6 Z0 X' E9 g/ m$ ~fid为文件句柄,从fopen()函数中得到,
 " h0 {; @; ^6 x1 A4 c) X
 0 `! s7 q3 U  D1 o6 [ format用来指定数据输出时采用的格式,A是用来存放数据的矩阵。0 {' J/ o- e1 v" ~0 E
 5 b$ l$ T' f  d9 e3 F2 ^( K
 
 ' x' M7 l; I" H5 }
 5 K( p  H1 f. L& w: K! t3 d- }fid=fopen('file.dat','w+');      %创建并打开file.dat文件$ S3 V5 q& T9 k/ F4 T. n8 G- C  _+ a) @
 A=[1:10];                             %创建数组A, 1~10
 2 B6 o6 X4 T7 b, Hcount=fwrite(fid,A);              %将数组A写入文件6 A7 q. y- Q" y$ ^0 F3 a
 fseek(fid,3,'bof');                 %指针移入第四个元素! v, p" l" z$ m0 s7 e; M
 count=fwrite(fid,15);            %将第四个元素(4)的值改为152 a6 @4 S# R# T3 a
 fseek(fid,-2,'eof');                %指针移至倒数第二个元素
 ! h2 a. c+ D  a- N1 d7 Ycount=fwrite(fid,14);            %将倒数第二个元素(9)的值改为145 C: w$ h# V' q9 d: E' Y# @5 w/ h
 pos=ftell(fid);                       %获取当前指针位置
 6 E/ ]# k' B+ `fseek(fid,-3,'cof');                 %将当前位置前移3个元素
 ' U& H( y+ ]$ {* z0 Wfrewind(fid);                          %位置指针移至文件首部' m% T/ G- a; L
 fclose(fid);                            %关闭文件9 h/ K0 K4 d9 Y; @1 s* W7 Z
 
 9 B4 Y8 \4 N( s: P  I5 p : ^, [; {  P$ [+ k
 
 ( [+ i6 r( q1 c* M% G' j
 | 
 |