从<MATLAB>/extern/example/mex目录下的yprime.c复制到自己的文件夹,然后在matlab中打开,使用下面的命令编译
注意,文件名要和函数名一样。
yprime.c
#include <math.h>
#include "mex.h"
/* Input Arguments */
#define T_IN prhs[0]
#define Y_IN prhs[1]
/* Output Arguments */
#define YP_OUT plhs[0]
#if !defined(MAX)
#define MAX(A, B) ((A) > (B) ? (A) : (B))
#endif
#if !defined(MIN)
#define MIN(A, B) ((A) < (B) ? (A) : (B))
#endif
static double mu = 1 / 82.45;
static double mus = 1 - 1 / 82.45;
static void yprime(double yp[], double* t, double y[]) {
double r1, r2;
(void)t; /* unused parameter */
r1 = sqrt((y[0] + mu) * (y[0] + mu) + y[2] * y[2]);
r2 = sqrt((y[0] - mus) * (y[0] - mus) + y[2] * y[2]);
/* Print warning if dividing by zero. */
if (r