Problem with matrices between Python and Matlab

9 vues (au cours des 30 derniers jours)
Gautier
Gautier le 24 Mai 2023
Commenté : Gautier le 25 Mai 2023
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 commentaires
Rik
Rik le 25 Mai 2023
Did you try creating the matrix as a vector and using reshape to make it the correct dimensions?
Gautier
Gautier le 25 Mai 2023
Yes I tried but the problem was the same for vectors.

Connectez-vous pour commenter.

Réponse acceptée

Karthik
Karthik le 25 Mai 2023
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.
  1 commentaire
Gautier
Gautier le 25 Mai 2023
Thank you very much it helps me a lot 😊 Have a nice day !

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Call Python from MATLAB dans Help Center et File Exchange

Produits


Version

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by