Filter löschen
Filter löschen

Getting error in MEX file execution

2 Ansichten (letzte 30 Tage)
Caleb
Caleb am 26 Okt. 2016
Bearbeitet: Caleb am 26 Okt. 2016
I'm doing parameter tuning for an equation of state using the genetic algorithm function (ga). When I run the equation of state file as I coded it in MATLAB, it works fine. When I compile and package the file as a MEX file, it gives me the following error:
Error using
coder.internal.error (line
17)
Domain error. To compute
complex results from real x,
use 'log(complex(x))'.
Error in log (line 13)
coder.internal.error('Coder:toolbox:ElFunDomainError',mfilename);
Error in EOSfunction (line 552)
logPHI = MUres_kT - log(Z);
What could be causing this? I have checks to make sure that Z is always real and non-negative, so log(Z) should never be causing a problem.
  2 Kommentare
Walter Roberson
Walter Roberson am 26 Okt. 2016
As an experiment, just above that logPHI line, add
assert(Z > 0);
and see what happens.
Caleb
Caleb am 26 Okt. 2016
Bearbeitet: Caleb am 26 Okt. 2016
Didn't work. Here's the error statement:
Error using EOSfile (line 552)
Assertion failed.
EDIT: I guess "Assertion failed" means that Z is returning a negative number. That was the fix. Thank you, Walter

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu MATLAB Coder finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by