[#398788] Constructor or a Method — Rubyist Rohit <lists@...>

Take for instance this code:

13 messages 2012/09/01

[#398896] how to sum element of array — Edward QU <lists@...>

dear all

19 messages 2012/09/04

[#398936] best coding for limiting a value — Regis d'Aubarede <lists@...>

A) result=value<min ? min : (value > max ? max : value)

17 messages 2012/09/04

[#398962] Long calculation & time limit — toto tartemolle <lists@...>

Hello,

17 messages 2012/09/05

[#398964] Compiling ruby from source on windows — GPad <peterpan105105@...>

Hi to all,=0AI'm trying to compile ruby on my windows 7. I have already a r=

10 messages 2012/09/05

[#398997] OpenURI open method problem — "Derek T." <lists@...>

The code I am referring to looks like this:

12 messages 2012/09/05

[#399002] Parsing through downloaded html — Sybren Kooistra <lists@...>

Hi all,

28 messages 2012/09/06

[#399012] "Hiding" pictures(and source code if it's possible) — "Damián M. González" <lists@...>

Ey guys, how are you?

11 messages 2012/09/06

[#399083] regix in grep or something like this — Ferdous ara <lists@...>

Hi

12 messages 2012/09/07

[#399206] please help me with making script — Charmaine Willemsen <lists@...>

In this example i like to parse birthday and sexe

11 messages 2012/09/11

[#399218] Pathname#to_str withdrawn in 1.9? — matt@... (Matt Neuburg)

Just getting started experimenting with Ruby 1.9 (1.9.3) and my scripts

13 messages 2012/09/12

[#399227] Breaking Down the Block — incag neato <lists@...>

Can someone please explain in plain english how this block treats the

20 messages 2012/09/13

[#399244] ruby Range to array that acts like time objects? — "Jermaine O." <lists@...>

Hello everybody,

15 messages 2012/09/13

[#399293] Ruby on Ubuntu 12.04 LST — Bojan Jordanovski <lists@...>

Hello everybody,

13 messages 2012/09/14

[#399298] wow, YAML / Psych in 1.9.3 is *slow*! — matt@... (Matt Neuburg)

I just started trying Ruby 1.9.3, coming from Ruby 1.8.7, and was

12 messages 2012/09/14

[#399304] Ruby 1.9.3 and OS X Mountain Lion — sto.mar@...

Hi all,

16 messages 2012/09/14

[#399343] Class variables or Class singleton variables? — "Damián M. González" <lists@...>

Guys, how are you?

18 messages 2012/09/15

[#399386] Ruby - is it worth the effort? — neomex <neomex@...>

Hello,

19 messages 2012/09/17
[#399406] Re: Ruby - is it worth the effort? — Roger Pack <lists@...> 2012/09/17

Unfortunately with Ruby for me it's typically "fun and fast development"

[#399409] Re: Ruby - is it worth the effort? — Peter Zotov <whitequark@...> 2012/09/17

Roger Pack писал 17.09.2012 22:06:

[#399491] Re: Ruby - is it worth the effort? — Robert Klemme <shortcutter@...> 2012/09/19

On Mon, Sep 17, 2012 at 8:20 PM, Peter Zotov <whitequark@whitequark.org> wr=

[#399421] Encoding question — Thomas Bednarz <lists@...>

I am new to ruby and play around with it a little bit at the moment. I

17 messages 2012/09/17

[#399441] Bug or feature — Damjan Rems <lists@...>

There has probably been some discussion about this problem so sorry if I

13 messages 2012/09/18

[#399451] Class variables — Aleksander Ciesielski <neomex@...>

Is it obligatory to use instance variables in classes? Can't we just

17 messages 2012/09/18

[#399479] Ruby SQL Select Sum 2 Columns? — Courtney Fay <lists@...>

I have the following definition which is looking at an apache database,

12 messages 2012/09/18

[#399556] still learning by doing - connecting rooms in a game — "Sebastjan H." <lists@...>

Hi,

28 messages 2012/09/20
[#399570] Re: still learning by doing - connecting rooms in a game — Henry Maddocks <hmaddocks@...> 2012/09/20

[#399574] Re: still learning by doing - connecting rooms in a game — "Sebastjan H." <lists@...> 2012/09/21

Henry Maddocks wrote in post #1076876:

[#399575] Re: still learning by doing - connecting rooms in a game — Henry Maddocks <hmaddocks@...> 2012/09/21

[#399576] Re: still learning by doing - connecting rooms in a game — "Sebastjan H." <lists@...> 2012/09/21

Could you be so kind as to suggest another book? I mean there are many

[#399585] Re: still learning by doing - connecting rooms in a game — "Sebastjan H." <lists@...> 2012/09/21

Sebastjan H. wrote in post #1076909:

[#399572] How would you allow variable from specific list of Fixnum? — Eliezer Croitoru <eliezer@...>

I have:

11 messages 2012/09/21

[#399623] Very important question - survey — Marc Heiler <lists@...>

Is matz more like a ninja or more like a samurai?

11 messages 2012/09/22

[#399695] inject problem — Roelof Wobben <rwobben@...>

26 messages 2012/09/25

[#399714] could initialize return an existing object instead of a new instance? — Gary Weaver <lists@...>

Is it possible for initialize to return an existing object instead of a

9 messages 2012/09/25

[#399811] Good book for getting started with Ruby? [I code Python!] — Alec Taylor <alec.taylor6@...>

I've learned programming in C++, Python and PHP at University. (also

12 messages 2012/09/28

[#399815] calcaulation with unknown numbers of numbers and options fail — Roelof Wobben <rwobben@...>

11 messages 2012/09/28

Re: Using ruby for scientific computing

From: Olivier Saut <osaut@...>
Date: 2012-09-08 18:00:32 UTC
List: ruby-talk #399116
Le 8 sept. 2012 =C3=A0 19:39, Panagiotis Atmatzidis <ml@convalesco.org> =
a =C3=A9crit :

> Hello,
>=20
> On 8 =CE=A3=CE=B5=CF=80 2012, at 18:06 , Olivier Saut =
<osaut@airpost.net> wrote:
>=20
>> Hi all,
>>=20
>> For pedagogic purposes, I am trying to solve simple partial =
differential
>> equations (say a diffusion equation on a regular mesh in 2D) with =
Ruby.
>> Using the NArray gem, I have built a satisfactory tool from an =
interface
>> (and ease of use) point of view but the performance are suboptimal.=20=

>=20
> Is the code available on a public repo?

Not yet, but I plan to share it as soon as I am convinced it is usable =
for my students.=20

>=20
>> I am now wondering what is the right way to improve my code
>> performance-wise. I am doing a lot of matrix-vector and vector-vector
>> products.=20
>>=20
>> =46rom 2 2D NArrays describing two scalar fields, dot-product is =
implemented as :
>>=20
>> def dot_product(vec_a, vec_b)=20
>>       dot_product=3D(vec_a*vec_b">vec_a*vec_b).sum=20
>> end

The definition above is wrong, the right ones

def dot_product(vec_a, vec_b)
	(vec_a*vec_b).sum
end


>>=20
>> and as I am working with sparse matrices, (for the time being) a =
matrix
>> is an Array of Hashes. Each key of the hash contains the index of the
>> non-vanishing coefficients (the value of this coefficient is the =
value
>> of the Hash) of the matrix. For the identity matrix it gives
>>=20
>> def identity(sizeX, sizeY)
>>       mat=3D[]
>>       (0..sizeX*sizeY">sizeX*sizeY).each { |ind|
>>           mat << {ind=3D>1.0}
>>       }
>>       mat
>> end
>>=20
>>=20
>> Matrix vector product is then defined as
>>=20
>> def matrix_vector_product(mat, vector)=20
>>       ff=3DNArray.float(100,100)
>>       (0..100*100).each { |ind|
>>           matrix[ind].each do |key,value|
>>               ff[[ind]]+=3Dvalue*vector[[key]][0]
>>           end
>>       }
>>       ff
>> end
>>=20
>> I am wondering what is the best way to tackle this performance =
problem :
>> 1. Improve the ruby code (and how? :) Should I avoid using hashes?
>> 2. Write an extension to perform these operations in C. BTW is there =
a
>> way to access directly NArray data (without copy) from a C extension?
>> 3. Use a wrapper like Ruby-lapack
>> (
>> https://rubyforge.org/projects/ruby-lapack/
>> ).
>>=20
>> What do you think?=20
>>=20
>> Thanks for your help !



Best regards,
						       	                	=
- Olivier


In This Thread