Solve indefinite integral with unknown lower limit

The equation I am trying to solve is attached below,
and my Matlab code is
int(11.6 + 2*10^-3*T - 0.67*10^5*(1/T^2),T,T,1650)
The output I am getting is just "-inf", but it should not be like this, could anyone help me figure this out? Thanks

4 Comments

Why don't you just solve it by hand, not a hard integral.
syms T t
I=int(11.6 + 2*10^-3*T - 0.67*10^5*(1/T^2),T,t,1650);
It is a lot easier to do it by hand, but it's for an assignment so I have to use Matlab unfortunately
And thank you for your help, the output I got is shown below
piecewise(0 < t, 1445605/66 - 67000/t - (t*(t + 11600))/1000, t <= 0, -Inf)
Do I only consider the part where 0 < t? But if I want to sub this answer somewhere else, how should I specify this?
If T were 0 then 1/T^2 would be 1/0 which is a problem. If T were negative then T would have to cross 0 on its way to the positive bound, and you would have infinity again.
So... you should consider putting an assumption of positive on your variable. That would allow int() to generate a plain formula.
@Walter Roberson Thank you for your suggestion. I tried to put a statement before it
t = abs(t);
And now the final answer is
1445605/66 - 67000/abs(t) - abs(t)^2/1000 - (58*abs(t))/5
I assume we can just treat this abs(t) as normal t? Or do you have any better suggestions? Thanks.

Sign in to comment.

More Answers (1)

Looks like there are 2 solutions.
format long g
T0=1650;
rhs=1e-3*T0^2 + 11.66*T0 + 0.67e5/T0;
p=[1e-3,11.66, -rhs, 0.67e5];
r=roots(p);
T=r(r>0 & imag(r)==0)'
T = 1×2
1.0e+00 * 1650 3.05009448006937

Categories

Find more on Mathematics in Help Center and File Exchange

Products

Release

R2021b

Community Treasure Hunt

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

Start Hunting!