[pylithapp] # This is not a self-contained simulation configuration file. This # file only specifies the general parameters common to the simulations # in this directory. # ---------------------------------------------------------------------- # journal # ---------------------------------------------------------------------- # Turn on some journals to show progress. [pylithapp.journal.info] timedependent = 1 explicit = 1 petsc = 1 meshiocubit = 1 explicitelasticity = 1 quadrature2d = 1 fiatlagrange = 1 [pylithapp.journal.debug] pylithapp = 1 problem = 1 explicit = 1 # ---------------------------------------------------------------------- # mesh_generator # ---------------------------------------------------------------------- [pylithapp.mesh_generator] # uncomment to get very verbose mesh information #debug = 1 # Change the default mesh reader to the CUBIT reader. reader = pylith.meshio.MeshIOCubit [pylithapp.mesh_generator.reader] # Set filename of mesh to read and dimension for coordinate system. filename =rightmodel.exo coordsys.space_dim = 2 # ---------------------------------------------------------------------- # problem # ---------------------------------------------------------------------- [pylithapp.timedependent] # Set the spatial dimension of the problem. dimension = 2 # Change to an explicit time stepping formulation with no elastic prestep. formulation = pylith.problems.Explicit elastic_prestep = False # Nondimensionalize problem using wave propagation parameters. normalizer = spatialdata.units.NondimElasticDynamic normalizer.shear_wave_speed = 1.0*km/s # Set bc to an array with 3 boundary conditions: 'x_neg', 'x_pos', and # 'all_nofault'. bc = [x_pos,x_neg,y_neg] # Set interfaces to an array with 1 fault: 'fault'. interfaces = [fault] # Set materials to an array with 1 material 'elastic'. materials = [elastic] [pylithapp.timedependent.formulation.time_step] # Set the total time of the simulation and the time step. total_time = 300.0*s dt = 0.05*s # ---------------------------------------------------------------------- # materials # ---------------------------------------------------------------------- [pylithapp.timedependent.materials] # Use elastic plane strain bulk constitutive model. elastic = pylith.materials.ElasticPlaneStrain [pylithapp.timedependent.materials.elastic] # Label for material label = Elastic material # Nodeset id from CUBIT id = 1 # Spatial database with physical properties for elastic material db_properties.label = Elastic properties db_properties.iohandler.filename = matprops.spatialdb # Set the basis functions and quadrature: # 2-D Lagrange cell with 2nd order quadrature quadrature.cell = pylith.feassemble.FIATLagrange quadrature.cell.dimension = 2 quadrature.cell.quad_order = 2 # ---------------------------------------------------------------------- # boundary conditions # ---------------------------------------------------------------------- [pylithapp.timedependent.bc] # Change the default Dirichlet BC to the AbsorbingDampers BC x_pos = pylith.bc.AbsorbingDampers x_neg = pylith.bc.AbsorbingDampers y_neg = pylith.bc.AbsorbingDampers [pylithapp.timedependent.bc.x_pos] # Absorbing BC on +x face of bar # Name of nodeset in CUBIT label = face_xpos # Specify label and filename for spatial database with physical properties db.label = Absorbing BC +x db.iohandler.filename = matprops.spatialdb # Specify the basis functions and quadrature: # 1-D Lagrange cell in 2-D space with 2nd order quadrature quadrature.cell = pylith.feassemble.FIATLagrange quadrature.cell.dimension = 1 quadrature.cell.quad_order = 2 [pylithapp.timedependent.bc.x_neg] # Absorbing BC on -x face of bar # Name of nodeset in CUBIT label = face_xneg # Specify label and filename for spatial database with physical properties db.label = Absorbing BC -x db.iohandler.filename = matprops.spatialdb # Specify the basis functions and quadrature: # 1-D Lagrange cell in 2-D space with 2nd order quadrature quadrature.cell = pylith.feassemble.FIATLagrange quadrature.cell.dimension = 1 quadrature.cell.quad_order = 2 [pylithapp.timedependent.bc.y_neg] # Absorbing BC on -x face of bar # Name of nodeset in CUBIT label = face_yneg # Specify label and filename for spatial database with physical properties db.label = Absorbing BC -y db.iohandler.filename = matprops.spatialdb # Specify the basis functions and quadrature: # 1-D Lagrange cell in 2-D space with 2nd order quadrature quadrature.cell = pylith.feassemble.FIATLagrange quadrature.cell.dimension = 1 quadrature.cell.quad_order = 2 #[pylithapp.timedependent.bc.all_nofault] ## Dirichlet boundary condition on all vertices except fault vertices # ## Pin x degree of freedom #bc_dof = [0] # ## Name of nodeset from CUBIT. #label = vertices_nofault # ---------------------------------------------------------------------- # faults # ---------------------------------------------------------------------- [pylithapp.timedependent.interfaces.fault] # NOTE: It is possible to assign an ID number to a fault (e.g., # 'id = 10'). Care must be taken when doing this, however, because the # assigned ID will become the material ID for the cohesive element. # This ID must not conflict with any of the material ID numbers for # volume elements. The default ID for a fault is 100. If you have a # fault in your mesh you must: # 1. If you create your own fault ID, make sure it does not conflict # with any of you material ID's. # 2. If you use the default fault ID, make sure that none of your # material ID's are equal to 100. # Material id id = 100 # Name of nodeset from CUBIT label = fault # Specify the basis functions and quadrature: # 1-D Lagrange cell in 2-D space with 2nd order quadrature quadrature.cell = pylith.feassemble.FIATLagrange quadrature.cell.dimension = 1 quadrature.cell.quad_order = 2 # ---------------------------------------------------------------------- # PETSc # ---------------------------------------------------------------------- [pylithapp.petsc] # PETSc summary -- useful for performance information. log_summary = true # ---------------------------------------------------------------------- # output # ---------------------------------------------------------------------- # We set two output manager parameters for each type of output. # skip - Number of time steps to skip between output # writer.time_format - Format of time stamp (decimal point is removed) # We will set the output filename in the problem specific .cfg file. [pylithapp.problem.formulation.output.output] vertex_data_fields = [displacement,velocity] skip = 1 writer.time_format = %05.2f [pylithapp.timedependent.materials.elastic.output] skip = 19 writer.time_format = %05.2f # Averate state variables over quadrature points. cell_filter = pylith.meshio.CellFilterAvgMesh