2017-10-17 3 views
0

Je résous un polynôme du quatrième ordre qui a des coefficients variables et je veux donc fusionner une fonction MATLAB en python. Je suis nouveau à ce concept et ainsi je reçois plusieurs retraçages pour le cas de test que j'ai écrit avant de passer au code réel. Je suis débutant dans MATLAB et Python.Utilisation de fonctions MATLAB en Python pour résoudre un polynôme du quatrième ordre

Voici le code python:

import matlab.engine 
import math 
eng = matlab.engine.start_matlab() 
D=(eng.hub(1,0,0,-184602.030,-(75.2)**4)) 
print(D) 

Voici le code Matlab:

function D=hub(a,b,c,d,e) 
coefvct = [a b c d e];  % Coefficient Vector 
D= roots(coefvct)    % Solution 
end 

Here's the traceback i encountered

Répondre

1

Je ne suis pas familier avec le moteur Matlab, mais en regardant l'erreur, la première Ce que vous devez corriger, c'est de le faire flotter et de ne pas vous intéresser, puisque c'est ce dont il se plaint: eng.hub(1.0, 0.0, 0.0, -184602.030,-(75.2)**4)).

Notez les points décimaux dans les trois premiers arguments.

+0

L'homme a travaillé. Merci beaucoup. Les décimales étaient-elles une raison de ces longs retraits? Eh bien, je suppose que c'est un accueil! – Harshal