Le mercredi 30 septembre 2015 à 08:55 +0200, Michele Zaffalon a écrit :
> Just curious: linspace returns a Range object, but logspace returns a
> vector because there is no much use case for a LogRange object?
> 
> @feza: I have also seen the deprecation warning going away after a
> couple of calls, but I am not sure why. If you restart Julia, the
> deprecations reappear.
Deprecation warnings are only printed once for each call place. The
idea is that once you're aware of it, there's no point in nagging you.

Anyway, that warning is most probably not related to linspace at all,
but rather to the array concatenation syntax resulting in an effect
equivalent to collect(). If you show us a piece of code that prints the
warning, we can give you more details.


Regards

> On Wed, Sep 30, 2015 at 5:40 AM, feza <mohamad...@gmail.com> wrote:
> > Strange it *was* giving me an error saying deprecated and that I
> > should use collect, but now it's fine.
> > 
> > 
> > On Tuesday, September 29, 2015 at 10:28:12 PM UTC-4, Sheehan Olver
> > wrote:
> > > fez, I'm pretty sure the code works fine without the collect:
> > > when exp is called on linspace it converts it to a vector. 
> > > Though the returned t will be linspace object.
> > > 
> > > On Wednesday, September 30, 2015 at 12:10:55 PM UTC+10, feza
> > > wrote:
> > > > Here's the code I was using where I needed to use collect (I've
> > > > been playing around with Julia, so any suggestions on this code
> > > > for perf is welcome ;) ) . In general linspace (or the :
> > > > notation)  is also used commonly to lay  a grid in space for
> > > > solving a PDE for some other use cases. 
> > > > 
> > > > function gp(n)
> > > >         n = convert(Int,n)
> > > >         t0 = 0
> > > >         tf = 5
> > > >         t = collect( linspace(t0, tf, n+1) )
> > > >         sigma = exp( -(t - t[1]) )
> > > > 
> > > >         c = [sigma; sigma[(end-1):-1:2]]
> > > >         lambda = fft(c)
> > > >         eta = sqrt(lambda./(2*n))
> > > > 
> > > >         Z = randn(2*n) + im*randn(2*n)
> > > >         x = real( fft( Z.*eta ) )
> > > >         return (x, t)
> > > > end
> > > > 
> > > > 
> > > > On Tuesday, September 29, 2015 at 8:59:52 PM UTC-4, Stefan
> > > > Karpinski wrote:
> > > > > I'm curious why you need a vector rather than an object. Do
> > > > > you mutate it after creating it? Having linspace return an
> > > > > object instead of a vector was a bit of a unclear judgement
> > > > >  call so getting feedback would be good.
> > > > > 
> > > > > On Tuesday, September 29, 2015, Patrick Kofod Mogensen <
> > > > > patrick....@gmail.com> wrote:
> > > > > > No:
> > > > > > 
> > > > > > julia> logspace(0,3,5)
> > > > > > 5-element Array{Float64,1}:
> > > > > >     1.0    
> > > > > >     5.62341
> > > > > >    31.6228 
> > > > > >   177.828  
> > > > > >  1000.0   
> > > > > > 
> > > > > > On Tuesday, September 29, 2015 at 8:50:47 PM UTC-4, Luke
> > > > > > Stagner wrote:
> > > > > > > Thats interesting. Does logspace also return a range?
> > > > > > > 
> > > > > > > On Tuesday, September 29, 2015 at 5:43:28 PM UTC-7, Chris
> > > > > > > wrote:
> > > > > > > > In 0.4 the linspace function returns a range object,
> > > > > > > > and you need to use collect() to expand it. I'm also
> > > > > > > > interested in nicer syntax.

Reply via email to