On 10.08.2012 22:28, unruh wrote:
> On 2012-08-10, Axel Vogt <&
nor...@axelvogt.de> wrote:
>> On 10.08.2012 20:53, unruh wrote:
>>> I am having trouble with Maple not simplifying expressions with
>>> "assumes" on them.
>>>
>>> For example, the answer to one of my integrations was
>>> N12:=1/4 I (-epsilon~^2 -4IOmega~ +epsilon~^2)
>>>
...
>> It seems a bit that this may be the reason, since Maple
>> would simplify it to what you expect.
>
> OK. Here it is.
...
> 2 2
> N12 := 1/4 I (-epsilon~ - 4 I Omega~ + epsilon~ )
There are several issues (I do not use semicolon after writing
'proc' and always want to see, which variables are local or
global, t::real is a correct usage while you also use it on
differentiation).
Suggestion (and that differs from your result):
restart;
Gamma:=epsilon^2/2:
-epsilon/2*exp((I*Omega+Gamma)*(t-x)): phi1:=unapply(%, t,x);
epsilon/2*exp((I*Omega-Gamma)*(t+x)): phi2:=unapply(%, t,x);
diff (phi1(t,x),t): pi1:=unapply(%, t,x);
diff (phi2(t,x),t): pi2:=unapply(%, t,x);
exp((I*Omega+Gamma)*t): q1:=unapply(%, t);
exp((I*Omega-Gamma)*t): q2:=unapply(%, t);
-diff(q1(t),t): p1:=unapply(%, t) ;
-diff(q2(t),t): p2:=unapply(%, t);
tmp0:='I/2*
( 2*Int(conjugate(phi1(t,x))*pi2(t,x)-conjugate(pi1(t,x))*phi2(t,x),x=0..infinity)
+conjugate(q1(t))*p2(t)-conjugate(p1(t))*q2(t)
+epsilon*(conjugate(phi1(t,0))*q2(t)-conjugate(q1(t))*phi2(t,0)) )';
simplify(%) assuming (0 < epsilon, 0<Omega, t::real):
simplify(%) assuming (0 < epsilon, 0<Omega, t::real): # twice, yes
tmp1:=%;
tmp:=value(tmp1) assuming (0 < epsilon, 0<Omega, t::real);
2
tmp := 1/4 I epsilon + Omega