how to update matrix?
Show older comments
i want to update the matrix W .Here W is initialised with radom matrix. Such that W= u*W(WH-V)H'and u is keeps on increasing with 0.1 in each iteration.
9 Comments
Jan
on 6 Aug 2017
Okay. What is your question? What does "u is keeps on increasing with 0.1 in each iteration" mean? Is u a scalar? Do you want to create a loop? What is H? What exactly is the problem? What have you tried so far?
kitty varghese
on 6 Aug 2017
Hi Kitty
Please let me assist you by gathering a few more details about the question:
1.
how big are V and H W?
2.
is V sparse
3.
would you please be so kind that W and H are the upper and lower triangular of V?
4.
is H of V such
h_ij=abs(v_ij) if i=j, h_ij=-abs(v_ij) when i!=j
?
Jan
on 6 Aug 2017
@kitty varghese: Please remember, that the readers in the forum do not have the faintest idea about what you are doing. A statement like "until e=||v-w*h||<0.5" is cryptic, when the meaning of "v, w, h" is unknown and even the norm "||.||" is not uniquely defined in consequence. Is "w" and "W" the same here?
Please edit the original question and insert all details required to understand, what you are doing and what you want to be solved. Posting the current code and explaining the occurring problems is a good idea also.
John BG
on 7 Aug 2017
Jan
there's no need for Kitty to define the norm in the question, because whatever definition, as long as it is a mathematical norm, then it should work in the expression.
It's like, whether using for instance euclidean distance, or city block distance, or any custom norm definition, it doesn't matter, it shouldn't matter.
When applying each different norm it obviously gives different figures but Kitty's expression is general in the sense that
.
John BG
on 7 Aug 2017
Jan, e=||v-w*h||<0.5 means keep decreasing u until e<0.5, provided there is convergence.
In the context of this question, the concise definition of the norm doesn't matter.
Just choose one, the one you like most, whichever you are more familiar with, and use it to calculate the error e.
If the decomposition of the singular (problematic, troublemaker) matrix V is correct, then V is gradually approximated with for instance with the upper triangular and lower triangular matrices.
Probably V cannot be inverted with 1/V (not to be confused here with 1./V) but the processing of V may be possible processing the decomposition of V.
To decompose V, one has to 'precondition' V, but there are different ways to precondition problematic matrices.
Please have a look to Chen's reference in my answer
regards
John BG
John BG
on 8 Aug 2017
Mr Jan Simon
£108 is hard cover brand new, but sure there are cheaper used copies around for sale.
May be there's a copy of this wonderful book written by Chen in the Hildelberg University library.
Matrix preconditioning is a recurring point in any Maths 1st year University course, at least in all engineering modules I have heard of, and many teachers try to reduce the exposure, precisely to avoid questions that may require answer out of scope for a 1st year module.
You can define a particular norm, or you can refer to all norms, any norm, in an abstract way, and then there's no need to define any norm.
So no, Jan, it wouldn't be of any help to define a particular norm, in the context of this question.
If Chen had gone down to define particular norms, and he does in his book, but only here and there, as examples, the publication would require the length of the Encyclopedia Britannica.
And the very useful point is that the MATLAB scripts, you can download the for free, use the links I have supplied.
Chen scripts, actually do have examples with particular norms defined.
Regards
John BG
Accepted Answer
More Answers (0)
Categories
Find more on Mathematics and Optimization in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!