These routines assist in the manipulation of matrices with same shape but different content. For example, performing the product A*b is trivial for matrix A and vector b, but what would you do if you had several such products to form? Examples abound: rotations, Jacobians, covariances, etc. Using the frontal routines, you'd collect them all in a three-dimensional matrix or third-order tensor, with each k-th frontal panel of A(:,:,k) and b(:,:,k) storing one such a related matrix and vector. Then calling
C = frontal_mtimes(A, b);
would do the equivalent of
for k=1:size(A,3), C(:,:,k) = A(:,:,k) * b(:,:,k); end
but using internally different algorithms depending on the dimensions of A (including a C-mex option). If you like operator overloading, you can do instead:
A = frontal(A);
b = frontal(b);
C = A*b;
You might want to compile the file frontal_mtimes_helper.c, but it's not required.
After you've unzipped it, test your installation running:
(don't do addpath(genpath('c:\work\fx\frontal\frontal\')))
Felipe G. Nievinski (2020). frontal (https://www.mathworks.com/matlabcentral/fileexchange/30764-frontal), MATLAB Central File Exchange. Retrieved .
OK. I think I have it working now, at least partially. I had to add both the frontal directory *and* the util subdirectory to the path.
Please check your unzipping procedure. I've double checked the zip and the directory structure is intact.
FYI: From the "Other Files" display above it looks like the intent is to install this as a class directory structure with some helper files. But when the zip file is downloaded there is no such directory structure. All I get is a bunch of files. So I will have to manually build the @frontal folder and then separate out the helper functions also, maybe putting them in a private directory under @frontal. Is it your intent that a person who downloads this has to build all these directory structures manually?
added acknowledgements; applied more tags.