PEST中应用SVD-Assist和Parallel PEST

如果估算的参数有100个,那么每进行一轮迭代,PEST要运行100次,如果参数有成千上万个的话,实际计算时间过程非常长甚至不可行。PEST中SVD-Assist和Parallel PEST就是为了减少运行计算时间而设置的。SVD-Assist选项识别方向模型中的不敏感参数、然后移除这些参数,Parallel PEST可以对模型进行并行计算从而加速模型计算过程。

SVD-Assist得以实现,其内部原理主要包含3个基本步骤:

  • 1)为了计算矩阵,PEST首先为每个参数运行一次MODFLOW。计算的结果用来创建超参数,这些超参数来源于初始指定的参数集。
  • 2)运行SVDAPREP来创建新的PEST控制文件。MODFLOW|Parameter Estimation——SVD-Assist Options下的选项是有关SVDAPREP的选项。其中最重要的选项是Specify # super param(默认是No),当这个选项为No时,写入到SVD文件中的信息将用来指定超参数的数量。
  • 3)使用SVDAPREP写入的控制文件来运行PEST程序。这样,PEST在每次迭代时,模型运行次数会显著减小。PEST运行结束时,PAR文件包含的时超参数的值,而基础参数的值包含在BPA文件中,因此,导入最优参数值时,应选择 .bpa文件

当再次运行模型时,可以通过指定Jacobian和SVD文件,而让上述第1)步骤省去,具体方式为MODFLOW | Parameter Estimation——SVD-Assist Options——Specify Jacobian file——找到上次模型运行产生的文件路径+文件名(.jco文件),填入到Jacobian file path,找到文件路径+文件名(.svd文件),填入到SVD file path


你可能感兴趣的:(PEST中应用SVD-Assist和Parallel PEST)