# 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,
Exemple #2
0
    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.
        #
Exemple #3
0
    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