Re: Set diagonal of square matrix
- To: mathgroup at smc.vnet.net
 - Subject: [mg116991] Re: Set diagonal of square matrix
 - From: Bob Hanlon <hanlonr at cox.net>
 - Date: Sun, 6 Mar 2011 05:46:02 -0500 (EST)
 
n = 3;
mat = Array[m, {n, n}];
vec = Array[v, n];
mat + DiagonalMatrix[vec - Diagonal[mat]]
{{v[1], m[1, 2], m[1, 3]}, {m[2, 1], v[2], m[2, 3]}, {m[3, 1], 
  m[3, 2], v[3]}}
Bob Hanlon
---- Szabolcs <szhorvat at gmail.com> wrote: 
=============
Dear MathGroup members,
Is there any simple way to set the diagonal of a square matrix to a
vector (of appropriate length)?  Of course there are ways to do it,
but I was wondering if there was a simple, one-line way.