相关疑难解决方法(0)

可以从调试器停止并继续执行吗?

有没有办法从ctrl + c这样的调试器中停止执行matlab程序,但是能够继续执行(比如你可以说c#)?

如果没有,除了尝试在matlab代码中预先设置断点或dbstop语句之外,还有更好的解决方法吗?

我希望能够中断长时间运行的模拟以查看当前状态,然后继续模拟.

我目前使用/考虑的两个选项是

  1. 代码中的dbstop命令(或(条件)断点).缺点是有时候我不想停止模拟几个小时,有时候想要在几秒钟之后停止(我不一定知道提前知道)并且这对这种方法不起作用:如果我将中断条件设置为每5分钟中断一次,我就不能让matlab在没有交互的情况下运行数小时.如果我将条件设置得更高,我必须等待太久才能达到条件.

  2. 包括每隔几秒/几分钟保存工作空间的代码,并将工作空间导入第二个matlab实例.缺点是这是一个巨大的麻烦,也不一定允许我使用已保存工作空间的状态恢复模拟,然后逐步执行代码几次迭代.

我希望有比2中任何一个更好的解决方案.感谢任何建议!

编辑:我认为我要做的是编写简单的matlab函数,每次迭代检查环境变量或磁盘上的文件,如果我在此文件或env中设置了一个标志,则调用dbstop.通过这种方式,我可以通过编辑文件来控制断点从matlab外部命中的时间(如果需要的话).凌乱,但应该工作.

debugging matlab

16
推荐指数
2
解决办法
1万
查看次数

如何在Matlab中停止运行脚本

我在Matlab中编写了一个长期运行的脚本,例如

tic;
d = rand(5000);
[a,b,c] = svd(d);
toc;
Run Code Online (Sandbox Code Playgroud)

它似乎永远在运行.我想在编辑器窗口按F5.所以我不能按C-Break来停止在Matlab控制台中.

我只是想知道如何停止脚本.我目前正在使用任务管理器杀死Matlab,这真的很傻.

谢谢.

windows matlab

16
推荐指数
2
解决办法
13万
查看次数

5 个独立分布的拉丁超立方抽样

我有 5 个变量A、V、h、lb,它们都来自不同的分布。我想通过拉丁超立方体采样的方法从每个分布中制作 1,000 个均匀分布的样本。这是一个现实的要求,即它真的比简单的随机抽样更好吗?你有任何关于我如何在 matlab 中做到这一点的参考吗?此页面表明我需要以某种方式转换样本...

matlab

2
推荐指数
1
解决办法
9324
查看次数

标签 统计

matlab ×3

debugging ×1

windows ×1