File: meshgrid.m

package info (click to toggle)
freemat 4.2%2Bdfsg1-6
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 142,116 kB
  • sloc: ansic: 126,788; cpp: 62,015; python: 2,080; perl: 1,255; sh: 1,146; yacc: 1,019; lex: 239; makefile: 107
file content (24 lines) | stat: -rw-r--r-- 555 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
% DOCBLOCK array_meshgrid

% Copyright (c) 2002-2007 Samit Basu
% Licensed under the GPL

function [X,Y,Z] = meshgrid(x,y,z)
  if (nargin == 0)
    error('meshgrid requires at least one input argument');
  end
  if (nargin == 1)
    X = repmat(x(:)',[numel(x),1]);
    Y = X';
  elseif (nargout == 2)
    X = repmat(x(:)',[numel(y),1]);
    Y = repmat(y(:),[1,numel(x)]);
  else
    X = repmat(x(:)',[numel(y),1,numel(z)]);
    Y = repmat(y(:),[1,numel(x),numel(z)]);
    Z = repmat(reshape(z,[1,1,numel(z)]),[numel(y),numel(x),1]);
  end