通过system-dos-unix函数调用openfoam工具的问题- Matlab2018b - Ubuntu 18.04

2次查看(最近30天)
卡米洛·马丁内兹官员
我已经在一台64位的机器上安装了Matlab2018b和Ubuntu 18.04 LTS。
我工作在一个二维翼型优化Openfoam和我想调用终端使用ubuntu系统功能(或dos和unix”功能)从Matlab为了给它多个命令,一步一步或者运行。/ sh脚本,但是当我试着用这些函数出现一个错误,事实上,我做了类似的事情,但调用一个python脚本从matlab(与那些函数ex: "[status, cmdout] = system(python myScript.py)")执行相同的命令调用终端,但出现相同的错误。看起来问题是我如何使用matlab函数或“system-unix-dos”函数本身调用终端时,因为当我调用python脚本或执行。/ sh文件直接从终端(位于同一个目录中),openfoam命令运行完美,此外,当我在matlab命令窗口中输入“!”Bash“它连接良好,但用户必须手动命令在命令窗口中运行。/sh文件,但这不是100%自动的,并不是想要的。不幸的是,我需要从matlab因为那里我有所有的openfoam文件生成器和翼型网格生成器和其他东西为了做任何翼型或翼型分析自动。有人知道怎么解决这个问题吗?
  1. 错误:
  • sh plot3dToFoam: not found或appears command no found . sh 1: plot3dToFoam: not found或appears command no found
  • sh:1: autoPatch: not found或appear command no found . sh:1: autoPatch: not found或appear command no found
  • sh:1: topoSet: not found或appear command no found . sh:1: topoSet: not found或appear command no found
  • sh:1: createPatch: not found或appears command no found . sh:1: createPatch: not found或appears no found
  • sh:1: simpleFoam: not found或appear command no found . sh:1: simpleFoam: not found或appear command no found

答案(2)

精确的模拟
精确的模拟 2021年3月31日
看起来您的shell脚本在MATLAB中运行时没有找到 OpenFOAM 可执行文件,在这种情况下,最有可能的问题是,当你的终端/shell在Linux中启动/打开时设置了MATLAB没有的路径(到可执行文件)(例如通过"。和类似的启动脚本)。例如,您可以尝试比较“env”终端输出
env
在MATLAB中运行时具有相同的输出
系统(“env”

卡米洛·马丁内兹官员
@Precise模拟 ,实际上我已经使用命令解决了这个问题
(~。~)=系统(“bash -我File-Executable.sh”
关键是 -我。 谢谢您的回答

下载188bet金宝搏


释放

R2018b

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!