Evaluation of matrix element of a linear differential matrix equation by constrained least square fitting

2 次查看(过去 30 天)
Hi All,
I was trying to evaluate the matrix coefficient by the method of constrained least square fitting. The linear matrix differential equation looks like X'=AX, where X' and X are two vectors and A is matrix. Moreover, there is a constraint on diagonal matrix element and which is a(i,i)=-Sum(i/=j)a(i,j). The elements of X' and X vectors are known. I was trying to use MATLAB to do that. But I didn't figure out which figure out which MATLAB function is suitable for that. Can you guide me in this regard.
Thanks in advance Sudipta

采纳的回答

Richard Brown
Richard Brown 2013-8-7
Assuming you have multiple X and X' vectors that you're trying to fit your matrix to, your problem can be posed as a constrained linear least squares problem in the entries of A, which can be solved using lsqlin
  3 个评论
Sudipta Sinha
Sudipta Sinha 2013-8-7
Thanks for your continuing help. I am facing a confusion. The function lsqlin function evaluates the values of X. But I need the matrix elements. The arguments of the lsqlin function are A, X' and the constraint equation and it evalutes the X vector. In my case the matrix is unknown and need to evaluate that. So what will be the format of matlab lsqlin function. Another thing if Sum a(i,j)=0 then the constraint equation look like a11+a12+....a1n=0 and so on for other rows. But what will be the matlab lsqlin function format of this constraint equation.
Richard Brown
Richard Brown 2013-8-7
The vector that you get out from lsqlin will be the columns of A, stacked into a vector. The matrix Ahat that you provide to lsqlin will be big (it's not A). For example, assuming your vectors have m entries and A is square, the first m rows of the matrix Ahat you provide to lsqlin will be
tmp = repmat({x1},m,1);
Ahat(1:m,:) = blkdiag(tmp{:})
where x1 is your first X vector. Likewise the first m entries of the RHS will be xp1 (your first X' vector)

请先登录,再进行评论。

更多回答(1 个)

Sudipta Sinha
Sudipta Sinha 2013-8-7
Thanks for your reply. Yes, I have multiple x(1).....x(n) and x'(1).....x'(n) vectors. Can you provide a small script for that? That will be great for me.

类别

Help CenterFile Exchange 中查找有关 Linear Least Squares 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by