Problem with matrices between Python and Matlab

9 次查看(过去 30 天)
Hi everyone,
I'm starting with matlab and I would like tu use a matlab function in python (gflineq) to solve a linear equation. However, it doesn't work as matrices are not represented the same way in python and matlab. How can I edit my program in order to make it work ?
Thank you !!
  2 个评论
Rik
Rik 2023-5-25
Did you try creating the matrix as a vector and using reshape to make it the correct dimensions?
Gautier
Gautier 2023-5-25
Yes I tried but the problem was the same for vectors.

请先登录,再进行评论。

采纳的回答

Karthik
Karthik 2023-5-25
Hello Gautier,
I Understand that you are trying to use MATLAB "gflineq" in python and are facing issues passing NumPy/Python based arrays to this function.
The following Example Code shows how we can pass python arrays to MATLAB gflineq function.
import matlab.engine
import numpy as np
# Start MATLAB engine
eng = matlab.engine.start_matlab()
# Define the matrix A and the vector b
A = np.matrix([[1,0,0],
[1,1,1],
[1,1,1],
[0,1,1]])
b = matlab.double([[1], [0], [0], [1]]) # Make b a column vector
# Convert A to MATLAB's double type
A = matlab.double(A.tolist())
x= eng.gflineq(A, b)
# Convert the output to NumPy arrays
x = np.array(x)
# Display the results
print("x =", x)
You can refer to the following links for more details:
Thanks,
Karthik.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Call Python from MATLAB 的更多信息

标签

产品


版本

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by