# imports import os import numpy as np # local imports from mesh import CartesianMesh from properties import MaterialProperties, FluidProperties, InjectionProperties, SimulationProperties from fracture import Fracture from controller import Controller from fracture_initialization import Geometry, InitializationParameters from utility import setup_logging_to_console # setting up the verbosity level of the log at console setup_logging_to_console(verbosity_level='info') # creating mesh Mesh = CartesianMesh(6, 6, 41, 41) # solid properties nu = 0.4 # Poisson's ratio youngs_mod = 3.3e10 # Young's modulus Eprime = youngs_mod / (1 - nu**2) # plain strain modulus K_Ic = 1e7 # fracture toughness Solid = MaterialProperties(Mesh, Eprime, K_Ic, minimum_width=1e-9) # injection parameters Q0 = 0.001 # injection rate Injection = InjectionProperties(Q0, Mesh)
Created by Carlo Peruzzo on Fri Apr 17 23:16:25 2020. Copyright (c) "ECOLE POLYTECHNIQUE FEDERALE DE LAUSANNE, Switzerland, Geo-Energy Laboratory", 2016-2020. All rights reserved. See the LICENSE.TXT file for more details. """ # local imports from mesh import CartesianMesh from properties import MaterialProperties, FluidProperties, InjectionProperties, SimulationProperties from fracture import Fracture from controller import Controller from fracture_initialization import Geometry, InitializationParameters from utility import setup_logging_to_console # setting up the verbosity level of the log at console setup_logging_to_console(verbosity_level='debug') # creating mesh Mesh = CartesianMesh(0.25, 0.15, 69, 39) # solid properties nu = 0.4 # Poisson's ratio youngs_mod = 3.3e10 # Young's modulus Eprime = youngs_mod / (1 - nu**2) # plain strain modulus K_Ic1 = 5.6e6 # fracture toughness def My_KIc_func(x, y): """ The function providing the fracture toughness""" if x < 0.2: return K_Ic1