Linearly spaced multidimensional matrix without loop

Generates a N-dimensional matrix of linearly equally spaced points between the matrices d1 and d2.
4.2K Downloads
Updated 19 May 2014

View License

LINSPACENDIM is a good extension of the Matlab function linspace to any multidimensional elements.
LINSPACENDIM(d1, d2) generates a multi-dimensional
matrix of 100 linearly equally spaced points between
each element of matrices d1 and d2.

LINSPACENDIM(d1, d2, N) generates N points between
each element of matrices X1 and X2.

Example:
d1 = rand(3, 2, 4); d2 = rand(size(d1)); n = 10;

y = linspaceNDim(d1, d2, n) returns a multidimensional matrix y of
size (3, 2, 4, 10)

Class support for inputs X1,X2:
float: Multidimensional matrix, vector, double, single

--> I did not use any Loop! <--

I use an old function that I wrote to make the tensor product of two(2) multidimensional matrices of of any size and any number of dimensions.

Cite As

Steeve AMBROISE (2024). Linearly spaced multidimensional matrix without loop (https://www.mathworks.com/matlabcentral/fileexchange/22824-linearly-spaced-multidimensional-matrix-without-loop), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2014a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Creating and Concatenating Matrices in Help Center and MATLAB Answers
Acknowledgements

Inspired: NDLINSPACE (v1.1, feb 2008)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.3.0.0

update comments

1.2.0.0

I fix the bug that occured when the first (or some) dimensions are singletons.

Thanks to Jos for your comments.

1.1.0.0

NO LOOP!!!

1.0.0.0