Symbolic limit does not perform the calculation

I'm trying to calculate a symbolic limit but, somehow, the calculation is not being performed...it returns the same function. I haven't been able to figure out why that is happening. Can anyone spot the reason why?
clear all;
clc;
syms n lambda
assumeAlso(n,'integer')
assumeAlso(n>=3)
assumeAlso(lambda,'real')
assumeAlso(lambda<=1)
assumeAlso(lambda>=0)
r = sqrt(4-(1+lambda)^2)
a = (2-r)/(1+lambda)
b = 2/(r*(1-a^n))
l11 = 2*b*(a+a^(n-1))
liml11 = limit(l11,lambda,1,'left')

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 14 Apr. 2020
Bearbeitet: Walter Roberson am 14 Apr. 2020
[N,D] = numden(l11);
limit(D,lambda,1,'left')
simplify(expand(limit(N,lambda,1,'left')))
The denominator goes to 0 (but possibly at a different speed than the numerator). We are therefore risking an infinite or nan value.
The numerator goes to 32*2^n .
With n being an integer, 2^n is positive, so -32*2^n is negative, so the numerator is negative.
The limit is therefore positive/zero which would be +infinity
However, really you need to examine the rate at which both parts go to zero. There is a chance that the infinity should be negative. Maple thinks the limit should be signum(-4/0)*infinity which would get you -infinity .

1 Kommentar

I have some typos about negative in the above that I will correct when I get back to my desk.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Programming finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by