OMEdit中执行单个参数灵敏度分析报错求助
OMEdit灵敏度分析执行失败问题解决
在OMEdit中通过顶部任务栏的灵敏度分析功能执行单参数分析时出现错误,具体信息如下:
执行命令
"C:/Program Files/OpenModelica1.20.0-64bit/tools/msys/mingw64/bin/python.exe" "C:/Program Files/OpenModelica1.20.0-64bit/share/OMSens/individual_sens_calculator.py" "X:/Allgemein Ordner/0 Templates & LINK/Calculations/Open Modelica/Sensitivity Analysis/2025-01-10/9_30_10/experiment_specs.json" --dest_folder_path "X:/Allgemein Ordner/0 Templates & LINK/Calculations/Open Modelica/Sensitivity Analysis/2025-01-10/9_30_10/results"
错误日志
执行失败! LINK: 额外操作数 'Analysis/2025-01-10/9_30_10/results\\simulation\\builder.mos' 请尝试 'LINK --help' 获取更多信息。 DEBUG:--运行OMC--:OMC日志已写入: X:/Allgemein Ordner/0 Templates & LINK/Calculations/Open Modelica/Sensitivity Analysis/2025-01-10/9_30_10/results\simulation\omc_run_log.txt 回溯(最近的调用最后): 文件 "C:/Program Files/OpenModelica1.20.0-64bit/share/OMSens/individual_sens_calculator.py", 第138行, 在 <module> main() 文件 "C:/Program Files/OpenModelica1.20.0-64bit/share/OMSens/individual_sens_calculator.py", 第26行, 在 main perturbateAndAnalyzeFromJsonToPath(json_file_path, dest_folder_path) 文件 "C:/Program Files/OpenModelica1.20.0-64bit/share/OMSens/individual_sens_calculator.py", 第45行, 在 perturbateAndAnalyzeFromJsonToPath perturbateAndAnalyze(**perturbateAndAnalyze_kwargs) 文件 "C:/Program Files/OpenModelica1.20.0-64bit/share/OMSens/individual_sens_calculator.py", 第69行, 在 perturbateAndAnalyze perturbator = analysis.indiv_sens.ParametersIsolatedPerturbator(**perturbator_kwargs) 文件 "C:\Program Files\OpenModelica1.20.0-64bit\share\OMSens\analysis\indiv_sens.py", 第30行, 在 __init__ self.compiled_model = self.model_builder.buildToFolderPath(build_folder_path) 文件 "C:\Program Files\OpenModelica1.20.0-64bit\share\OMSens\modelica_interface\build_model.py", 第40行, 在 buildToFolderPath compiled_model = CompiledModelicaModel(self.model_name, binary_file_path) 文件 "C:\Program Files\OpenModelica1.20.0-64bit\share\OMSens\modelica_interface\compiled_model.py", 第19行, 在 __init__ xml_tree = ElementTree.parse(self.xml_file_path) 文件 "C:\Program Files\OpenModelica1.20.0-64bit\tools\msys\mingw64\lib\python3.8\xml\etree\ElementTree.py", 第1202行, 在 parse tree.parse(source, parser) 文件 "C:\Program Files\OpenModelica1.20.0-64bit\tools\msys\mingw64\lib\python3.8\xml\etree\ElementTree.py", 第584行, 在 parse source = open(source, "rb") 文件未找到错误: [Errno 2] 没有该文件或目录: 'X:/Allgemein Ordner/0 Templates & LINK/Calculations/Open Modelica/Sensitivity Analysis/2025-01-10/9_30_10/results\\simulation\\PRT.Reactors.Reactor_Jacketed_IHC_V3_init.xml'
问题原因与解决
报错根源在于路径中包含&符号:Windows命令行中&是命令分隔符,会被解析为额外的命令操作数,导致LINK命令执行异常,最终编译后的XML文件无法被正确找到。
移除目录名中的&后,灵敏度分析功能可正常运行,效果如下:
解决建议
- 确保模型文件、结果输出路径的所有目录名中不含
&、|等命令行敏感特殊字符 - 若路径包含空格,需用双引号包裹,但
&这类字符即使加引号也容易引发解析问题,直接移除是最稳妥的方案
内容的提问来源于stack exchange,提问作者Tobias R.
相关产品推荐
相关产品推荐

