[Scilab-users] is vectorization possible

ol.bond oleksiy.bond at gmail.com
Tue Sep 27 09:59:12 CEST 2016


As just mentioned by Tim, you have to transform your vector 'a' to a
matrix, and then apply summation:

tmp = sum(matrix(a,w,n)','c');



2016-09-27 16:56 GMT+09:00 Tim Wescott [via Scilab / Xcos - Mailing Lists
Archives] <ml-node+s994242n4034644h91 at n3.nabble.com>:

> OK.  I think I see where I went wrong.
>
> There's a way to do this but it's a bit mind boggling.
>
> If you can let ix be a rectangular matrix of indexes, then a(ix) will be
> a column vector of indexed values.  Then you can use 'matrix' to
> reassembly a(ix) into a rectangular matrix, the rows or columns of which
> you can sum up.  I don't know if it'll be faster than the for loop,
> though.
>
> There may be an even better way of doing it, but I don't know what it
> is.
>
> On 2016-09-27 00:28, [hidden email]
> <http:///user/SendEmail.jtp?type=node&node=4034644&i=0> wrote:
>
> > Thanks Tim for the answer, nevertheless it cannot work.
> >
> > I want to make the sum of blocks of rows; here
> > - 'i' is a vector
> > - tmp is a vector of 20 rows in the current example
> > - the loop does the job, but I do not understand why the vectorization
> > fails ... is it a synthax error ?
> >
> > Paul
> >
> > pb: in my understanding, 'c' means 'column' and 'r' means row => for
> > matrix operations
> >
> >
> >
> > ----- Mail original -----
> > De: "Tim Wescott" <[hidden email]
> <http:///user/SendEmail.jtp?type=node&node=4034644&i=1>>
> > À: [hidden email]
> <http:///user/SendEmail.jtp?type=node&node=4034644&i=2>
> > Envoyé: Mardi 27 Septembre 2016 09:17:30
> > Objet: Re: [Scilab-users] is vectorization possible
> >
> > tmp = sum(a( [1 + (i-1)*n : i*n],:), 'c')
> >
> > Or sum(..., 'r').  I can't remember which is which.  One makes a row,
> > the other makes a column, but I can never remember if it's "sum all
> > columns" or "sum into a column".
> >
> > On Tue, 2016-09-27 at 09:08 +0200, [hidden email]
> <http:///user/SendEmail.jtp?type=node&node=4034644&i=3> wrote:
> >> Hi All
> >>
> >> Is the vectorization possible for the example herebellow? everything I
> >> tried failed !
> >>
> >> Thanks for any help
> >>
> >> Paul
> >>
> >> ##################################################################
> >> mode(0)
> >>
> >>
> >> k = 100;
> >> a = rand(k,1);
> >>
> >>
> >> w = 5;
> >> n = (k/w);
> >>
> >>
> >> i = [1 : n]';
> >>
> >>
> >> tmp = zeros(n,1);
> >>
> >>
> >> // using vectorization
> >> tmp(i,1) = sum(a( [1 + (i-1)*n : i*n],:)
> >> abort
> >>
> >>
> >>
> >>
> >> // same using a loop
> >> for i = 1 : n
> >>     tmp(i,1) = sum(a( [1 + (i-1)*w : i*w],:));
> >> end
> >>
> >>
> >> tmp
> >> _______________________________________________
> >> users mailing list
> >> [hidden email] <http:///user/SendEmail.jtp?type=node&node=4034644&i=4>
> >> http://lists.scilab.org/mailman/listinfo/users
> >
> > --
> >
> > Tim Wescott
> > www.wescottdesign.com
> > Control & Communications systems, circuit & software design.
> > Phone: 503.631.7815
> > Cell:  503.349.8432
> >
> >
> > _______________________________________________
> > users mailing list
> > [hidden email] <http:///user/SendEmail.jtp?type=node&node=4034644&i=5>
> > http://lists.scilab.org/mailman/listinfo/users
>
> _______________________________________________
> users mailing list
> [hidden email] <http:///user/SendEmail.jtp?type=node&node=4034644&i=6>
> http://lists.scilab.org/mailman/listinfo/users
>
>
> ------------------------------
> If you reply to this email, your message will be added to the discussion
> below:
> http://mailinglists.scilab.org/Scilab-users-is-vectorization-possible-
> tp4034639p4034644.html
> To start a new topic under Scilab users - Mailing Lists Archives, email
> ml-node+s994242n2602246h53 at n3.nabble.com
> To unsubscribe from Scilab users - Mailing Lists Archives, click here
> <http://mailinglists.scilab.org/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=2602246&code=b2xla3NpeS5ib25kQGdtYWlsLmNvbXwyNjAyMjQ2fDE2MDI0ODA1Mzg=>
> .
> NAML
> <http://mailinglists.scilab.org/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>




--
View this message in context: http://mailinglists.scilab.org/Scilab-users-is-vectorization-possible-tp4034639p4034646.html
Sent from the Scilab users - Mailing Lists Archives mailing list archive at Nabble.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/users/attachments/20160927/d17b0c37/attachment.htm>


More information about the users mailing list