# curve length integral

JL@MFG.DK shared this problem 5 years ago
New

for this function

1. f(x):= 211.4885 - 10.4801 ( exp(0.0329 x) + exp(-0.0329 x) )

the integral

1. integral[ sqrt( f'(x)^2 + 1 ), -90.25, 90.25 ]

should be cirka 444, but GeoGebra CAS returns -64251.24. The Length command gives the same, but the function inspector dialog computes the correct curve length!

This happens with version 5.0.205 unde Linux. What's wrong? 1

What do you get in the current version (5.0.236.0)? 1

moreover: In 5.0.231 (still Linux) the same calculation [using the "numerical" button in CAS] causes the program to freeze!!! 1

Hi, I have also problems with the 5.0.236.0-3D linux amd for this integral.

A workaround with :

1. a:=TrapezoidalSum[sqrt(f'(x)^2+1), -90.25, 90.25,100000]

a good approximation : 437.44 1

I tried the same calculations in the Windows version, and it worked just fine.

This could be a java problem? 1

Whoa:

If I define the function as

1. f(x):= 211.4885 - 10.4801 ( exp(0.032 x) + exp(-0.032 x) )

(exactly the same as the original, except I left out the digit "9" in both exponents) then the calculation returns a sensible result. Using "0.033" also works, but "0.0321" causes failure. So the number of digits, rather than the numerical size, of the constant, seems to decide whether or not GeoGebra will go haywire over this rather simple calculation...

I'm not very happy with this. My students will have a written examn shortly, and we have relied on GeoGebra in class for these kind of calculations. None of them use Linux that I'm aware of, so hopefully they'll not encounter something as weird as this bug! 1

Try using NIntegral[] instead of Integral[] - I don't think it's possible to get an exact answer for this calculation

1. NIntegral[ sqrt( f'(x)^2 + 1 ), -90.25, 90.25 ] 1

You're rigtht, NIntegral is pretty much what you'd need for this integral... If only GeoGebra would use it when "numeric calculation" is pressed (the second button in the the CAS view).

I guess it does, whenever it figures out that it cannot arrive at an exact solution. Which is somehow possible if the constant involved is 0.033, but impossible if it is 0.0329 (in which case the program hangs for about two minutes before it outputs "?")

I think this is a bug. Does this post count as a bug report or should I post it elsewhere?