Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Thread Subject:
symbolic integration

Subject: symbolic integration

From: Serena

Date: 17 Jan, 2009 17:07:14

Message: 1 of 4

When I run the following code:

D=30;L=152;m=39600;w1=1.5;ro=1.225;damp=0.01;xo=10;
lamda=1.875;sigma=0.7341;

a=lamda/L
syms Uo x
U=x^0.4
Fix=cosh(a*x)-cos(a*x)-sigma*(sinh(a*x)-sin(a*x))
        
A=U*Fix^2
AA=int(A,0,L)


This message refers to the following lines:

Warning: Explicit integral could not be found.
> In sym.int at 58
  In velocita_critica at 19
 
AA =
 
int(x^(2/5)*(cosh(15/1216*x)-cos(15/1216*x)-7341/10000*sinh(15/1216*x)+7341/10000*sin(15/1216*x))^2,x = 0 .. 152)


What exactly does this mean and is there any way around the problem?

Thanks,
Serena

Subject: symbolic integration

From: Roger Stafford

Date: 17 Jan, 2009 18:26:01

Message: 2 of 4

Serena <darkbluee@gmail.com> wrote in message <9842254.1232212065386.JavaMail.jakarta@nitrogen.mathforum.org>...
> When I run the following code:
>
> D=30;L=152;m=39600;w1=1.5;ro=1.225;damp=0.01;xo=10;
> lamda=1.875;sigma=0.7341;
>
> a=lamda/L
> syms Uo x
> U=x^0.4
> Fix=cosh(a*x)-cos(a*x)-sigma*(sinh(a*x)-sin(a*x))
>
> A=U*Fix^2
> AA=int(A,0,L)
>
>
> This message refers to the following lines:
>
> Warning: Explicit integral could not be found.
> > In sym.int at 58
> In velocita_critica at 19
>
> AA =
>
> int(x^(2/5)*(cosh(15/1216*x)-cos(15/1216*x)-7341/10000*sinh(15/1216*x)+7341/10000*sin(15/1216*x))^2,x = 0 .. 152)
>
>
> What exactly does this mean and is there any way around the problem?
>
> Thanks,
> Serena

  It's the 0.4 exponent on x that is the barrier to solving this integral. If it had been an integer, matlab would likely have succeeded. Mine found it with x^4 for example.

  You shouldn't blame matlab for failing on this. It is very likely that no explicit solution is known to the entire mathematical world. I learned very early in my mathematical career that it is very easy to invent functions for which no explicit integral is known. A friend of mine and I in college wasted about a week one time trying to find the integral of f(x) = x^x without any success whatever.

  To solve your integral you will undoubtedly have to resort to numerical methods.

Roger Stafford

Subject: symbolic integration

From: Brian Borchers

Date: 17 Jan, 2009 18:37:12

Message: 3 of 4

The symbolic computation toolbox might be able to do a better job with
U=x^(4/10) instead of U=x^.4. The difference is that .4 is a floating
point number which isn't even exactly equal to 4/10, while 4/10 is an
exact rational number.

Subject: symbolic integration

From: Roger Stafford

Date: 17 Jan, 2009 18:52:02

Message: 4 of 4

Brian Borchers <borchers.brian@gmail.com> wrote in message <c4eedf06-347b-4160-b6e1-f85e29118374@p2g2000prf.googlegroups.com>...
> The symbolic computation toolbox might be able to do a better job with
> U=x^(4/10) instead of U=x^.4. The difference is that .4 is a floating
> point number which isn't even exactly equal to 4/10, while 4/10 is an
> exact rational number.

  It's true that a binary floating point number cannot achieve .4 exactly, but I'm not sure the symbolic toolbox part of matlab has the same trouble. In any case mine could not solve the problem with 2/5 replacing 0.4 . I think the problem is more fundamental than that.

Roger Stafford

Tags for this Thread

No tags are associated with this thread.

What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.

Contact us