# individual pieces of definition into the user interface. # sim = IS( tloop = tl ) sim.configure_traits() else: # Tseval for a discretized line domain # tseval = DOTSEval( fets_eval = fets_eval ) # Discretization # line_domain = MGridDomain( lengths = (3.,1.,0.), shape = (8,8,0), n_nodal_dofs = 2, n_e_nodes_geo = (1,1,0), n_e_nodes_dof = (1,1,0), node_map_geo = [0,1,3,2], node_map_dof = [0,1,3,2] ) # Put the tseval (time-stepper) into the spatial context of the # discretization and specify the response tracers to evaluate there. # right_dof = 2 ts = TS( tse = tseval, sdomain = line_domain, bcond_list = [ BCDof(var='u', dof = i, value = 0.) for i in line_domain.get_left_dofs()[:,0] ] + [ BCDof(var='u', dof = i, value = 0.) for i in line_domain.get_left_dofs()[:,1] ] + [ BCDof(var='u', dof = i, value = 20 ) for i in line_domain.get_right_dofs()[:,1] ], rtrace_list = [ RTraceGraph(name = 'Fi,right over u_right (iteration)' , var_y = 'F_int', idx_y = right_dof,
from lib.mats.mats2D.mats2D_elastic.mats2D_elastic import MATS2DElastic from lib.fets.fets2D.fets2D4q9u import FETS2D4Q9U fets_eval = FETS2D4Q9U(mats_eval = MATS2DElastic()) # Tseval for a discretized line domain # tseval = SpDOTSEval( fets_eval = fets_eval ) # Discretization # domain = MGridDomain( lengths = (1.,1.,0.), shape = (1,1,0), n_nodal_dofs = 2, # NOTE: the following properties must be defined and # must correspond to the used element formulation n_e_nodes_geo = (1,1,0), n_e_nodes_dof = (2,2,0), node_map_geo = [0,1,3,2], node_map_dof = [0,2,8,6,1,5,7,3,4] ) # for i, elem in enumerate( domain.elements ): # print 'elem.id_number', elem.id_number # print 'elem.nodes_geo', elem.nodes_geo # print 'elem.get_X_mtx()', elem.get_X_mtx() # Put the tseval (time-stepper) into the spatial context of the # discretization and specify the response tracers to evaluate there. #
from math import e # fets_eval = FETS2D9Q(mats_eval = MA2DSca larDamage(strain_norm = Euclidean())) fets_eval = FETS3D8H(mats_eval = MATS3DElastic()) # Tseval for a discretized line domain # tseval = DOTSEval( fets_eval = fets_eval ) # Discretization # domain = MGridDomain( lengths = (1., 1., 1.), shape = (10, 10, 10), # NOTE: the following properties must be defined and # must correspond to the used element formulation n_nodal_dofs = 3, n_e_nodes_geo = (1, 1, 1), n_e_nodes_dof = (1, 1, 1), node_map_geo = [0, 1, 2, 3, 4, 5, 6, 7], node_map_dof = [0, 1, 2, 3, 4, 5, 6, 7] ) domain.changed = True # for i, elem in enumerate( domain.elements ): # print 'elem.id_number', elem.id_number # print 'elem.nodes_geo', elem.nodes_geo # print 'elem.get_X_mtx()', elem.get_X_mtx() # Put the tseval (time-stepper) into the spatial context of the