大家好,欢迎来到IT知识分享网。
这篇博客很早之前我就想写了,现在放寒假了想着给大家写一下这个问题,很多做通信相关专业的同学也要开始做毕设了。可能很多同学本科期间没有接触到这么难的课题。想着书上找找代码,就从学校图书馆找到了《MIMO-OFDM无线通信技术及MATLAB实现》这本书。满心欢喜想运行里面的代码,但是大部分代码都没办法用,完了自己也不想问老师,自己又懒得搞,最后用了一些不可言说的方法,稀里糊涂搞完了毕设。可能到毕业都不知道自己做了什么,有一部分同学到了研究生可能都看不懂自己做了些什么,这是一件很可怕的事情。所以还是希望大家端正态度,如果毕设遇到一些编程方面的问题,欢迎大家咨询吧,我有时间就会回复,希望大家多多关注。
回归正题,《MIMO-OFDM无线通信技术及MATLAB实现》书中代码无法运行的原因百分之80都是一个问题“未定义函数或变量 ‘randint’”。randint函数在MATLAB2017就已经彻底删除了。
高版本的MATLAB此时会提示您,RANDINT已停用,请修改为RANDI。修改之后就会遇到下一个问题:维度会对不上,后面的一系列操作的无法实现。关于这个的区别主要是顺序问题。假如生成1000个随机二进制序列,randi的语法如下所示。
randi([0 1],1,1000);
而在randint函数中是这么使用的:
randint(1,1000,1);
二者的区别在于顺序不同,randi的第一个变量为范,后面是维度。而randint最后一一位才是范围。randi在很多方面都要优于randint函数。例如:在randi
中,生成的整数范围是左闭右闭的,这意味着指定的最小值和最大值都是可能的结果。而在randint
中,生成的整数范围是左闭右开的,即指定的最小值是可能的结果,但指定的最大值是不可能的结果。因此randint遭到了一定程度上的弃用。这个问题大家在日常书写MATLAB语法中一定要多加注意这个问题,还有一些函数的变动与更新我会在后续博客中进行介绍,希望大家多多关注。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/140974.html