Exporting Matlab code as Python package: Coolprop dependency error
조회 수: 3 (최근 30일)
이전 댓글 표시
I have a Matlab code that accesses python wrapper for CoolProp and uses CoolProp.CoolProp.PropsSI function calls to get state properties in the form of py.CoolProp.CoolProp.PropsSI(...).
For example:
function T = test(p)
T= py.CoolProp.CoolProp.PropsSI('T','P',p,'Q',0,"Nitrogen");
end
If you run it from Matlab, everything works.
Following the steps in Create Python Application Using Library Compiler App I exported the Matlab functions as a python package. It is explicitly stated that the dependencies are recognized and added automatically. However, I encountered the following error when a function is called (see Package MATLAB Function and Deploy to Python Application) in Python:
import matlab_package as mtl
handle = mtl.initialize()
T = handle.test(100000)
MatlabRuntimeError: An error occurred when evaluating the result from a function. Details: File ....m, line ..., in ...\mcrCache23.2\...\...\....m, line ..., in run_model Unable to resolve the name 'py.CoolProp.CoolProp.PropsSI'.
I am not sure how I need to export it so that the dependency works. Any help?
UPDATE:
I narrowed down the issue to the InProcess operation of MatlabRuntime. Is there a way to invoke it Out-Of-Process? I have included
pyenv(ExecutionMode="OutOfProcess")
into the packaged matlab function, but it doesn't seem help it.
댓글 수: 0
답변 (1개)
Oliver Jaehrig
2024년 7월 10일
편집: Walter Roberson
2024년 7월 19일
Please consider following this workflow:
참고 항목
카테고리
Help Center 및 File Exchange에서 Python Package Integration에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!