Pierre Colobert a écrit :
> Le Thursday 26 November 2009 18:35:47 Marc TERRIER, vous avez écrit :
>> Selon Patrick Dupre <pd520@???>:
>>> Bonjour,
>>>
>>> Je n'ai pas trouve la definition de
>>> W=diag.(A,B)
>>>
>>> alors je pose la sur la liste, ce n'est pas tres adapte, mais il doit
>>> bien y avoir des members qui font assez de maths pour peut-etre me
>>> repondre !
>>> Dans mon expression, A,B et W sont des matrices.
>>> J'avais cru comprendre que:
>>> A 0
>>> W = 0 B
>>>
>>> Mais cela ne marche pas alors j'ai un doute.
>>>
>>> Merci.
>> Salut,
>>
>> Normalement, quand on écrit W = diag (a,b,c,...), c'est que a, b, c, etc.
>> sont les coefficients de la diagonale de la matrice W, dont les autres
>> coeffs sont nuls. Je suis donc surpris quand tu dis que A et B, dans ton
>> cas, sont également des matrices...
>>
>> Ou alors c'est que A et B sont elles-mêmes des matrices diagonales de
>> dimensions n x n et m x m, et que ta fonction diag à toi les "juxtapose"
>> pour en faire une autre matrice diagonale, de dimensions n+m x n+m, mais ça
>> semble bizarre.
>
> Bonjour
>
> Je ne suis pas sur que la fonction diag soit une vrai fonction mathematique ,
> mais plutot une fonction de logiciel de calcul par exemple avec xcas, si on
> donne une liste de nombre comme arguments elle créee une matrice carrée dont
> la diagonale est composée des arguments passé à la fonction, si on utilise
> des matrices carrées comme argument ca recompose une matrice dont la
> dimension est la somme des dimenssion des matrices et dont les diagonales des
> matrices argument forment la diagonale de la matrice résultat.
>
> exemples :
> note [[a,b],[c,d]] =
> |a b|
> |c d|
>
> diag([a,b,c,d]) = [[a,0,0,0],[0,b,0,0],[0,0,c,0],[0,0,0,d]]
>
> diag([[a,b],[c,d]],[[k,f],[g,h]]) = [[a,b,0,0],[c,d,0,0],[0,0,k,f],[0,0,g,h]]
>
> diag([[a,b,c],[d,f,g],[h,k,l]],[[m,n],[o,p]]) =
> [[a,b,c,0,0],[d,f,g,0,0],[h,k,l,0,0],[0,0,0,m,n],[0,0,0,o,p]]
>
> diag([[a,b],[c,d]],[k,f]) = [[a,b],f] <-- le resultat est plus difficile a
> prévoir si les dimensions et types des matrices sont différents.
C'est ce que je voulais dire, en parlant de "juxtaposer" les arguments,
mais je n'avais pas pris la peine de mettre des exemples, et c'est vrai
que avec des exemples, c'est plus clair. Mais je suis bien d'accord sur
l'histoire de la fonction de logiciel de calcul.
--
Marc