How can I execute ".m file" in Python 3.8?

I am trying to execute "sim_profiles.m" which has several dependencies such as Parallel computing toolbox(parfor), LIONSIMBA(Simulation library written as Matlab). I referenced a document, "Get Started with MATLAB Engine API for Python". This is what I have tried:
import numpy as np
import matlab.engine
eng = matlab.engine.start_matlab()
fitness, measured_data = eng.sim_profiles(1, 1, arr_data, 100)
print(fitness, measured_data)
It printed the followed exception
MatlabExecutionError:
File C:\Users\user\Desktop\LIONSIMBA\LIONSIMBA-master\LIONSIMBA-master\battery_model_files\simulator_tools\differentialInitialConditions.m, line 33, in differentialInitialConditions
File C:\Users\user\Desktop\LIONSIMBA\LIONSIMBA-master\LIONSIMBA-master\startSimulation.m, line 226, in mainCore
File C:\Users\user\Desktop\LIONSIMBA\LIONSIMBA-master\LIONSIMBA-master\startSimulation.m, line 112, in startSimulation
File C:\Users\user\Desktop\강화학습\pytorch-soft-actor-critic-SAC_V\pytorch-soft-actor-critic-SAC_V\sim_profiles.m, line 36, in sim_profiles
Integers can only be combined with integers of the same class, or scalar doubles.
I already tested "sim_profiles.m" code in MATLAB and it works without any error.

2 件のコメント

관웅 윤
관웅 윤 2021 年 9 月 8 日
I solved this problem with this link. I guess Matlab did not apply implicit casting to variables from Python. The following code works perfectly.
fitness, measured_data = eng.sim_profiles(1, 1, matlab.double(arr_data), matlab.double([100]))
Yongjian Feng
Yongjian Feng 2021 年 9 月 12 日
Put your comment above as an anwer to this question, and then accept it. Then others encounting similar question can find the answer.

サインインしてコメントする。

 採用された回答

관웅 윤
관웅 윤 2021 年 9 月 13 日

0 投票

I solved this problem with this link. I guess Matlab did not apply implicit casting to variables from Python. The following code works perfectly.
fitness, measured_data = eng.sim_profiles(1, 1, matlab.double(arr_data), matlab.double([100]))

その他の回答 (0 件)

カテゴリ

製品

リリース

R2021a

タグ

質問済み:

2021 年 9 月 8 日

回答済み:

2021 年 9 月 13 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by