function [errorcode, rows, columns] = rndcheck(nargs,nparms,arg1,arg2,arg3,arg4,arg5)
%RNDCHECK error checks the argument list for the random number generators.
% B.A. Jones 1-22-93
% Copyright (c) 1993-98 by The MathWorks, Inc.
% $Revision: 2.5 $ $Date: 1997/11/29 01:46:40 $
sizeinfo = nargs - nparms;
errorcode = 0;
if nparms == 3
[r1 c1] = size(arg1);
[r2 c2] = size(arg2);
[r3 c3] = size(arg3);
end
if nparms == 2
[r1 c1] = size(arg1);
[r2 c2] = size(arg2);
end
if sizeinfo == 0
if nparms == 1
[rows columns] = size(arg1);
end
if nparms == 2
scalararg1 = (prod(size(arg1)) == 1);
scalararg2 = (prod(size(arg2)) == 1);
if ~scalararg1 & ~scalararg2
if r1 ~= r2 | c1 ~= c2
errorcode = 1;
return;
end
end
if ~scalararg1
[rows columns] = size(arg1);
elseif ~scalararg2
[rows columns] = size(arg2);
else
[rows columns] = size(arg1);
end
end
if nparms == 3
scalararg1 = (prod(size(arg1)) == 1);
scalararg2 = (prod(size(arg2)) == 1);
scalararg3 = (prod(size(arg3)) == 1);
if ~scalararg1 & ~scalararg2
if r1 ~= r2 | c1 ~= c2
errorcode = 1;
return;
end
end
if ~scalararg1 & ~scalararg3
if r1 ~= r3 | c1 ~= c3
errorcode = 1;
return;
end
end
if ~scalararg3 & ~scalararg2
if r3 ~= r2 | c3 ~= c2
errorcode = 1;
return;
end
end
if ~scalararg1
[rows columns] = size(arg1);
elseif ~scalararg2
[rows columns] = size(arg2);
else
[rows columns] = size(arg3);
end
end
end
if sizeinfo == 1
scalararg1 = (prod(size(arg1)) == 1);
if nparms == 1
if prod(size(arg2)) ~= 2
errorcode = 2;
return;
end
if ~scalararg1 & arg2 ~= size(arg1)
errorcode = 3;
return;
end
if (arg2(1) < 0 | arg2(2) < 0 | arg2(1) ~= round(arg2(1)) | arg2(2) ~= round(arg2(2))),
errorcode = 4;
return;
end
rows = arg2(1);
columns = arg2(2);
end
if nparms == 2
if prod(size(arg3)) ~= 2
errorcode = 2;
return;
end
scalararg2 = (prod(size(arg2)) == 1);
if ~scalararg1 & ~scalararg2
if r1 ~= r2 | c1 ~= c2
errorcode = 1;
return;
end
end
if (arg3(1) < 0 | arg3(2) < 0 | arg3(1) ~= round(arg3(1)) | arg3(2) ~= round(arg3(2))),
errorcode = 4;
return;
end
if ~scalararg1
if any(arg3 ~= size(arg1))
errorcode = 3;
return;
end
[rows columns] = size(arg1);
elseif ~scalararg2
if any(arg3 ~= size(arg2))
errorcode = 3;
return;
end
[rows columns] = size(arg2);
else
rows = arg3(1);
columns = arg3(2);
end
end
if nparms == 3
if prod(size(arg4)) ~= 2
errorcode = 2;
return;
end
scalararg1 = (prod(size(arg1)) == 1);
scalararg2 = (prod(size(arg2)) == 1);
scalararg3 = (prod(size(arg3)) == 1);
if (arg4(1) < 0 | arg4(2) < 0 | arg4(1) ~= round(arg4(1)) | arg4(2) ~= round(arg4(2))),
errorcode = 4;
return;
end
if ~scalararg1 & ~scalararg2
if r1 ~= r2 | c1 ~= c2
errorcode = 1;
return;
end
end
if ~scalararg1 & ~scalararg3
if r1 ~= r3 | c1 ~= c3
errorcode = 1;
return;
end
end
if ~scalararg3 & ~scalararg2
if r3 ~= r2 | c3 ~= c2
errorcode = 1;
return;
end
end
if ~scalararg1
if any(arg4 ~= size(arg1))
errorcode = 3;
return;
end
[rows columns] = size(arg1);
elseif ~scalararg2
if any(arg4 ~= size(arg2))
errorcode = 3;
return;
end
[rows columns] = size(arg2);
elseif ~scalararg3
if any(arg4 ~= size(arg3))
errorcode = 3;
return;
end
[rows columns] = size(arg3);
else
rows = arg4(1);
columns = arg4(2);
end
end
end
if sizeinfo == 2
if nparms == 1
scalararg1 = (prod(size(arg1)) == 1);
if ~scalararg1
[rows columns] = size(arg1);
if rows ~= arg2 | columns ~= arg3
errorcode = 3;
return;
end
end
if (arg2 < 0 | arg3 < 0 | arg2 ~= round(arg2) | arg3 ~= round(arg3)),
errorcode = 4;
return;
end
rows = arg2;
columns = arg3;
end
if nparms == 2
scalararg1 = (prod(size(arg1)) == 1);
scalararg2 = (prod(size(arg2)) == 1);
if ~scalararg1 & ~scalararg2
if r1 ~= r2 | c1 ~= c2
errorcode = 1;
return;
end
end
if ~scalararg1
[rows columns] = size(arg1);
if rows ~= arg3 | columns ~= arg4
errorcode = 3;
return;
end
elseif ~scalararg2
[rows columns] = size(arg2);
if rows ~= arg3 | columns ~= arg4
errorcode = 3;
return;
end
else
if (arg3 < 0 | arg4 < 0 | arg3 ~= round(arg3) | arg4 ~= round(arg4)),
errorcode = 4;
return;
end
rows = arg3;
columns = arg4;
end
end
if nparms == 3
scalararg1 = (prod(size(arg1)) == 1);
scalararg2 = (prod(size(arg2)) == 1);
scalararg3 = (prod(size(arg3)) == 1);
if ~scalararg1 & ~scalararg2
if r1 ~= r2 | c1 ~= c2
errorcode = 1;
return;
end
end
if ~scalararg1 & ~scalararg3
if r1 ~= r3 | c1 ~= c3
errorcode = 1;
return;
end
end
if ~scalararg3 & ~scalararg2
if r3 ~= r2 | c3 ~= c2
errorcode = 1;
return;
end
end
if ~scalararg1
[rows columns] = size(arg1);
if rows ~= arg4 | columns ~= arg5
errorcode = 3;
return;
end
elseif ~scalararg2
[rows columns] = size(arg2);
if rows ~= arg4 | columns ~= arg5
errorcode = 3;
return;
end
elseif ~scalararg3
[rows columns] = size(arg3);
if rows ~= arg4 | columns ~= arg5
errorcode = 3;
return;
end
else
if (arg4 < 0 | arg5 < 0 | arg4 ~= round(arg4) | arg5 ~= round(arg5)),
errorcode = 4;
return;
end
rows = arg4;
columns = arg5;
end
end
end
没有合适的资源?快使用搜索试试~ 我知道了~
【误码率仿真】基于matlab LDPC编译码误码率仿真【含Matlab源码 2079期】.zip
共12个文件
m:11个
jpg:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 94 浏览量
2023-10-17
00:18:34
上传
评论
收藏 32KB ZIP 举报
温馨提示
CSDN海神之光上传的代码均可运行,亲测可用,直接替换数据即可,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作 功率谱估计: 故障诊断分析: 雷达通信:雷达LFM、MIMO、成像、定位、干扰、检测、信号分析、脉冲压缩 滤波估计:SOC估计 目标定位:WSN定位、滤波跟踪、目标定位 生物电信号:肌电信号EMG、脑电信号EEG、心电信号ECG 通信系统:DOA估计、编码译码、变分模态分解、管道泄漏、滤波器、数字信号处理+传输+分析+去噪、数字信号调制、误码率、信号估计、DTMF、信号检测识别融合
资源推荐
资源详情
资源评论
收起资源包目录
【误码率仿真】基于matlab LDPC编译码误码率仿真【含Matlab源码 2079期】.zip (12个子文件)
【误码率仿真】基于matlab LDPC编译码误码率仿真【含Matlab源码 2079期】
ldpc_decode.m 3KB
reorder_bits.m 422B
mul_GF2.m 51B
extract_mesg.m 416B
unidrnd.m 985B
运行结果.jpg 47KB
rndcheck.m 8KB
H2P.m 1KB
genH.m 5KB
ldpc_demo.m 1KB
ldpc_encode.m 683B
bpsk.m 325B
共 12 条
- 1
资源评论
- small_xi2023-12-03非常有用的资源,有一定的参考价值,受益匪浅,值得下载。
海神之光
- 粉丝: 5w+
- 资源: 6110
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 使用Java语言编写的九格拼游戏,找寻下曾经小时候的记忆.zip
- gakataka课堂管理系统
- 一个简单ssh(spring springMVC hibernate)游戏网站,在网上找的html模板,没有自己写UI,重点放在java后端上.zip
- 一个采用MVC架构设计、Java实现的泡泡堂游戏.zip
- 一个简易的对对碰游戏软件,运用Java、Java FX技术.zip
- 通过binder实现进程间通讯 ,可以使用service的binder或者 AIDL生成的Stub返回binder 实现demo
- 44f2abdbd6faa9938f9d8e4cace85309.JPG
- 一个简易的躲避子弹飞机小游戏,基于最简单的java ui.zip
- 一个西洋跳棋小游戏,写成桌面Java程序,实现了人机对战,对博弈树的遍历进行了极大极小值的alpha-beta剪枝算法进行优化.zip
- 一些java的小游戏项目,贪吃蛇啥的.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功