getting a vector from an integral

  • Follow


Hello all,
This is my question:
let "y" and "d" two vectors with five elements each one.
I need the area of their product so I have used the sentence:
>>area=trapz(y.*d)

Now I would like to get "y", which is supposed to be unknow, having
vector "d" and number "area" as data.
Is it possible to do with matlab?

My idea was like:(let "s" the symbol for "integral" and
"a=0","b=10",the extremes of the definite integral):

aSb(y.*d)=area

now, using the fourier transform propriety:

fft(aSb(y.*d))=(1/jw)*fft(y.*d)

I should have:

(1/jw)*fft(y.*d)=fft(area); ==> fft(y.*d)= jw*fft(area)

And finally:

y=ifft(jw*fft(area))./d

it doesn't works, but i don't know why.(actually I have some ideas
but I don't know how to go on)
Any suggest would be very appreciated.
thank you in advance.
0
Reply eureka_ (27) 9/15/2006 7:34:50 AM

In article <ef40d42.-1@webcrossing.raydaftYaTP>, andrea
<eureka_@libero.it> wrote:

> Hello all,
> This is my question:
> let "y" and "d" two vectors with five elements each one.
> I need the area of their product so I have used the sentence:
> >>area=trapz(y.*d)
> 
> Now I would like to get "y", which is supposed to be unknow, having
> vector "d" and number "area" as data.
> Is it possible to do with matlab?
> 
> My idea was like:(let "s" the symbol for "integral" and
> "a=0","b=10",the extremes of the definite integral):
> 
> aSb(y.*d)=area
> 
> now, using the fourier transform propriety:
> 
> fft(aSb(y.*d))=(1/jw)*fft(y.*d)
> 
> I should have:
> 
> (1/jw)*fft(y.*d)=fft(area); ==> fft(y.*d)= jw*fft(area)
> 
> And finally:
> 
> y=ifft(jw*fft(area))./d
> 
> it doesn't works, but i don't know why.(actually I have some ideas
> but I don't know how to go on)
> Any suggest would be very appreciated.
> thank you in advance.
----------------------
  I'm afraid you have set yourself up to do an impossible task.  Knowing
only the value of the integral (area) and the vector d, there is no way to
uniquely determine y.  Infinitely many y vectors would give the same
integral.  What you have is five unknowns and only one linear equation,
which is not enough to solve the problem.  You need to place four more
conditions on y to achieve that.

Roger Stafford
0
Reply ellieandrogerxyzzy (4732) 9/15/2006 8:37:22 AM


"Roger Stafford" <ellieandrogerxyzzy@mindspring.com.invalid> wrote in 
message 
news:ellieandrogerxyzzy-1509060137220001@dialup-4.232.228.54.dial1.losangeles1.level3.net...
> In article <ef40d42.-1@webcrossing.raydaftYaTP>, andrea
> <eureka_@libero.it> wrote:
>
>> Hello all,
>> This is my question:
>> let "y" and "d" two vectors with five elements each one.
>> I need the area of their product so I have used the sentence:
>> >>area=trapz(y.*d)
>>
>> Now I would like to get "y", which is supposed to be unknow, having
>> vector "d" and number "area" as data.
>> Is it possible to do with matlab?
>>
>> My idea was like:(let "s" the symbol for "integral" and
>> "a=0","b=10",the extremes of the definite integral):
>>
>> aSb(y.*d)=area
>>
>> now, using the fourier transform propriety:
>>
>> fft(aSb(y.*d))=(1/jw)*fft(y.*d)
>>
>> I should have:
>>
>> (1/jw)*fft(y.*d)=fft(area); ==> fft(y.*d)= jw*fft(area)
>>
>> And finally:
>>
>> y=ifft(jw*fft(area))./d
>>
>> it doesn't works, but i don't know why.(actually I have some ideas
>> but I don't know how to go on)
>> Any suggest would be very appreciated.
>> thank you in advance.
> ----------------------
>  I'm afraid you have set yourself up to do an impossible task.  Knowing
> only the value of the integral (area) and the vector d, there is no way to
> uniquely determine y.  Infinitely many y vectors would give the same
> integral.  What you have is five unknowns and only one linear equation,
> which is not enough to solve the problem.  You need to place four more
> conditions on y to achieve that.
>
> Roger Stafford

 Or if you are willing to find only some best approximation based on certain

norms. For example, a least-squares approximation based on 2-norm.

  Regards,
by Cheng Cosine
   Sep/16/2k6 NC


0
Reply acosine1 (103) 9/16/2006 6:06:28 PM

Thank you Roger and Cheng.
I knew my problem was unsolvable, or better, it's an ill-posed
problem.
I'm now searching on deconvolution and blind deconvolution
topics.Maybe there's something helpful to my problem.
Does anyone know if there is a matlab program that makes a
least-squares approximation?
Or maybe a matab program for the Lucy-Richardson deconvolution?
Maybe someone has already written this kind of programs.
Thank you in advance for your kindness.
Andrea
>
>
>
> "Roger Stafford" <ellieandrogerxyzzy@mindspring.com.invalid>
wrote
> in
> message
>
news:ellieandrogerxyzzy-1509060137220001@dialup-4.232.228.54.dial1.l
> osangeles1.level3.net...
>> In article <ef40d42.-1@webcrossing.raydaftYaTP>, andrea
>> <eureka_@libero.it> wrote:
>>
>>> Hello all,
>>> This is my question:
>>> let "y" and "d" two vectors with five elements each one.
>>> I need the area of their product so I have used the
sentence:
>>> >>area=trapz(y.*d)
>>>
>>> Now I would like to get "y", which is supposed to be
unknow,
> having
>>> vector "d" and number "area" as data.
>>> Is it possible to do with matlab?
>>>
>>> My idea was like:(let "s" the symbol for "integral" and
>>> "a=0","b=10",the extremes of the definite integral):
>>>
>>> aSb(y.*d)=area
>>>
>>> now, using the fourier transform propriety:
>>>
>>> fft(aSb(y.*d))=(1/jw)*fft(y.*d)
>>>
>>> I should have:
>>>
>>> (1/jw)*fft(y.*d)=fft(area); ==> fft(y.*d)= jw*fft(area)
>>>
>>> And finally:
>>>
>>> y=ifft(jw*fft(area))./d
>>>
>>> it doesn't works, but i don't know why.(actually I have
some
> ideas
>>> but I don't know how to go on)
>>> Any suggest would be very appreciated.
>>> thank you in advance.
>> ----------------------
>> I'm afraid you have set yourself up to do an impossible task.
> Knowing
>> only the value of the integral (area) and the vector d, there
is
> no way to
>> uniquely determine y. Infinitely many y vectors would give the
> same
>> integral. What you have is five unknowns and only one linear
> equation,
>> which is not enough to solve the problem. You need to place
four
> more
>> conditions on y to achieve that.
>>
>> Roger Stafford
>
> Or if you are willing to find only some best approximation based
> on certain
>
> norms. For example, a least-squares approximation based on 2-norm.
>
> Regards,
> by Cheng Cosine
> Sep/16/2k6 NC
>
>
>
0
Reply eureka_ (27) 9/18/2006 8:59:28 AM

andrea schrieb:

> Does anyone know if there is a matlab program that makes a
> least-squares approximation?

well...i'm used to Matlab Optimization Toolbox, fully operational!

Otherwise i found code and papers of Per C. Hansen a source of delight!
http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=52&objectType=file

Ciao

neurino

0
Reply lelli.luca (8) 9/18/2006 9:05:38 AM

4 Replies
38 Views

(page loaded in 0.099 seconds)

Similiar Articles:













7/17/2012 2:43:56 PM


Reply: