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


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容