Hi Islam, 

Thanks again for your inputs, 

the first method worked, as  you mentioned it was missing dot to do element 
wise multiplication. 

Here is what it looks like 
pow_fs = (((2^(adc_bits-1))-1))^2 / 2
fb= fb.*hanning(length(fb))

When I tried the weltch function, it actually has two sets of data as shown 
below, how do you split data to plot and manipulate the array? 
Here is the command I used,      periodogram(fb*; onesided=eltype(fb)<:Real*, 
*nfft=nextfastfft(length(fb)*, *fs=150*, *window=hanning*)*ΒΆ* 
<http://dspjl.readthedocs.io/en/latest/periodograms.html#periodogram> 

data collected 


 Thanks 
Yared 

On Friday, July 22, 2016 at 10:33:36 AM UTC-5, Islam Badreldin wrote:

> Hi Yared,
>
> Please see below,,
>
> On Thursday, July 21, 2016 at 11:19:44 AM UTC-4, Yared Melese wrote:
>
>> Hi Islam, 
>>
>> Thanks for your input 
>>
>>  I was able to find all windowing functions; however, there is nothing 
>> about PSD ( power spectral density). In python and matlab, there is 
>> function pwelch which does both windowing and FFT and wondering if there is 
>> the same function in Julia.
>>
>
> Did you take a look at `welch_pgram` function?
> http://dspjl.readthedocs.io/en/latest/periodograms.html#welch_pgram 
> <http://www.google.com/url?q=http%3A%2F%2Fdspjl.readthedocs.io%2Fen%2Flatest%2Fperiodograms.html%23welch_pgram&sa=D&sntz=1&usg=AFQjCNE7sBPIu91hvriuZufu3K4EOv1Mkg>
>  
>
>
>> Here is simple trial I had but it is complaining about type mismatch
>>
>> fb= fb[:]*hamming(length(fb))
>> fb = fft(fb)         # take FFT of signal 
>>
>> LoadError: MethodError: `*` has no method matching 
>> *(::Array{Complex{Float64},1}, ::Array{Float64,1})
>> Closest candidates are:
>>   *(::Any, ::Any, !Matched::Any, !Matched::Any...)
>>   
>> *{T<:Union{Complex{Float32},Complex{Float64},Float32,Float64},S}(!Matched::Union{DenseArray{T<:Union{Complex{Float32},Complex{Float64},Float32,Float64},2},SubArray{T<:Union{Complex{Float32},Complex{Float64},Float32,Float64},2,A<:DenseArray{T,N},I<:Tuple{Vararg{Union{Colon,Int64,Range{Int64}}}},LD}},
>>  
>> ::Union{DenseArray{S,1},SubArray{S,1,A<:DenseArray{T,N},I<:Tuple{Vararg{Union{Colon,Int64,Range{Int64}}}},LD}})
>>   
>> *{TA,TB}(!Matched::Base.LinAlg.AbstractTriangular{TA,S<:AbstractArray{T,2}}, 
>> ::Union{DenseArray{TB,1},DenseArray{TB,2},SubArray{TB,1,A<:DenseArray{T,N},I<:Tuple{Vararg{Union{Colon,Int64,Range{Int64}}}},LD},SubArray{TB,2,A<:DenseArray{T,N},I<:Tuple{Vararg{Union{Colon,Int64,Range{Int64}}}},LD}})
>>   ...
>> in include_string at loading.jl:282
>> in include_string at C:\Users\melese\.julia\v0.4\CodeTools\src\eval.jl:32
>> in anonymous at C:\Users\melese\.julia\v0.4\Atom\src\eval.jl:84
>> in withpath at C:\Users\melese\.julia\v0.4\Requires\src\require.jl:37
>> in withpath at C:\Users\melese\.julia\v0.4\Atom\src\eval.jl:53
>> [inlined code] from C:\Users\melese\.julia\v0.4\Atom\src\eval.jl:83
>> in anonymous at task.jl:58
>> while loading D:\userdata\melese\Desktop\fft.jl, in expression starting 
>> on line 23
>>
>>
> This particular error seems to be occurring at the `fb= 
> fb[:]*hamming(length(fb))` line. It looks like you are multiplying an 
> _vector_ of complex doubles with a _vector_ of doubles, which is not 
> mathematically defined because of the dimension mismatch, since both 
> vectors are of dimension Nx1. Instead, my guess is that you meant 
> element-wise multiplication using `.*`. But again, I think the 
> `welch_pgram` function should meet your needs.
>
>   -Islam
>  
>
>>
>> On Wednesday, July 20, 2016 at 9:15:40 AM UTC-5, Yared Melese wrote:
>>
>>> Hello 
>>>
>>> Would you please let me know the package available to do windowing, FFT 
>>> and PSD? 
>>>
>>> Currently, I have bin file that I have processed in Julia and need to 
>>> window it and take preferably PSD but FFT work as well
>>>
>>> Thanks 
>>> Yared
>>>
>>>  
>>>
>>>

Reply via email to