필터 지우기
필터 지우기

Equal weight discretization. Please help!

조회 수: 2 (최근 30일)
Andrejus
Andrejus 2014년 10월 19일
편집: Andrejus 2014년 10월 21일
Hello,
I am a brand new matlab user thus facing quite some difficulties. I have a function:
S(w)=5/16*Hs^2.*w.^4.*wp^(-5).*exp(-5/4.*(w./wp).^(-4));
Some of you will recognize it as a Pierson_Moskowitz wave energy spectrum. The thing is that I want to use equal area discretization in order to generate time signal. I think that using while loop could help me out. I could loop over frequency (w) axis as long as the integral of S(w) function is less than prescribed value (certain fraction of the total area under the curve). Then the problem comes in. I do not know how to tell Matlab that in the next loop it should start using frequency value (w) from the point where in previous loop the integral of S(w) reached desired value. Also, I do not know how to get the the frequency values at which while loop was met.
Please help me out or give some hint how to solve it as I have been struggling with this for a few week already.
I appreciate any help!
  댓글 수: 2
Star Strider
Star Strider 2014년 10월 19일
Would taking the inverse Fourier transform (or series) work to transform it into the time domain?
Andrejus
Andrejus 2014년 10월 20일
I think that it would not work in a way I want it to work. The Fourier transform would give time domain signal for equal frequecy increment (or any prescribed). What I want to do is to divide the area beneath the function in a way that each segment would have equal weight (area) beneath the curve.
Do I introduce the problem clearly?
Thanks!

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by