In[]:=
Thu 27 Apr 2023 16:21:21
Simple failing example
Simple failing example
In[]:=
ClearAll["Global`*"];h=(i+1)^-2;inti[expr_]:=Integrate[expr,{i,0,Infinity}];eqn=D[f[i,t],t]==hf[i,t]+hinti[hf[i,t]];sol=DSolveValue[{eqn,f[i,0]==1},f[i,t],{i,t}]f0=Function@@{{i,t},sol};Print["Solution: ",f0[i,t]];Print["Back-substitute: ",eqn0=eqn/.f->f0];Print["Solution correct: ",eqn0/.{i->2,t->3}](*False*)
Out[]=
2t
1+2i+
2
i
Solution:
2t
1+2i+
2
i
Back-substitute: +Erfi[
2
2t
1+2i+
2
i
1+2i+
2
i
2t
1+2i+
2
i
2
(1+i)
π
2
2
t
]2
2
(1+i)
t
Solution correct: False
Normalized version
Normalized version
In[]:=
ClearAll["Global`*"];$Assumptions={p>0};solve[h2_]:=z=h2i;h=h2z;eqn=D[et[i,t],t]==ahet[i,t]+bh*et[i,t]hi;initialValue=et[i,0]==1;sol=DSolveValue[{eqn,initialValue},et[i,t],{{i,0,∞},{t,0,∞}}];SF=StringForm;simple[expr_]:=HoldForm[ht]SimplifyPowerExpand@Log@expr;format[source_,target_]:=Print@SF["solution for h=``: ``",source,target];Block[{h=(i+1)^-(p+1)},format[h,simple@solve[h]]];Block[{h=Exp[-i]},format[h,simple@solve[h]]];Block[{h=Exp[-11i]},format[h,simple@solve[h]]];Block[{h=Exp[-]},format[h,simple@solve[h]]];Blockh=Exp[-],format[h,simple@solve[h]]];Block[{h=Exp[-i]Sin[i]},format[h,simple@solve[h]]];
∞
∫
0
∞
∫
0
1
ht
2
i
i
],format[h,simple@solve[h]];Block[h=Exp[-1/3
i
solution for h=: (a+b)(ht)
-1-p
(1+i)
solution for h=: (a+b)(ht)
-i
solution for h=: (a+b)(ht)
-11i
solution for h=: (a+b)(ht)
-
2
i
solution for h=: (a+b)(ht)
-
i
solution for h=: (a+b)(ht)
-
1/3
i
solution for h=Sin[i]: (a+b)(ht)
-i
Unnormalized version
Unnormalized version
In[]:=
ClearAll["Global`*"];$Assumptions={p>0};solve[h_]:=eqn=D[et[i,t],t]==ahet[i,t]+bh*et[i,t]hi;initialValue=et[i,0]==1;sol=DSolveValue[{eqn,initialValue},et[i,t],{{i,0,∞},{t,0,∞}}];SF=StringForm;simple[expr_]:=HoldForm[ht]SimplifyPowerExpand@Log@expr;format[source_,target_]:=Print@SF["solution for h=``: ``",source,target];Block[{h=(i+1)^-(p+1)},format[h,simple@solve[h]]];Block[{h=Exp[-i]},format[h,simple@solve[h]]];Block[{h=Exp[-11i]},format[h,simple@solve[h]]];Block[{h=Exp[-]},format[h,simple@solve[h]]];Blockh=Exp[-],format[h,simple@solve[h]]];Block[{h=Exp[-i]Sin[i]},format[h,simple@solve[h]]];
∞
∫
0
1
ht
2
i
i
],format[h,simple@solve[h]];Block[h=Exp[-1/3
i
solution for h=: a+(ht)
-1-p
(1+i)
b
p
solution for h=: (a+b)(ht)
-i
solution for h=: a+(ht)
-11i
b
11
solution for h=: a+(ht)
-
2
i
b
π
2
solution for h=: (a+2b)(ht)
-
i
solution for h=: (a+6b)(ht)
-
1/3
i
solution for h=Sin[i]: a+(ht)
-i
b
2