diff general/numerical/packvec.m @ 4:e44f49929e56

Adding reorganised general toolbox, now in several subdirectories.
author samer
date Sat, 12 Jan 2013 19:21:22 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/general/numerical/packvec.m	Sat Jan 12 19:21:22 2013 +0000
@@ -0,0 +1,22 @@
+function X=packvec(varargin)
+% packvec - Pack coordinate values in separate arrays into one big array
+%
+% packvec :: {[K]->[[E]]} -> [[K,E]].
+%
+% There is also a variable argument list form:
+%
+% packvec :: [[E]], [[E]] -> [[2,E]].
+% packvec :: [[E]], [[E]], [[E]] -> [[3,E]].
+% etc..
+
+
+if nargin==1 && iscell(varargin{1})
+	Y=varargin{1};
+else
+	Y=varargin;
+end
+[Y{:}]=promote(Y{:});
+Y=cellmap(@(y)reshape(y,[1 size(y)]),Y);
+X=cat(1,Y{:});
+
+