mult_by_table_ndxb.c

来自「麻省理工学院的人工智能工具箱,很珍贵,希望对大家有用!」· C语言 代码 · 共 30 行

C
30
字号
/* C mex version for mult_by_table_ndxB.m in potential/Tables directory  */

#include "mex.h"

void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
{
  double *bigT, *smallT, value;
  int    *ndx;
  int    i, j, N;  

  plhs[0] = mxDuplicateArray(prhs[0]);
  bigT = mxGetPr(plhs[0]);
  smallT = mxGetPr(prhs[1]); 
  ndx = mxGetData(prhs[2]);
  N = mxGetNumberOfElements(prhs[0]);
  j = mxGetNumberOfElements(prhs[2]);

  if(j == 1){
	value = smallT[*ndx];
	for (i = 0; i < N; i++) {
      *bigT++ *= value;
	}
  }
  else{
    for (i = 0; i < N; i++) {
      *bigT++ *= smallT[*ndx++];
	}
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?