rowen

matlab一些常用函数总结

0
阅读(1890)

 

        在雷达信号处理中,有些函数经常被用到,现做个总结,留个标记。

 fix朝零方向取整,如fix(-1.3)=-1; fix(1.3)=1;

如:N = fix(fs*Timewidth/2)*2;   %有效信号采样点数


    floor,顾名思义,就是地板,所以是取比它小的整数,即朝负无穷方向取整,如floor(-1.3)=-2; floor(1.3)=1;floor(-1.8)=-2,floor(1.8)=1


    ceil,与floor相反,它的意思是天花板,也就是取比它大的最小整数,即朝正无穷方向取整,如ceil(-1.3)=-1; ceil(1.3)=2;ceil(-1.8)=-1,ceil(1.8)=2


    round四舍五入到最近的整数,如round(-1.3)=-1;round(-1.52)=-2;round(1.3)=1;round(1.52)=2。

 

chirp = exp(j*pi*(B/Timewidth)*t.^2);  %线性调频信号

 

conj 是求复数的共轭,

若x=a+bi(a,b∈R),则 x'=a-bi(a,b∈R)

 

reshape:

b=reshape(a,m,n);

其中的规律是这样的,先把矩阵a按列拆分,然后拼接成一个大小为m*n的向量。然后对这个向量每隔m间隔取一个元素组成一个向量b_i,之后的向量b_i+1也是这样生成,只不过第一个元素往下移一位。这样做完之后得到m个大小为n的行向量,将这些行向量拼接即可得到矩阵b。

 

fopen()是个将数据按指定格式读入到matlab中的函数。 fileID = fopen('filename')

fprintf()是个将数据按指定格式写入到文本文件中的函数,基本格式fprintf(fid, format, variables)

fid为文件句柄,从fopen()函数中得到,

 format用来指定数据输出时采用的格式,A是用来存放数据的矩阵。

 

fid=fopen('file.dat','w+');      %创建并打开file.dat文件
A=[1:10];                             %创建数组A, 1~10
count=fwrite(fid,A);              %将数组A写入文件
fseek(fid,3,'bof');                 %指针移入第四个元素
count=fwrite(fid,15);            %将第四个元素(4)的值改为15
fseek(fid,-2,'eof');                %指针移至倒数第二个元素
count=fwrite(fid,14);            %将倒数第二个元素(9)的值改为14
pos=ftell(fid);                       %获取当前指针位置
fseek(fid,-3,'cof');                 %将当前位置前移3个元素
frewind(fid);                          %位置指针移至文件首部
fclose(fid);                            %关闭文件