Example #1
0
def init_ogs_project(rad, task_root=None):

    # model setup
    model = OGS(task_root="pump_3d_steady", task_id="model", output_dir="out")
    model.pcs.add_block(  # set the process type
        PCS_TYPE="GROUNDWATER_FLOW",
        NUM_TYPE="NEW",
        TIM_TYPE="STEADY")

    # generate a radial 3D mesh and conductivity field
    model.msh.generate("radial",
                       dim=3,
                       angles=angles,
                       rad=rad,
                       z_arr=-np.arange(11))

    return model
Example #2
0
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='Thies_quad_2d_root',
    task_id='Thies_quad_2d',
    output_dir='out',
)
model.msh.read_file('Thies_quad_2d.msh')
model.gli.read_file('Thies_quad_2d.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='GROUNDWATER_FLOW',
    NUM_TYPE='NEW',
    PRIMARY_VARIABLE='HEAD',
)
model.rfd.read_file('Thies_quad_2d.rfd')
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='GROUNDWATER_FLOW',
    PRIMARY_VARIABLE='HEAD',
    GEO_TYPE=['POLYLINE', 'left_bc'],
    DIS_TYPE=['CONSTANT', 20.0],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='GROUNDWATER_FLOW',
    PRIMARY_VARIABLE='HEAD',
    GEO_TYPE=['POLYLINE', 'right_bc'],
    DIS_TYPE=['CONSTANT', 20.0],
)
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='creep3d_root',
    task_id='creep3d',
    output_dir='out',
)
model.msh.read_file('creep3d.msh')
model.gli.read_file('creep3d.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='HEAT_TRANSPORT',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='DEFORMATION',
)
model.rfd.read_file('creep3d.rfd')
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='HEAT_TRANSPORT',
    PRIMARY_VARIABLE='TEMPERATURE1',
    GEO_TYPE=['SURFACE', 'TOP'],
    DIS_TYPE=['CONSTANT', 27.0],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='HEAT_TRANSPORT',
    PRIMARY_VARIABLE='TEMPERATURE1',
Example #4
0
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='2units2faults_FCT_root',
    task_id='2units2faults_FCT',
    output_dir='out',
)
model.msh.read_file('2units2faults_FCT.msh')
model.gli.read_file('2units2faults_FCT.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='LIQUID_FLOW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='HEAT_TRANSPORT',
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='HEAT_TRANSPORT',
    PRIMARY_VARIABLE='TEMPERATURE1',
    GEO_TYPE=['SURFACE', 'South'],
    DIS_TYPE=[
        ['LINEAR', 4],
        [0, 40],
        [1, 80],
        [2, 80],
        [3, 40],
    ],
)
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='elder_root',
    task_id='elder',
    output_dir='out',
)
model.msh.read_file('elder.msh')
model.gli.read_file('elder.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='LIQUID_FLOW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='MASS_TRANSPORT',
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='LIQUID_FLOW',
    PRIMARY_VARIABLE='PRESSURE1',
    GEO_TYPE=['POLYLINE', 'LEFT_TOP_CORNER'],
    DIS_TYPE=['CONSTANT', 0],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='MASS_TRANSPORT',
    PRIMARY_VARIABLE='CONCENTRATION1',
    GEO_TYPE=['SURFACE', 'TOP_HALF_RIGHT'],
    DIS_TYPE=['CONSTANT', 1.0],
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='3D_HGW_root',
    task_id='3D_HGW',
    output_dir='out',
)
model.msh.read_file('3D_HGW.msh')
model.gli.read_file('3D_HGW.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='GROUNDWATER_FLOW',
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='GROUNDWATER_FLOW',
    PRIMARY_VARIABLE='HEAD',
    GEO_TYPE=['SURFACE', 'L_SF'],
    DIS_TYPE=['CONSTANT', 10],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='GROUNDWATER_FLOW',
    PRIMARY_VARIABLE='HEAD',
    GEO_TYPE=['SURFACE', 'R_SF'],
    DIS_TYPE=['CONSTANT', 9],
)
model.ic.add_block(
    main_key='INITIAL_CONDITION',
    PCS_TYPE='GROUNDWATER_FLOW',
Example #7
0
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='1d_pri_root',
    task_id='1d_pri',
    output_dir='out',
)
model.msh.read_file('1d_pri.msh')
model.gli.read_file('1d_pri.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='GROUNDWATER_FLOW',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='FLUID_MOMENTUM',
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='GROUNDWATER_FLOW',
    PRIMARY_VARIABLE='HEAD',
    GEO_TYPE=['POINT', 'POINT2'],
    DIS_TYPE=['CONSTANT', 1],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='GROUNDWATER_FLOW',
    PRIMARY_VARIABLE='HEAD',
    GEO_TYPE=['POINT', 'POINT0'],
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='BGRa_root',
    task_id='BGRa',
    output_dir='out',
)
model.msh.read_file('BGRa.msh')
model.gli.read_file('BGRa.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='HEAT_TRANSPORT',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='DEFORMATION',
    ELEMENT_MATRIX_OUTPUT=0,
)
model.rfd.read_file('BGRa.rfd')
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='HEAT_TRANSPORT',
    PRIMARY_VARIABLE='TEMPERATURE1',
    GEO_TYPE=['POLYLINE', 'TOP'],
    DIS_TYPE=['CONSTANT', 27.0],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='HEAT_TRANSPORT',
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='HBr_10C_Diff_new_root',
    task_id='HBr_10C_Diff_new',
    output_dir='out',
)
model.msh.read_file('HBr_10C_Diff_new.msh')
model.gli.read_file('HBr_10C_Diff_new.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='GROUNDWATER_FLOW',
    NUM_TYPE='NEW',
    BOUNDARY_CONDITION_OUTPUT=[],
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='MASS_TRANSPORT',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='HEAT_TRANSPORT',
    TEMPERATURE_UNIT='KELVIN',
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='GROUNDWATER_FLOW',
    PRIMARY_VARIABLE='HEAD',
    GEO_TYPE=['POINT', 'POINT0'],
Example #10
0
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='h_gas_ele_root',
    task_id='h_gas_ele',
    output_dir='out',
)
model.msh.read_file('h_gas_ele.msh')
model.gli.read_file('h_gas_ele.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='AIR_FLOW',
    NUM_TYPE='NEW',
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='AIR_FLOW',
    PRIMARY_VARIABLE='PRESSURE1',
    GEO_TYPE=['POINT', 'POINT0'],
    DIS_TYPE=['CONSTANT', 95500.0],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='AIR_FLOW',
    PRIMARY_VARIABLE='PRESSURE1',
    GEO_TYPE=['POINT', 'POINT2'],
    DIS_TYPE=['CONSTANT', 95500.0],
)
model.ic.add_block(
    main_key='INITIAL_CONDITION',
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='CO2phase_gen_E300_root',
    task_id='CO2phase_gen_E300',
    output_dir='out',
)
model.msh.read_file('CO2phase_gen_E300.msh')
model.gli.read_file('CO2phase_gen_E300.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='MULTI_PHASE_FLOW',
    NUM_TYPE='NEW',
    USE_PRECALCULATED_FILES=[],
    SAVE_ECLIPSE_DATA_FILES=[],
    SIMULATOR='ECLIPSE',
    SIMULATOR_PATH='C:\ecl\2012.1\bin\pc_x86_64\e300.exe',
    SIMULATOR_MODEL_PATH='./eclipse/ECL.DATA',
    ELEMENT_MATRIX_OUTPUT=0,
    ST_RHS=1,
    BOUNDARY_CONDITION_OUTPUT=[],
    DISSOLVED_CO2_PCS_NAME='C(4)',
    DISSOLVED_CO2_INGAS_PCS_NAME='C(4)_gas',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='MASS_TRANSPORT',
    NUM_TYPE='NEW',
    BOUNDARY_CONDITION_OUTPUT=[],
)
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='m_e_transiso_2D_root',
    task_id='m_e_transiso_2D',
    output_dir='out',
)
model.msh.read_file('m_e_transiso_2D.msh')
model.gli.read_file('m_e_transiso_2D.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='DEFORMATION',
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='DEFORMATION',
    PRIMARY_VARIABLE='DISPLACEMENT_X1',
    GEO_TYPE=['POLYLINE', 'LEFT'],
    DIS_TYPE=['CONSTANT', 0.0],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='DEFORMATION',
    PRIMARY_VARIABLE='DISPLACEMENT_Y1',
    GEO_TYPE=['POINT', 'POINT0'],
    DIS_TYPE=['CONSTANT', 0.0],
)
model.st.add_block(
    main_key='SOURCE_TERM',
    PCS_TYPE='DEFORMATION',
Example #13
0
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='h2_Liako_root',
    task_id='h2_Liako',
    output_dir='out',
)
model.msh.read_file('h2_Liako.msh')
model.gli.read_file('h2_Liako.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='MULTI_PHASE_FLOW',
    NUM_TYPE='NEW',
    ELEMENT_MATRIX_OUTPUT=0,
)
model.rfd.read_file('h2_Liako.rfd')
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='MULTI_PHASE_FLOW',
    PRIMARY_VARIABLE='PRESSURE2',
    GEO_TYPE=['POINT', 'POINT1'],
    DIS_TYPE=['CONSTANT', 101325],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='MULTI_PHASE_FLOW',
    PRIMARY_VARIABLE='PRESSURE2',
    GEO_TYPE=['POINT', 'POINT0'],
    DIS_TYPE=['CONSTANT', 101325],
)
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='m1_3Dload_root',
    task_id='m1_3Dload',
    output_dir='out',
)
model.msh.read_file('m1_3Dload.msh')
model.gli.read_file('m1_3Dload.gli')
model.ddc.read_file('m1_3Dload.ddc')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='DEFORMATION',
    NUM_TYPE='NEW',
)
model.rfd.read_file('m1_3Dload.rfd')
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='DEFORMATION',
    PRIMARY_VARIABLE='DISPLACEMENT_X1',
    GEO_TYPE=['SURFACE', 'SURFACE1'],
    DIS_TYPE=[
        ['LINEAR', 4],
        [0, 0.0],
        [1, 0.0],
        [2, 0.0],
        [3, 0.0],
    ],
    TIM_TYPE=['CURVE', 1],
)
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='Ogata-Banks_root',
    task_id='Ogata-Banks',
    output_dir='out',
)
model.msh.read_file('Ogata-Banks.msh')
model.gli.read_file('Ogata-Banks.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='LIQUID_FLOW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='HEAT_TRANSPORT',
    TEMPERATURE_UNIT='KELVIN',
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='LIQUID_FLOW',
    PRIMARY_VARIABLE='PRESSURE1',
    GEO_TYPE=['POINT', 'POINT1'],
    DIS_TYPE=['CONSTANT', 100000],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='HEAT_TRANSPORT',
    PRIMARY_VARIABLE='TEMPERATURE1',
    GEO_TYPE=['POINT', 'POINT0'],
Example #16
0
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='3D_UniAxiLoad_root',
    task_id='3D_UniAxiLoad',
    output_dir='out',
)
model.msh.read_file('3D_UniAxiLoad.msh')
model.gli.read_file('3D_UniAxiLoad.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='DEFORMATION',
    BOUNDARY_CONDITION_OUTPUT=[],
)
model.rfd.read_file('3D_UniAxiLoad.rfd')
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='DEFORMATION',
    PRIMARY_VARIABLE='DISPLACEMENT_Z1',
    GEO_TYPE=['SURFACE', 'BOTTOM'],
    DIS_TYPE=['CONSTANT', 0],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='DEFORMATION',
    PRIMARY_VARIABLE='DISPLACEMENT_Z1',
    GEO_TYPE=['SURFACE', 'TOP'],
    DIS_TYPE=['CONSTANT', -5e-07],
    TIM_TYPE=['CURVE', 2],
)
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='govin_line_root',
    task_id='govin_line',
    output_dir='out',
)
model.msh.read_file('govin_line.msh')
model.gli.read_file('govin_line.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='OVERLAND_FLOW',
    NUM_TYPE='NEW',
)
model.ic.add_block(
    main_key='INITIAL_CONDITION',
    PCS_TYPE='OVERLAND_FLOW',
    PRIMARY_VARIABLE='HEAD',
    GEO_TYPE='DOMAIN',
    DIS_TYPE=['CONSTANT', 1e-06],
)
model.st.add_block(
    main_key='SOURCE_TERM',
    PCS_TYPE='OVERLAND_FLOW',
    PRIMARY_VARIABLE='HEAD',
    GEO_TYPE=['POLYLINE', 'CHANNEL'],
    DIS_TYPE=['CONSTANT_NEUMANN', 0.004],
)
model.st.add_block(
    main_key='SOURCE_TERM',
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='heat_transfer_root',
    task_id='heat_transfer',
    output_dir='out',
)
model.msh.read_file('heat_transfer.msh')
model.gli.read_file('heat_transfer.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='TNEQ',
    TEMPERATURE_UNIT='KELVIN',
    ELEMENT_MATRIX_OUTPUT=0,
)
model.rfd.read_file('heat_transfer.rfd')
model.ic.add_block(
    main_key='INITIAL_CONDITION',
    PCS_TYPE='TNEQ',
    PRIMARY_VARIABLE='PRESSURE1',
    GEO_TYPE='DOMAIN',
    DIS_TYPE=['CONSTANT', 100000.0],
)
model.ic.add_block(
    main_key='INITIAL_CONDITION',
    PCS_TYPE='TNEQ',
    PRIMARY_VARIABLE='TEMPERATURE1',
    GEO_TYPE='DOMAIN',
    DIS_TYPE=['CONSTANT', 773.15],
)
Example #19
0
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='h_frac_line2D_root',
    task_id='h_frac_line2D',
    output_dir='out',
)
model.msh.read_file('h_frac_line2D.msh')
model.gli.read_file('h_frac_line2D.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='LIQUID_FLOW',
    NUM_TYPE='NEW',
    ELEMENT_MATRIX_OUTPUT=0,
)
model.rfd.read_file('h_frac_line2D.rfd')
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='LIQUID_FLOW',
    PRIMARY_VARIABLE='PRESSURE1',
    GEO_TYPE=['POLYLINE', 'BOTTOM'],
    DIS_TYPE=[
        ['LINEAR', 2],
        [1, 10000.0],
        [2, 100000.0],
    ],
)
model.ic.add_block(
    main_key='INITIAL_CONDITION',
    PCS_TYPE='LIQUID_FLOW',
Example #20
0
 name=str(overall_count) + '_border_' + str(border) + '_stor_' + str(storage) + '_rech_' + str(rech_abv)
 dim_no = 2
 parent_dir = CWD + '/setup'
 # name of directory (entire path) of one single ogs run
 dire = parent_dir + '/' + name
 # make folders
 if not os.path.exists(parent_dir):
     os.mkdir(parent_dir)
 if not os.path.exists(dire):
     os.mkdir(dire)
 pcs_type_flow = 'GROUNDWATER_FLOW'
 var_name_flow = 'HEAD'
 t_id = 'transect'
 # ------------------------generate ogs base class----------------------------- #
 ogs = OGS(task_root=dire+"/",
           task_id=t_id,
           output_dir=dire+"/"+"steady"+"/")
 # ------------------------  MSH -------------------------------- #
 # generate a rectangular mesh in x-z-plane
 # first part of mesh, configuration based on an element size of 1x1 m, because variable "length" is used for number of nodes
 ogs.msh.generate("rectangular", dim=2,
                  mesh_origin=(0., 0.),
                  element_no=(border, n_cellsz),
                  element_size=(1, 1))
 ogs.msh.MATERIAL_ID = 0
 # second part of mesh
 second_mesh = MSH()
 second_mesh.generate("rectangular", dim=2,
                  mesh_origin=(border, 0.),
                  element_no=(length - border, n_cellsz),
                  element_size=(1, 1))
Example #21
0
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='m_mises_root',
    task_id='m_mises',
    output_dir='out',
)
model.msh.read_file('m_mises.msh')
model.gli.read_file('m_mises.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='DEFORMATION',
)
model.rfd.read_file('m_mises.rfd')
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='DEFORMATION',
    PRIMARY_VARIABLE='DISPLACEMENT_X1',
    GEO_TYPE=['POLYLINE', 'LEFT'],
    DIS_TYPE=['CONSTANT', 0.0],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='DEFORMATION',
    PRIMARY_VARIABLE='DISPLACEMENT_Y1',
    GEO_TYPE=['POLYLINE', 'BOTTOM'],
    DIS_TYPE=['CONSTANT', 0.0],
)
model.st.add_block(
    main_key='SOURCE_TERM',
Example #22
0
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='1D_TPF_resS_trans_root',
    task_id='1D_TPF_resS_trans',
    output_dir='out',
)
model.msh.read_file('1D_TPF_resS_trans.msh')
model.gli.read_file('1D_TPF_resS_trans.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='PS_GLOBAL',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='MASS_TRANSPORT',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='MASS_TRANSPORT',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='MASS_TRANSPORT',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
 output = "output"
 dim_no = 2
 parent_dir = CWD + '/setup'
 # name of directory (entire path) of one single ogs run
 dire = parent_dir + '/' + name
 # make folders
 if not os.path.exists(parent_dir):
     os.mkdir(parent_dir)
 if not os.path.exists(dire):
     os.mkdir(dire)
 pcs_type_flow = 'GROUNDWATER_FLOW'
 var_name_flow = 'HEAD'
 t_id = 'transect'
 # ------------------------generate ogs base class----------------------------- #
 ogs = OGS(task_root=dire + "/",
           task_id=t_id,
           output_dir=dire + "/" + output + "/")
 # ------------------------  MSH -------------------------------- #
 # generate a rectangular mesh in x-y-plane
 ogs.msh.generate("rectangular",
                  dim=2,
                  mesh_origin=(0., 0.),
                  element_no=(n_cellsx, n_cellsz),
                  element_size=(1, 1))
 # rotate mesh to obtain a cross section in x-z-plane
 ogs.msh.rotate(angle=np.pi / 2.0,
                rotation_axis=(1., 0., 0.))
 # round nodes
 ogs.msh.NODES[:, 1] = np.around(ogs.msh.NODES[:, 1], 0)
 ogs.msh.NODES[:, 0] = np.around(ogs.msh.NODES[:, 0], 4)
 ogs.msh.NODES[:, 2] = np.around(ogs.msh.NODES[:, 2], 4)
Example #24
0
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='hm_foot_tet_root',
    task_id='hm_foot_tet',
    output_dir='out',
)
model.msh.read_file('hm_foot_tet.msh')
model.gli.read_file('hm_foot_tet.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE=[
        ['LIQUID_FLOW'],
        ['DEFORMATION'],
    ],
    MEMORY_TYPE=0,
    ST_RHS=2,
)
model.rfd.read_file('hm_foot_tet.rfd')
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='DEFORMATION_FLOW',
    PRIMARY_VARIABLE='PRESSURE1',
    GEO_TYPE=['SURFACE', 'TOP'],
    DIS_TYPE=['CONSTANT', 0.0],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='DEFORMATION_FLOW',
    PRIMARY_VARIABLE='DISPLACEMENT_X1',
Example #25
0
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='1d_isofrac_AS_root',
    task_id='1d_isofrac_AS',
    output_dir='out',
)
model.msh.read_file('1d_isofrac_AS.msh')
model.gli.read_file('1d_isofrac_AS.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='GROUNDWATER_FLOW',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='MASS_TRANSPORT',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='MASS_TRANSPORT',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='MASS_TRANSPORT',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
Example #26
0
                    # Use the path to the recharge.txt as top comment in the .rfd-file
                    rfd_top_com = recharge_path
                    # Name the folder
                    name = (str(overall_count) + "_b_" +
                            str("{:0>4d}".format(thickness)) + "_Lc_" +
                            str(c_length) + "_stor_" + str(storage) +
                            "_rech_" + str(rech_abv))
                    # Name of directory (entire path) of one single ogs run
                    dire = parent_dir + "/" + name
                    # Make folders
                    if not os.path.exists(dire):
                        os.mkdir(dire)
                    # -------------------- generate ogs base class
                    ogs = OGS(
                        task_root=dire + "/",
                        task_id=t_id,
                        output_dir=dire + "/" + "steady" + "/",
                    )
                    # -------------------- MSH
                    # Generate a rectangular mesh in x-z-plane. The first and the
                    # second part of the mesh will be generated independently.
                    # Afterwards, the two parts will be combined to one single
                    # mesh. First part on the left side. This generates a mesh in
                    # x-y-plane which will be rotated in a few steps.

                    if thickness >= 100:
                        # The size of cells in x and z direction (any float).
                        s_cellsx = 10
                        s_cellsz = 10
                        # Number of cells is different for each model:
                        n_cellsz = int(thickness / s_cellsx)
    test_cnt += 1
    relative_root, task_id = os.path.split(name)
    root = os.path.join(rootdir, relative_root)
    if use_old_dir:
        tmp_root = relative_root
    else:
        tmp_root = ("test_{:03}".format(test_cnt) + "_model")

    tmp_log = (str(test_cnt) + " " + tmp_root + " - load: " +
               os.path.join(root, task_id))
    log_str.append(tmp_log)

    if print_progress:
        print(tmp_log)

    model = OGS(task_root=os.path.join(out_dir, tmp_root), output_dir="out")
    load_success = False
    try:
        model.load_model(
            verbose=False,
            task_root=root,
            task_id=task_id,
            encoding="ISO-8859-15",  # lots of windows files (non utf8)
            use_task_id=True,  # use the given task_id for some reference
        )
    except ValueError as valerr:
        print("FAIL..." + str(valerr))
        log_str.append("FAIL..." + str(valerr))
    else:
        load_success = True
        print("OK...loading successful")
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='TDiff-Wall_root',
    task_id='TDiff-Wall',
    output_dir='out',
)
model.msh.read_file('TDiff-Wall.msh')
model.gli.read_file('TDiff-Wall.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='HEAT_TRANSPORT',
    TEMPERATURE_UNIT='KELVIN',
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='HEAT_TRANSPORT',
    PRIMARY_VARIABLE='TEMPERATURE1',
    GEO_TYPE=['POINT', 'POINT1'],
    DIS_TYPE=['CONSTANT', 25.0],
)
model.ic.add_block(
    main_key='INITIAL_CONDITION',
    PCS_TYPE='HEAT_TRANSPORT',
    PRIMARY_VARIABLE='TEMPERATURE1',
    GEO_TYPE='DOMAIN',
    DIS_TYPE=['CONSTANT', 25],
)
model.st.add_block(
    main_key='SOURCE_TERM',
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='tm1_3Dorigin_root',
    task_id='tm1_3Dorigin',
    output_dir='out',
)
model.msh.read_file('tm1_3Dorigin.msh')
model.gli.read_file('tm1_3Dorigin.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='HEAT_TRANSPORT',
    NUM_TYPE='NEW',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='DEFORMATION',
    NUM_TYPE='NEW',
)
model.rfd.read_file('tm1_3Dorigin.rfd')
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='DEFORMATION',
    PRIMARY_VARIABLE='DISPLACEMENT_X1',
    GEO_TYPE=['SURFACE', 'SURFACE1'],
    DIS_TYPE=[
        ['LINEAR', 4],
        [0, 0.0],
        [1, 0.0],
        [2, 0.0],
Example #30
0
# -*- coding: utf-8 -*-
from ogs5py import OGS

model = OGS(
    task_root='uc_creep01_root',
    task_id='uc_creep01',
    output_dir='out',
)
model.msh.read_file('uc_creep01.msh')
model.gli.read_file('uc_creep01.gli')
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='HEAT_TRANSPORT',
)
model.pcs.add_block(
    main_key='PROCESS',
    PCS_TYPE='DEFORMATION',
)
model.rfd.read_file('uc_creep01.rfd')
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='DEFORMATION',
    PRIMARY_VARIABLE='DISPLACEMENT_Y1',
    GEO_TYPE=['POLYLINE', 'PLY_2'],
    DIS_TYPE=['CONSTANT', 0],
)
model.bc.add_block(
    main_key='BOUNDARY_CONDITION',
    PCS_TYPE='DEFORMATION',
    PRIMARY_VARIABLE='DISPLACEMENT_X1',
    GEO_TYPE=['POLYLINE', 'PLY_0'],