[Scilab-users] Re : Re: opposite to 'diag' keyword

Pierre-Aimé Agnel pierre-aime.agnel at scilab-enterprises.com
Wed Jun 17 09:28:38 CEST 2015


Hello,

diag works both ways:


Le 17/06/2015 09:22, paul.carrico at free.fr a écrit :
> No
>
> A basic example:
>
> -->A = [1 0 0 0 ; 0 6 0 0 ; 0 0 -5 0 ; 0 0 0 31]
>   A  =
>   
>      1.    0.    0.    0.
>      0.    6.    0.    0.
>      0.    0.  - 5.    0.
>      0.    0.    0.    31.
>   
> -->B = diag(A)
>   B  =
>   
>      1.
>      6.
>    - 5.
>      31.
>   

-->A = [1 0 0 0 ; 0 6 0 0 ; 0 0 -5 0 ; 0 0 0 31]
  A  =

     1.    0.    0.    0.
     0.    6.    0.    0.
     0.    0.  - 5.    0.
     0.    0.    0.    31.

-->B = diag(A)
  B  =

     1.
     6.
   - 5.
     31.

-->C = diag(B)
  C  =

     1.    0.    0.    0.
     0.    6.    0.    0.
     0.    0.  - 5.    0.
     0.    0.    0.    31.
>
> how a rebuild A from B ....
>
> NB:
> - the purpose is to find a basic but fast way to build a symmetrical matrix using the following syntax for example : K = K +Kd + K'
> - where K is the triangle upper (or lower) matrix and Kd is the diagonal
> - I want to decrease the amount of memory in avoiding to use a (nxn) matrix
>
>
> Paul
>
> ----- Mail d'origine -----
> De: jbaudais at insa-rennes.fr <Jean-Yves.Baudais at insa-rennes.fr>
> À: users at lists.scilab.org
> Envoyé: Wed, 17 Jun 2015 09:14:39 +0200 (CEST)
> Objet: Re: [Scilab-users] opposite to 'diag' keyword
>
> Hello,
>
> Le 17/06/2015 09:05, paul.carrico at free.fr a écrit :
>> The question is quite basic: I'm trying to opposite to 'diag' keyword in order to build a diagonal matrix from a vector, but I fail so far ... what is the trick?
>     The diag help says "diagonal including or extracting"
>   > diag([1 2])
> gives the matrix [1 0;0 2]
>     Is it the "opposite" you want?
>
> --Jean-Yves
> _______________________________________________
> users mailing list
> users at lists.scilab.org
> http://lists.scilab.org/mailman/listinfo/users
>
> _______________________________________________
> users mailing list
> users at lists.scilab.org
> http://lists.scilab.org/mailman/listinfo/users

-- 
Pierre-Aimé Agnel
R&D Projects Manager
Phone:  +33.1.80.77.04.67
Mobile: +33.6.82.49.35.23
-----------------------------------------------------------
Scilab Enterprises
143bis rue Yves Le Coz - 78000 Versailles, France
Phone: +33.1.80.77.04.68
http://www.scilab-enterprises.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/users/attachments/20150617/7079e1fa/attachment.htm>


More information about the users mailing list