用Armijo算法研究如下反问题
 D,   都是常数,可以简单化为1,源项 未知,已知C在终端时刻T=1处的观测值,求源项 
它的有限元变分形式为
  
其中Armijo算法的步骤为:
1.    选择初值 ,设k=0,选择正则化参数 ;
2.    解正问题
a) 
b) 
得到留数 
3.解其共轭问题
 
得到 
4算得方向导数算子: ,在时间有限元空间 取遍所有关于时间节点的基函数,得到方向导数向量 
5.计算梯度范数(gradient norm) 
6.解如下的敏感度问题sensitivity equation:
 将泛函第一项在 处作Taylor二阶展开,取
 则
 
 由于 关于 的导数为0,故有:

(ii)    若 ,到下一步;否则,重新设定 为步长控制因子;
(iii)    计算 若 则停止;否则设k=k+1,回到第一步。