我是靠谱客的博主 怕孤独斑马,最近开发中收集的这篇文章主要介绍MATLAB App Designer 与 m文件 使用相同随机数种子但是产生了不同的随机数项目场景:问题描述原因分析:解决方案:,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

项目场景:

最优估计课程的大作业要求使用MATLAB App Designer写应用,其中含有生成数据的代码。我采用的方式是首先编写算法m文件,再将其转移成mlapp中的代码。


问题描述

为方便调试固定随机数序列,我使用了相同的种子,即:①

% s = rng(0);
% save 's' 's'
load s
rng(s);

产生随机数代码为:②

V_k = sqrt(R_k)*randn(len_z,1)';

其中R_k是量测噪声方差,len_z是量测序列长度。
在mlapp中,加载种子的代码①位于 startupFcn 函数中,产生随机数的代码②位于 Menu_6Selected 回调函数中。此时,mlapp和m文件中产生的V_k刚好差了一位(类似于循环移位的形式):
噪声序列


原因分析:

原因未知,不知道是bug还是feature。


解决方案:

  1. 把代码①、②都写到Menu_6Selected 回调函数中。
  2. 或者,直接在m文件 save V_k 之后,再在mlapp的 startupFcn 函数中 load V_k 噪声序列。

最后

以上就是怕孤独斑马为你收集整理的MATLAB App Designer 与 m文件 使用相同随机数种子但是产生了不同的随机数项目场景:问题描述原因分析:解决方案:的全部内容,希望文章能够帮你解决MATLAB App Designer 与 m文件 使用相同随机数种子但是产生了不同的随机数项目场景:问题描述原因分析:解决方案:所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(37)

评论列表共有 0 条评论

立即
投稿
返回
顶部