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 comentarios

John D'Errico
John D'Errico el 7 de Dic. de 2020
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.
Dimo Iordanov
Dimo Iordanov el 8 de Dic. de 2020
Editada: Dimo Iordanov el 8 de Dic. de 2020
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.
Rik
Rik el 8 de Dic. de 2020
Did you try to google how to calculate the arc length of a function in Matlab?
Dimo Iordanov
Dimo Iordanov el 8 de Dic. de 2020
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

Iniciar sesión para comentar.

 Respuesta aceptada

Rik
Rik el 8 de Dic. de 2020
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.

Más respuestas (1)

Rafael Hernandez-Walls
Rafael Hernandez-Walls el 8 de Dic. de 2020
t2=t(find(diff(X)>0));
t1=t(find(diff(X)<0));
long_time=t2(2)-t1(2)

Categorías

Más información sobre Creating and Concatenating Matrices en Centro de ayuda y File Exchange.

Preguntada:

el 7 de Dic. de 2020

Respondida:

Rik
el 8 de Dic. de 2020

Community Treasure Hunt

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

Start Hunting!

Translated by