Why does my FORTRAN code produce a different answer outside of MATLAB than inside of my MEX-file?

1 visualización (últimos 30 días)
When I run my FORTRAN code as a standalone executable, I receive a different answer than when the same code is called from inside my MEX-file.

Respuesta aceptada

MathWorks Support Team
MathWorks Support Team el 27 de Jun. de 2009
This is due to how MATLAB sets up the floating-point operations in the CPU at startup, and is not a bug in MATLAB.
If you use the following C code in your FORTRAN program, you should see the same answers:
void ResetFPU()
{
const static int CtrlWord=0x123f;
__asm fninit //initialize fpu
__asm fnclex // clear fpu exceptions
__asm fldcw CtrlWord // Load_FPU_Control_Word;
}

Más respuestas (0)

Categorías

Más información sobre Fortran with MATLAB en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by