Azzera filtri
Azzera filtri

Getting error in MEX file execution

2 visualizzazioni (ultimi 30 giorni)
Caleb
Caleb il 26 Ott 2016
Modificato: Caleb il 26 Ott 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 Commenti
Walter Roberson
Walter Roberson il 26 Ott 2016
As an experiment, just above that logPHI line, add
assert(Z > 0);
and see what happens.
Caleb
Caleb il 26 Ott 2016
Modificato: Caleb il 26 Ott 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

Accedi per commentare.

Risposte (0)

Categorie

Scopri di più su MATLAB Coder in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by