【问题标题】:Use Matlab PDE toolbox from command line从命令行使用 Matlab PDE 工具箱
【发布时间】:2013-11-28 18:06:02
【问题描述】:

我想用 Matlab PDE 工具箱求解一个 PDE,只使用系统的命令窗口。我可以创建问题并运行求解器,但 PDE 工具箱窗口偶尔会弹出并询问问题(例如,“您要保存未保存的文档吗?”)。

如何避免这些弹出窗口,或者如何在不打开窗口的情况下使用 PDE 工具箱?

我正在使用以下代码。当我在第一行调用pdeinit 函数时弹出窗口。

[pde_fig,ax]=pdeinit;
set(ax,'XLim',[-0.1 0.2]);
set(ax,'YLim',[-0.1 0.2]);
set(ax,'XTickMode','auto');
set(ax,'YTickMode','auto');

% Geometry description:
pderect([0 0.05 0.05 0],'R1');
pderect([0 0.1 0 0.1],'R2');
set(findobj(get(pde_fig,'Children'),'Tag','PDEEval'),'String','R2-R1');
...

【问题讨论】:

  • 如果您提供一些代码来说明您的意思会很有帮助。你调用了哪些具体的函数,弹出了哪个窗口?
  • 我把它添加到原来的问题中

标签: matlab pde


【解决方案1】:

pdeinit 的帮助很简短:“从脚本启动 PDETOOL。” pdetool 与来自 The MathWorks 的大多数 *tool M-files 一样,是一个 GUI,它的帮助/文档说明了这一点。

我很困惑,因为pdeinit 不仅打开了一个图形窗口,而且您正在使用它来返回图形和该图形的轴的句柄。然后您的代码继续操作这些句柄。如果不先创建和打开图形,您将无法获得这些句柄。问题是你只想要一个普通的数字窗口吗?如果是这样,那么您可以将[pde_fig,ax]=pdeinit; 替换为:

pde_fig = figure;
ax = gca;

您可以查看pdeinit 的代码:在命令窗口中输入edit pdeinit。您会看到它所做的只是打开pdetool(除非它已经打开)并将句柄返回到结果图形和轴。

此外,pderect 将自行打开pdetool。您正在使用一堆与PDE app 相关联的函数。 MathWorks 网站上的许多教程和示例都使用这个。您可以查看这篇关于如何solve PDEs programmatically 的文章。 examples 也可能会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-20
    • 1970-01-01
    • 1970-01-01
    • 2013-01-13
    • 2010-12-13
    • 1970-01-01
    • 2016-05-10
    • 1970-01-01
    相关资源
    最近更新 更多