Messages d'erreur Mex file MATLAB

Fermé
Narcisse2012 Messages postés 1 Date d'inscription samedi 25 mai 2013 Statut Membre Dernière intervention 25 mai 2013 - 25 mai 2013 à 11:12
Bonjour tt le monde,

Je suis débutante dans la programmation Matlab et les Mex files alors je vous prie de m'aider à trouver une solution pour un gros problème !! En fait je programme une fonction mex file qui s'appelle amortissement.c et qui calcule le quotient de deux scalaires de type double. Un message d'erreur s'affiche toujours lors de la compilation du mex file :

"Undefined function or method 'arrayquotient' for input arguments of type 'double' "

j'ai bcp cherché dans les forums mais en vain. J'ai ajouté le path (par la commande addpath puis save path) et je suis sure que j suis maintenant dans la bonne répertoire. Mon mex file est "amortissement.c " et son code est le suivant:
#include "mex.h"

void arrayquotient(double x, double y, double z)
{

z = x / y;

}

void mexFunction( int nlhs, mxArray *plhs[],
int nrhs, const mxArray *prhs[])
{
double input1; /* input scalar 1 */
double input2; /* input scalar 2*/
double output1; /* output scalar 1 */
/
input1 = mxGetScalar(prhs[0]);
input2 = mxGetScalar(prhs[1]);

/* create the output scalar1 */
plhs[0] = mxCreateDoubleScalar(input1/input2);
output1 = mxGetScalar(plhs[0]);

/* call the computational routines */
quotientt(input1,input2,output1);
}
J'ai bien vérifié le répertoire puisque mon fichier "amortissement.c" existe . J'ai pensé à déclarer le prototype de la fonction "arrayquotient" dans un fichier . m appelé "arrayquotient.m" pour qu'il trouve la fonction et voici son code :

function output1=arrayquotient(input1,input2)

lors de la compilation de "amortissement.c", j'entre les valeurs des inputs puis il m'affiche le message d'erreur suivant :

Error in ==> arrayquotient at 1
function output1=arrayquotient(input1,input2)

??? Output argument "output1" (and maybe others) not assigned during call to
"C:\Users\hp\Documents\MATLAB\codes_Rihab\arrayquotient.m>arrayquotient".

je ne comprends plus rien :( j'ai besoin d'aide SVP !!! merci d'avance !!
A voir également: