美文网首页
Octave实现自定义函数计算FSPL

Octave实现自定义函数计算FSPL

作者: 刘小白DOER | 来源:发表于2023-03-14 14:59 被阅读0次

        在射频计算自由空间损耗Free-Space-Path-Loss时,笔者以往世界在计算器中进行计算,发现每次算起来太麻烦,于是想到使用matlab(Octave)来实现自定义函数来计算。

    函数结构如下,输出形参表,即函数的返回值,各返回值间用逗号隔开。输入形参列表,即函数的各输入参数,用逗号隔开。

      function[输出形参表: output1, ...,outptn]= 函数名(输入形参表: input1, ... , inputn)

    自由吮损耗公式:Lbf=32.44+20lgF+20lgD

    Lbf=自由空间损耗(dB)

    D=距离(KM)

    F=频率(MHz)

    在计算时,需要参数 F频率、 D距离,然后得出损耗值(dB)。在Octave默认目录下创建函数文件fspl,如果不知道默认路径们可以在GNU Octave (CLI)中使用pwd查看路径,不过一般是在用户主目录下。编辑函数文件时,%就是使用help时显示的帮助信息,function后面就是函数主体部分。

% LOSS Call Method:fspl(r,fc) r= * km ,fc= * MHz

function fspl(r, fc) 

LightSpeed = 3e8; 

Loss_db = 20*log10(((4*pi)*(r*1000))/(LightSpeed/(fc*1000000))); 

disp(['Free-Space-Path-Loss-dB=',num2str(Loss_db)]);

end

    运行结果如下,只需fslp(100,150)即可算处100KM处,150MHz的自由空间衰减值。

相关文章

网友评论

      本文标题:Octave实现自定义函数计算FSPL

      本文链接:https://www.haomeiwen.com/subject/vpqkrdtx.html