The copyable code you omitted:
res = Integrate[(1 - Exp[h *(s - T)])^4/(k2 - k1* Exp[(s - T)*(2 h)])^2, s,
Assumptions -> Element[k1 | k2, Reals] && k1 < 0 && k2 < 0]

You are surprised to see a term $\sqrt{k1}$ pop up in the answer, with k1 defined as being negative. You don't specify why you see that as a problem, so I have to guess. I presume that you feel it is a problem that you will end up with complex numbers in the integral of a function that itself is real, and indeed you get those if you fill in a few numbers:
res /. {k1 -> -1., k2 -> -2., t -> 0, s -> 1, h -> 1}
(* 2.01401 + 0.0673765 I *)
What you forget is that you have an indefinite integral whose result is determined up to a constant of integration. Indeed, if you check a different value of s
you get:
res /. {k1 -> -1., k2 -> -2., t -> 0, s -> 3, h -> 1}
(* 3.18752 + 0.0673765 I *)
Subtract both values to get the definite integral and you see the imaginary terms will cancel.
About negative logs: No problem, Mathematica can deal easily with those, just as it handles square roots of negative values:
Log[-2]
(* I π + Log[2] *)
reals
must be capitalized. $\endgroup$Integrate
makes no use ofAssumptions
. One might doRefine[Integrate[...], Assumptions->...]
. Or use(Full)Simplify
ifRefine
is not strong enough. $\endgroup$