MATLAB: Symbolic limit does not perform the calculation

limitMATLABsymbolic

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')

Best Answer

[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 .