view examples/mycell.c @ 18496:80b8873c90ba

Fix pinv bug with 0 values introduced in cset 16b0cd465ecd. * pinv.cc (Fpinv): Add %!tests for diagonal matrices * CDiagMatrix.cc (pseudo_inverse), dDiagMatrix.cc (pseudo_inverse), fCDiagMatrix.cc (pseudo_inverse), fDiagMatrix.cc (pseudo_inverse): Don't skip assigning 0 to retval element when matrix element is 0 since retval memory is not initialized to 0.
author Rik <rik@octave.org>
date Thu, 20 Feb 2014 09:26:45 -0800
parents 224e76250443
children
line wrap: on
line source

#include "mex.h"

void
mexFunction (int nlhs, mxArray* plhs[],
             int nrhs, const mxArray* prhs[])
{
  mwSize n;
  mwIndex i;

  if (nrhs != 1 || ! mxIsCell (prhs[0]))
    mexErrMsgTxt ("ARG1 must be a cell");

  n = mxGetNumberOfElements (prhs[0]);
  n = (n > nlhs ? nlhs : n);

  for (i = 0; i < n; i++)
    plhs[i] = mxDuplicateArray (mxGetCell (prhs[0], i));
}