论文标题
迈向3D CSEM建模的开源景观
Towards an open-source landscape for 3D CSEM modelling
论文作者
论文摘要
三维控制源电磁(CSEM)调查的大规模建模曾经仅对大公司和研究财团可行。在过去的几年中,情况发生了变化,如今,每个人都可以选择各种不同的开源代码。使用Python生态系统中的四个不同代码,我们在浅水陆战队环境中对日益复杂的模型进行了模拟。我们首先使用半分层模型验证了使用半分析溶液的计算字段。然后,我们通过比较从每个代码获得的结果来验证更复杂的块模型的响应。最后,我们将现实世界模型的响应与行业的结果进行了比较。一方面,这些验证表明,开源代码能够为具有挑战性的大型模型计算可比的CSEM响应。另一方面,它们显示了许多一般和方法依赖性问题,需要面对获得准确的结果。我们的比较包括使用结构化直线和OCTREE网格以及非结构化的四面体网格的有限元和有限体积代码。可以独立于所选方法和所选的网格类型获得准确的响应。根据迭代或直接求解器的选择,运行时和内存需求差异很大。但是,我们发现与运行实际计算相比,在设计网格和设置模拟上花费了更多的时间。具有挑战性的任务是,无论选择的代码如何,都可以适当地离散模型。我们提供三个模型,每个模型都具有相应的离散化和四个代码的响应,可用于验证新代码和现有代码。
Large-scale modelling of three-dimensional controlled-source electromagnetic (CSEM) surveys used to be feasible only for large companies and research consortia. This has changed over the last few years, and today there exists a selection of different open-source codes available to everyone. Using four different codes in the Python ecosystem, we perform simulations for increasingly complex models in a shallow marine setting. We first verify the computed fields with semi-analytical solutions for a simple layered model. Then we validate the responses of a more complex block model by comparing results obtained from each code. Finally we compare the responses of a real world model with results from the industry. On the one hand, these validations show that the open-source codes are able to compute comparable CSEM responses for challenging, large-scale models. On the other hand, they show many general and method-dependent problems that need to be faced for obtaining accurate results. Our comparison includes finite-element and finite-volume codes using structured rectilinear and octree meshes as well as unstructured tetrahedral meshes. Accurate responses can be obtained independently of the chosen method and the chosen mesh type. The runtime and memory requirements vary greatly based on the choice of iterative or direct solvers. However, we have found that much more time was spent on designing the mesh and setting up the simulations than running the actual computation. The challenging task is, irrespective of the chosen code, to appropriately discretize the model. We provide three models, each with their corresponding discretization and responses of four codes, which can be used for validation of new and existing codes.