solving a matrix exponential equation
Mostrar comentarios más antiguos
I know this is perhaps a "methods" question rather than a purely "Matlab" question, but does anybody know or could point me towards a way to estimate/fit the parameters of a matrix exponential equation?
In particular, if x is a NxM matrix representing a vector timeseries (each column x(:,n) is an observed N-dimensional vector) I would like to fit this data to a model of the form:
x(:,n) = expm(A*n)*b;
(note that this is matrix exponentiation, not element-wise exponentiation) where the matrix A (NxN matrix) and the vector b (Nx1 vector) are parameters to be estimated from the data in a way that minimizes the mse of the fit:
x_fit = cell2mat(arrayfun(@(n)expm(A*n)*b, 1:size(x,2),'uni',0));
err = mean(sum(abs(x_fit-x).^2,1),2);
Thank you for any pointers/thoughts/comments!
Respuesta aceptada
Más respuestas (0)
Categorías
Más información sobre Linear Least Squares en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!