We should probably vectorize the ifelse function.

> On Jun 6, 2014, at 10:51 PM, David Einstein <[email protected]> wrote:
> 
> sqrt(x.^2 .+ y.^2) .< radius 
> is a vector of booleans
> 
> ?:
> expects a boolean
> 
> you probably want something like:
> 
> inside_disc(x,y,radius) = map(good -> good ? 1 : 0, sqrt(x.^2+y.^2).<radius)
> 
> 
> 
>> On Friday, June 6, 2014 10:18:36 PM UTC-4, Zahirul ALAM wrote:
>> When I pass two arrays the function returns:
>> 
>> type: non-boolean (BitArray{1}) used in boolean context while loading 
>> In[10], in expression starting on line 1
>> 
>> I have modified the function to address the element wise operation as 
>> follows:
>> 
>> inside_disc(x,y,radius) = sqrt(x.^2 .+ y.^2) .< radius ? 1 : 0
>> 
>> seems to me that the error is being thrown by .< operation. What am I 
>> missing?
>> 
>> 
>>> On Friday, 6 June 2014 20:34:22 UTC-4, Miguel Bazdresch wrote:
>>> I'm not sure I understand the question. Do you mean something like this?
>>> 
>>> inside_disc(x,y,radius) = sqrt(x^2+y^2)<radius ? 1 : 0
>>> 
>>> -- mb
>>> 
>>> 
>>>> On Fri, Jun 6, 2014 at 8:28 PM, Zahirul ALAM <[email protected]> wrote:
>>>> I guess one can do a for loop. But how do I vectorize the code?
>>>> 
>>>> 
>>>>> On Friday, 6 June 2014 20:27:46 UTC-4, Zahirul ALAM wrote:
>>>>> How would one implement a step function like behaviour in julia? In 
>>>>> mathematica one can write the following to create a circle with value of 
>>>>> 1 within the radius and 0 outside
>>>>> 
>>>>> UnitBox[Sqrt[X^2 + Y^2]*0.5/radius];
>>>>> 
>>>>> X and Y are the coordinates. 
>>> 

Reply via email to