Need to write a code for this method....

3 views (last 30 days)
Hi Everyone,
I need to write a code for the following method.I want to compute 10log s(t1)/s(1)
t1=1,2,3...,N (second)while the data (both s and t)are in one minute.
s t
0.05 4.7
0.1 4.8
0.2 4.9
0.1 4.10
0.3 4.11
Could you please guide me?
Ara on 6 Mar 2013
No, S is column data which all represent as an integer value. If SI=10logs(t1)/s(1) I want to plot (t,SI)in second. s(t1)denote value s in the first minute. It means s computed in minutes and I want to compute SI while should be calculate in second.So the question is how can I write a code to compute SI. As I assume t1=4.7 is first minutes that S(1)=0.05 for first point then SI=10log(s/0.05)in dB. T just used for plot so I guess the value of s should change and convert to second, right?

Sign in to comment.

Accepted Answer

ChristianW on 6 Mar 2013
Since your explanations feel like a puzzle, whats wrong with this?
N = 60; % or N = length(t)
t1 = 1:N; %[sec] timesteps
s = rand(1,N+100); %[any unit] generate random data s
SI = 10*log10(s(t1)/s(1)); %[dB]
plot(t1,SI); xlabel('time [sec]'); ylabel('SI [dB]')
Ara on 11 Mar 2013
Edited: Ara on 11 Mar 2013
Thanks, Christian. Your code works properly for the other types of my data. Sorry for the late response.

Sign in to comment.

More Answers (0)


Find more on Graphics Object Programming in Help Center and File Exchange


Community Treasure Hunt

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

Start Hunting!