Matlab Mupad befehl aus m file numeric::solve

Neue Frage »

Jimmy1986_KS Auf diesen Beitrag antworten »
Matlab Mupad befehl aus m file numeric::solve
Hallo,

ich habe ein Problem mit meinem Matlabcode. Ich habe eine Gleichung, die ich numerisch lösen will. Die bekomme ich, wenn ich folgenden Befehl verwende:

php:
1:
2:
Gleichung 1645/574 1/(N) - 1/(N-1) ....-1/(N-9);
vpasolve(Gleichung==0);



Hier bekomme ich 10 Werte für N raus. Meine eigentliche Gleichung hat 354 Wert, also:


php:
1:
2:
Gleichung 1645/574 1/(N) - 1/(N-1) ....-1/(N-353);
vpasolve(Gleichung==0);


Hier bekomme ich allerdings eine Fehlermeldung:

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
Error using mupadengine/feval (line 157)
MuPAD errorErrorDivision by zero.

  Evaluatingnumeric::fsolve_BornInf

Error in sym/vpasolve (line 111)
sol eng.feval('symobj::vpasolve',eqns,vars,X0);

Error in JM_Berechnung (line 47)
vpasolve(Gleichung==0,N)


Ich habe lange rechachiert und herausgefunden, dass ich das auch in Mupad machen kann. Der Befehl ist:

php:
1:
numeric::solve(1645/574 1/(N) - 1/(N-1) ....-1/(N-353)=0,N);


hier funktioniert das wunderbar. Ich bekomme wie gewünscht 354 Werte raus. Jedoch will ich das im m-file aufrufen. Also habe ich folgenden Code im m file:

php:
1:
evalin(symengine,'[numeric::solve(1645/574 - 1/(N) - 1/(N-1) ....-1/(N-353)=0,N)]');


Hier kommt wieder eine Fehlermeldung:

php:
1:
2:
3:
4:
Error using mupadengine/evalin (line 101)
MuPAD errorErrorDivision by zero.

  Evaluatingnumeric::fsolve_BornInf


Mache ich aber die Gleichung kleiner (Gleichung = 1645/574 - 1/(N) - 1/(N-1) ....-1/(N-9)) dann funktioniert das wieder.



Ich hoffe hier gibt es experten, die mir da weiter helfen können. Ich habe alles versucht, komme aber nicht weiter.
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »