Finding the length of square function

Hello, I'm using the square function. I want to find the length of it based on my limits. How can I do that since the square root is discontinues. Regards, Dimo

4 Comments

Be far more clear about what you are trying to do. You want to find the length of a function? Are you asking to compute the arc length? Next, of what function? Be explicit, else we will spend time showing you how to solve the wrong problem.
I am sorry. I'm using this code for square function.
t=linspace(0,20,100);
X=3*square(2*pi*t/10)
plot(X,t)
I want to check how long the plot for that function is. I'm checking different patterns and seeing their distance.
Did you try to google how to calculate the arc length of a function in Matlab?
Yes, I did, and found the length of a sine function that I did before. I can use the same principle for finding a square function, but I think that it is going to get too messy. This is why I was wondering if anyone had any easier way of doing it. By messy I mean that the square functions are actually two functions that are activating by different values, and I believe I can solve it with a loop, by calculating each section of the wave, but I was wondering if there isn't a simpler way.
Regards,
Dimo

Sign in to comment.

 Accepted Answer

In general you can approximate the arc length by measuring the distances between the points and adding them.
t=linspace(0,20,100);
X=3*square(2*pi*t/10);
sum(hypot(diff(t),diff(X)))
Just a side note: I found this answer by John D'Errico as the 5th result when I googled 'arc length Matlab' detailing several methods to calculate the arc length. I suggest you take a look there as well.

More Answers (1)

t2=t(find(diff(X)>0));
t1=t(find(diff(X)<0));
long_time=t2(2)-t1(2)

Categories

Asked:

on 7 Dec 2020

Answered:

Rik
on 8 Dec 2020

Community Treasure Hunt

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

Start Hunting!