Feflowlib: How to get started with the FEFLOW converter.#

This example shows how a FEFLOW model can be converted and simulated in OGS.

  1. Necessary imports.

import ogstools as ot
from ogstools import FeflowModel
from ogstools.examples import (
    feflow_model_2D_CT_t_560,
    feflow_model_2D_HT,
    feflow_model_box_Robin,
)
  1. Convert the models.

temp_dir = ot.definitions.temp_dir("feflow_test_simulation", "examples")
feflow_model_H = FeflowModel(
    feflow_model_box_Robin, temp_dir / "3D_H_model.vtu"
)
feflow_model_HC = FeflowModel(
    feflow_model_2D_CT_t_560, temp_dir / "2D_HC_model.vtu"
)
feflow_model_HT = FeflowModel(feflow_model_2D_HT, temp_dir / "2D_HT_model.vtu")

2. Define simulation times. Simulate the steady state diffusion process in OGS for the H-model.

feflow_model_H.setup_prj(steady=True)
feflow_model_HC.setup_prj(
    end_time=int(4.8384e07),
    time_stepping=list(
        zip([10] * 8, [8.64 * 10**i for i in range(8)], strict=False)
    ),
)
feflow_model_HT.setup_prj(end_time=1e11, time_stepping=[(1, 1e10)])
  1. Run the simulations.

feflow_model_H.run()
feflow_model_HC.run()
feflow_model_HT.run()
 ogs  -o . /tmp/ogstools_root/examples/feflow_test_simulatione561c7aa165440959f241e57d03f3979/3D_H_model.prj
['ogs', '-o', '.', '/tmp/ogstools_root/examples/feflow_test_simulatione561c7aa165440959f241e57d03f3979/3D_H_model.prj']
 ogs  -o . /tmp/ogstools_root/examples/feflow_test_simulatione561c7aa165440959f241e57d03f3979/2D_HC_model.prj
['ogs', '-o', '.', '/tmp/ogstools_root/examples/feflow_test_simulatione561c7aa165440959f241e57d03f3979/2D_HC_model.prj']
 ogs  -o . /tmp/ogstools_root/examples/feflow_test_simulatione561c7aa165440959f241e57d03f3979/2D_HT_model.prj
['ogs', '-o', '.', '/tmp/ogstools_root/examples/feflow_test_simulatione561c7aa165440959f241e57d03f3979/2D_HT_model.prj']

Total running time of the script: (0 minutes 4.972 seconds)