Find and classify the first four stationary points for t ≥ 0 of the function: f(t) = sin(c1*t)*e^(0.1*t), where c1 = 1
2 views (last 30 days)
Show older comments
Liam Nolan
on 19 Mar 2015
Edited: Roger Stafford
on 19 Mar 2015
Hi all,
I need to calculate the first four stationary points of the function:
f(t) = sin(c1*t)*e^(0.1*t)
for when t ≥ 0
and c1 = 1 (calculated from previous data)
I know I could differentiate and find the roots but is there another way of finding the four points a quicker/easier/another way on matlab?
IF i do have to differentiate and find roots what's the best way about doing this on matlab?
any help would be much appreciated.
Thanks
0 Comments
Accepted Answer
Roger Stafford
on 19 Mar 2015
Edited: Roger Stafford
on 19 Mar 2015
t = mod(-atan2(c1,0.1),pi)/c1+(0:3)*pi/c1; % <-- Corrected
2 Comments
Roger Stafford
on 19 Mar 2015
Edited: Roger Stafford
on 19 Mar 2015
Well, I confess I did what you stated you didn't want done. I differentiated f(t) and got:
f'(t) = c1*cos(c1*t)*exp(0.1*t)+0.1*sin(c1*t)*exp(0.1*t)
This will be zero whenever c1*cos(c1*t)+0.1*sin(c1*t) is equal to zero. This is a standard problem in trigonometry. You divide by the square root of the sum of the squares of the two coefficients and you have the equality
sin(theta)*cos(c1*t)+cos(theta)*sin(c1*t) = sin(theta+c1*t) = 0
where
theta = atan2(c1,0.1)
Since the sine function is zero for all integer multiples of pi, you get
theta+c1*t = atan2(c1,0.1)+c1*t = n*pi
or
t = -atan2(c1,0.1)/c1-n*pi/c1
You stated that you wanted the first four roots of t for t>=0, so I used the 'mod' function to accomplish that:
t = mod(-atan2(c1,.1),pi)/c1+n*pi/c1;
where n = (0:3).
More Answers (0)
See Also
Categories
Find more on Sequence and Numeric Feature Data Workflows 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!