#BLUNT NOTCH--C3D8R--0 degree-viscosity 0.0004
#import modules
from abaqus import *
import testUtils
testUtils.setBackwardCompatibility()
from abaqusConstants import *
import part, material, section, assembly, step, interaction
import regionToolset, displayGroupMdbToolset as dgm, mesh, load, job
#create a model--myModel
Mdb()
modelName = 'BluntNotch'
myModel = mdb.Model(name=modelName)
#create a new viewport
myViewport = session.Viewport(name=modelName)
myViewport.makeCurrent()
myViewport.maximize()
#create the main part--blunt notch sheet--myPart1
#create a sketch for the main part--mySketch
mySketch = myModel.Sketch(name='glaresheet',sheetSize=400.0)
mySketch.sketchOptions.setValues(viewStyle=REGULAR)
mySketch.setPrimaryObject(option=STANDALONE)
mySketch.Spot(point=(2.4, 0.0))
mySketch.Spot(point=(0.0, 2.4))
mySketch.ArcByCenterEnds(center=(0.0, 0.0), point1=(2.4, 0.0), point2=(0.0, 2.4),
    direction=COUNTERCLOCKWISE)
mySketch.Spot(point=(150.0, 0.0))
mySketch.Spot(point=(150.0, 25.0))
mySketch.Spot(point=(0.0, 25.0))
mySketch.Line(point1=(2.4, 0.0), point2=(150.0, 0.0))
mySketch.Line(point1=(150.0, 0.0), point2=(150.0, 25.0))
mySketch.Line(point1=(150.0, 25.0), point2=(0.0, 25.0))
mySketch.Line(point1=(0.0, 25.0), point2=(0.0, 2.4))
#sketch completed; to create myPart1 (three dimensional deformable body)
myPart1 = myModel.Part(name='Part-1', dimensionality=THREE_D,
    type=DEFORMABLE_BODY)
myPart1.BaseSolidExtrude(sketch=mySketch, depth=0.703)
mySketch.unsetPrimaryObject()
myViewport.setValues(displayedObject=myPart1)
del myModel.sketches['glaresheet']
#create partition
#in-plane partition
myPart1.DatumPlaneByPrincipalPlane(principalPlane=YZPLANE, offset=10.0)
myPart1.DatumPlaneByPrincipalPlane(principalPlane=XZPLANE, offset=10.0)
pickedCells = myPart1.cells.findAt((5,5,0.15))
d1 = myPart1.datums
myPart1.PartitionCellByDatumPlane(datumPlane=d1[2], cells=pickedCells)
pickedCells = myPart1.cells.findAt(((5,5,0.15),),((80,5,0.15),))
d1 = myPart1.datums
myPart1.PartitionCellByDatumPlane(datumPlane=d1[3], cells=pickedCells)
#through thickness partition
myPart1.DatumPlaneByPrincipalPlane(principalPlane=XYPLANE, offset=0.3)
myPart1.DatumPlaneByPrincipalPlane(principalPlane=XYPLANE, offset=0.301)
myPart1.DatumPlaneByPrincipalPlane(principalPlane=XYPLANE, offset=0.426)
myPart1.DatumPlaneByPrincipalPlane(principalPlane=XYPLANE, offset=0.427)
myPart1.DatumPlaneByPrincipalPlane(principalPlane=XYPLANE, offset=0.552)
myPart1.DatumPlaneByPrincipalPlane(principalPlane=XYPLANE, offset=0.553)
#partition 1
pickedCells = myPart1.cells.findAt(((5,5,0.15),),((80,5,0.15),),((5,15,0.15),),((80,15,0.15),))
d1 = myPart1.datums
myPart1.PartitionCellByDatumPlane(datumPlane=d1[6], cells=pickedCells)
#partition 2
pickedCells = myPart1.cells.findAt(((5,5,0.3005),),((80,5,0.3005),),((5,15,0.3005),),((80,15,0.3005),))
d1 = myPart1.datums
myPart1.PartitionCellByDatumPlane(datumPlane=d1[7], cells=pickedCells)
#partition 3
pickedCells = myPart1.cells.findAt(((5,5,0.4),),((80,5,0.4),),((5,15,0.4),),((80,15,0.4),))
d1 = myPart1.datums
myPart1.PartitionCellByDatumPlane(datumPlane=d1[8], cells=pickedCells)
#partition 4
pickedCells = myPart1.cells.findAt(((5,5,0.4265),),((80,5,0.4265),),((5,15,0.4265),),((80,15,0.4265),))
d1 = myPart1.datums
myPart1.PartitionCellByDatumPlane(datumPlane=d1[9], cells=pickedCells)
#partition 5
pickedCells = myPart1.cells.findAt(((5,5,0.5),),((80,5,0.5),),((5,15,0.5),),((80,15,0.5),))
d1 = myPart1.datums
myPart1.PartitionCellByDatumPlane(datumPlane=d1[10], cells=pickedCells)
#partition 6
pickedCells = myPart1.cells.findAt(((5,5,0.5525),),((80,5,0.5525),),((5,15,0.5525),),((80,15,0.5525),))
d1 = myPart1.datums
myPart1.PartitionCellByDatumPlane(datumPlane=d1[11], cells=pickedCells)
#create part-2 single reference node for equation--myPart2
myPart2 = myModel.Part(name='Part-2', dimensionality=THREE_D,
    type=DEFORMABLE_BODY)
myPart2.ReferencePoint(point=(151.0, 0.0, 0.0))
#create material definitions
myModel.Material(name='aluminum')
myModel.materials['aluminum'].Elastic(table=((73800.0, 0.33), ))
myModel.materials['aluminum'].Plastic(table=((300.0, 0.0), (
    320.0, 0.00016), (340.0, 0.00047), (355.0, 0.00119), (375.0, 0.00449), (
    390.0, 0.01036), (410.0, 0.0213), (430.0, 0.03439), (450.0, 0.05133), (
    470.0, 0.08), (484.0, 0.1471)))
myModel.Material(name='composite')
myModel.materials['composite'].UserMaterial(unsymm=ON,
    mechanicalConstants=(55000.0, 9500.0, 5500.0, 3000.0, 0.33, 0.45, 2500.0,
    2000.0, 50.0, 150.0, 50.0, 1.0, 12.5, 0.0004))
myModel.materials['composite'].Depvar(n=10)
myModel.Material(name='cohesive')
myModel.materials['cohesive'].Elastic(table=((2000.0, 0.33), ))
#creating sections
myModel.HomogeneousSolidSection(name='aluminum_sec_ext',
    material='aluminum', thickness=0.3)
myModel.HomogeneousSolidSection(name='aluminum_sec_int',
    material='aluminum', thickness=0.15)
myModel.CohesiveSection(name='cohesive_sec_int', material='cohesive',
    response=TRACTION_SEPARATION, initialThicknessType=SPECIFY,
    initialThickness=1.0, outOfPlaneThickness=None)
myModel.CohesiveSection(name='cohesive_sec_middle', material='cohesive',
    response=TRACTION_SEPARATION, initialThicknessType=SPECIFY,
    initialThickness=1.0, outOfPlaneThickness=None)
myModel.CohesiveSection(name='cohesive_sec_ext', material='cohesive',
    response=TRACTION_SEPARATION, initialThicknessType=SPECIFY,
    initialThickness=1.0, outOfPlaneThickness=None)
myModel.HomogeneousSolidSection(name='composite_sec_int',
    material='composite', thickness=0.125)
myModel.HomogeneousSolidSection(name='composite_sec_ext',
    material='composite', thickness=0.125)
#assigning sections
myPart1.DatumCsysByThreePoints(name='ori-1', coordSysType=CARTESIAN, origin=(0.0,
    0.0, 0.0), point1=(0.0, -1.0, 0.0), point2=(1.0, 0.0, 0.0))
myPart1.DatumCsysByThreePoints(name='ori-2', coordSysType=CARTESIAN, origin=(0.0,
    0.0, 0.0), point1=(1.0, 0.0, 0.0), point2=(0.0, 1.0, 0.0))
#aluminum ext
cells=myPart1.cells.findAt(((5,5,0.15),),((80,5,0.15),),((80,15,0.15),),((5,15,0.15),))
myPart1.Set(cells=cells,name='aluminum_ext')
region=myPart1.sets['aluminum_ext']
myPart1.SectionAssignment(region=region, sectionName='aluminum_sec_ext')
#coheisve ext
cells=myPart1.cells.findAt(((5,5,0.3005),),((80,5,0.3005),),((80,15,0.3005),),((5,15,0.3005),))
myPart1.Set(cells=cells,name='cohesive_ext')
region=myPart1.sets['cohesive_ext']
myPart1.SectionAssignment(region=region, sectionName='cohesive_sec_ext')
#composite ext
cells=myPart1.cells.findAt(((5,5,0.4),),((80,5,0.4),),((80,15,0.4),),((5,15,0.4),))
myPart1.Set(cells=cells,name='composite_ext')
region=myPart1.sets['composite_ext']
myPart1.SectionAssignment(region=region, sectionName='composite_sec_ext')
datums=myPart1.datums[18]
myPart1.MaterialOrientation(region=region, localCsys=datums, axis=AXIS_3)
#cohesive middle
cells=myPart1.cells.findAt(((5,5,0.4265),),((80,5,0.4265),),((80,15,0.4265),),((5,15,0.4265),))
myPart1.Set(cells=cells,name='cohesive_middle')
region=myPart1.sets['cohesive_middle']
myPart1.SectionAssignment(region=region, sectionName='cohesive_sec_middle')
#composite int
cells=myPart1.cells.findAt(((5,5,0.5),),((80,5,0.5),),((80,15,0.5),),((5,15,0.5),))
myPart1.Set(cells=cells,name='composite_int')
region=myPart1.sets['composite_int']
myPart1.SectionAssignment(region=region, sectionName='composite_sec_int')
datums=myPart1.datums[19]
myPart1.MaterialOrientation(region=region, localCsys=datums, axis=AXIS_3)
#cohesive int
cells=myPart1.cells.findAt(((5,5,0.5525),),((80,5,0.5525),),((80,15,0.5525),),((5,15,0.5525),))
myPart1.Set(cells=cells,name='cohesive_int')
region=myPart1.sets['cohesive_int']
myPart1.SectionAssignment(region=region, sectionName='cohesive_sec_int')
#aluminum int
cells=myPart1.cells.findAt(((5,5,0.6),),((80,5,0.6),),((80,15,0.6),),((5,15,0.6),))
myPart1.Set(cells=cells,name='aluminum_int')
region=myPart1.sets['aluminum_int']
myPart1.SectionAssignment(region=region, sectionName='aluminum_sec_int')
#create assembly
myAssembly = myModel.rootAssembly
myViewport.setValues(displayedObject=myAssembly)
myAssembly.DatumCsysByDefault(CARTESIAN)
myInstance1 = myAssembly.Instance(name='Part-1-1', part=myPart1, dependent=OFF)
myInstance2 = myAssembly.Instance(name='Part-2-1', part=myPart2, dependent=OFF)
#step module
myModel.StaticStep(name='Step-1', previous='Initial',
    description='uniaxial loading', maxNumInc=1000, initialInc=0.01,timePeriod=0.2333,
    maxInc=0.01, matrixSolver=DIRECT_UNSYMMETRIC, nlgeom=ON)
myViewport.assemblyDisplay.setValues(step='Step-1')
#load and boundary conditions
#xsymm bc
faces=myInstance1.faces.findAt(((0,5,0.15),),((0,5,0.3005),),((0,5,0.4),),((0,5,0.4265),),((0,5,0.5),),((0,5,0.5525),),((0,5,0.6),),((0,15,0.15),),((0,15,0.3005),),((0,15,0.4),),((0,15,0.4265),),((0,15,0.5),),((0,15,0.5525),),((0,15,0.6),))
myAssembly.Set(faces=faces,name='x-symm')
region=myAssembly.sets['x-symm']
myModel.XsymmBC(name='bc-xsymm', createStepName='Initial',
    region=region)
#ysymm bc
faces=myInstance1.faces.findAt(((5,0,0.15),),((5,0,0.3005),),((5,0,0.4),),((5,0,0.4265),),((5,0,0.5),),((5,0,0.5525),),((5,0,0.6),),((8,0,0.15),),((80,0,0.3005),),((80,0,0.4),),((80,0,0.4265),),((80,0,0.5),),((80,0,0.5525),),((80,0,0.6),))
myAssembly.Set(faces=faces,name='y-symm')
region=myAssembly.sets['y-symm']
myModel.YsymmBC(name='bc-ysymm', createStepName='Initial',
    region=region)
#zsymm bc
faces=myInstance1.faces.findAt(((5,5,0.703),),((80,5,0.703),),((5,15,0.703),),((80,15,0.703),))
myAssembly.Set(faces=faces,name='z-symm')
region=myAssembly.sets['z-symm']
myModel.ZsymmBC(name='bc-zsymm', createStepName='Initial',
    region=region)
#displacement bc
faces=myInstance1.faces.findAt(((150,5,0.15),),((150,5,0.3005),),((150,5,0.4),),((150,5,0.4265),),((150,5,0.5),),((150,5,0.5525),),((150,5,0.6),),((150,15,0.15),),((150,15,0.3005),),((150,15,0.4),),((150,15,0.4265),),((150,15,0.5),),((150,15,0.5525),),((150,15,0.6),))
myAssembly.Set(faces=faces,name='x-load')
r1 = myInstance2.referencePoints.findAt((151.0,0,0))
refPoints1=(r1,)
myAssembly.Set(referencePoints = refPoints1, name='x-ref')
##node set for qa test
myAssembly.Set(referencePoints = refPoints1, name='QA_TEST_RF')
myModel.Equation(name='Constraint-1', terms=((1.0, 'x-load',
    1), (-1.0, 'x-ref', 1)))
region=myAssembly.sets['x-ref']
myModel.TabularAmplitude(name='disp-amp', timeSpan=TOTAL,
    smooth=SOLVER_DEFAULT, data=((0.0, 0.0), (1.0, 1.0)))
myModel.DisplacementBC(name='xload', createStepName='Step-1',
    region=region, u1=10.0, u2=UNSET, u3=UNSET, ur1=UNSET, ur2=UNSET,
    ur3=UNSET, amplitude='disp-amp', fixed=OFF, distributionType=UNIFORM,
    localCsys=None)
#output request
#defining assembly level sets for output request
#aluminum ext
cells=myInstance1.cells.findAt(((5,5,0.15),),((80,5,0.15),),((80,15,0.15),),((5,15,0.15),))
myAssembly.Set(cells=cells,name='aluminum_ext')
#coheisve ext
cells=myInstance1.cells.findAt(((5,5,0.3005),),((80,5,0.3005),),((80,15,0.3005),),((5,15,0.3005),))
myAssembly.Set(cells=cells,name='cohesive_ext')
#composite ext
cells=myInstance1.cells.findAt(((5,5,0.4),),((80,5,0.4),),((80,15,0.4),),((5,15,0.4),))
myAssembly.Set(cells=cells,name='composite_ext')
#cohesive middle
cells=myInstance1.cells.findAt(((5,5,0.4265),),((80,5,0.4265),),((80,15,0.4265),),((5,15,0.4265),))
myAssembly.Set(cells=cells,name='cohesive_middle')
#composite int
cells=myInstance1.cells.findAt(((5,5,0.5),),((80,5,0.5),),((80,15,0.5),),((5,15,0.5),))
myAssembly.Set(cells=cells,name='composite_int')
#cohesive int
cells=myInstance1.cells.findAt(((5,5,0.5525),),((80,5,0.5525),),((80,15,0.5525),),((5,15,0.5525),))
myAssembly.Set(cells=cells,name='cohesive_int')
#aluminum int
cells=myInstance1.cells.findAt(((5,5,0.6),),((80,5,0.6),),((80,15,0.6),),((5,15,0.6),))
myAssembly.Set(cells=cells,name='aluminum_int')
#output request
myModel.fieldOutputRequests['F-Output-1'].setValues(
    variables=('S', 'LE', 'U', 'RF'))
regionDef=myAssembly.sets['aluminum_ext']
myModel.FieldOutputRequest(name='F-Output-2',
    createStepName='Step-1', variables=('PEEQ', 'PE'), region=regionDef,
    sectionPoints=DEFAULT, rebar=EXCLUDE)
regionDef=myAssembly.sets['aluminum_int']
myModel.FieldOutputRequest(name='F-Output-3',
    createStepName='Step-1', variables=('PEEQ', 'PE'), region=regionDef,
    sectionPoints=DEFAULT, rebar=EXCLUDE)
regionDef=myAssembly.sets['cohesive_ext']
myModel.FieldOutputRequest(name='F-Output-4',
    createStepName='Step-1', variables=('SDEG', 'NE'), region=regionDef,
    sectionPoints=DEFAULT, rebar=EXCLUDE)
regionDef=myAssembly.sets['cohesive_int']
myModel.FieldOutputRequest(name='F-Output-5',
    createStepName='Step-1', variables=('SDEG', 'NE'), region=regionDef,
    sectionPoints=DEFAULT, rebar=EXCLUDE)
regionDef=myAssembly.sets['cohesive_middle']
myModel.FieldOutputRequest(name='F-Output-6',
    createStepName='Step-1', variables=('SDEG', 'NE'), region=regionDef,
    sectionPoints=DEFAULT, rebar=EXCLUDE)
regionDef=myAssembly.sets['composite_ext']
myModel.FieldOutputRequest(name='F-Output-7',
    createStepName='Step-1', variables=('SDV', 'STH'), region=regionDef,
    sectionPoints=DEFAULT, rebar=EXCLUDE)
regionDef=myAssembly.sets['composite_int']
myModel.FieldOutputRequest(name='F-Output-8',
    createStepName='Step-1', variables=('SDV', 'STH'), region=regionDef,
    sectionPoints=DEFAULT, rebar=EXCLUDE)
myModel.historyOutputRequests['H-Output-1'].setValues(
    frequency=10)
regionDef=myAssembly.sets['x-ref']
myModel.HistoryOutputRequest(name='H-Output-2',
    createStepName='Step-1', variables=('U1', 'RF1'), region=regionDef,
    sectionPoints=DEFAULT, rebar=EXCLUDE)
regionDef=myAssembly.sets['QA_TEST_RF']
myModel.HistoryOutputRequest(name='H-Output-3',
    createStepName='Step-1', variables=('RF1', ), frequency=10,
    region=regionDef, sectionPoints=DEFAULT, rebar=EXCLUDE)
#mesh
#seed
#biased edge 1
e1 = myInstance1.edges.findAt(((0,11,0),))
myAssembly.seedEdgeByBias(end2Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((0,11,0.3),))
myAssembly.seedEdgeByBias(end2Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((0,11,0.301),))
myAssembly.seedEdgeByBias(end2Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((0,11,0.426),))
myAssembly.seedEdgeByBias(end2Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((0,11,0.427),))
myAssembly.seedEdgeByBias(end2Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((0,11,0.552),))
myAssembly.seedEdgeByBias(end2Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((0,11,0.553),))
myAssembly.seedEdgeByBias(end2Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((0,11,0.703),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
#biased edge 2
e1 = myInstance1.edges.findAt(((10,11,0),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((10,11,0.3),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((10,11,0.301),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((10,11,0.426),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((10,11,0.427),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((10,11,0.552),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((10,11,0.553),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((10,11,0.703),))
myAssembly.seedEdgeByBias(end2Edges=e1, ratio=3.0, number=6)
#biased edge 3
e1 = myInstance1.edges.findAt(((150,11,0),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((150,11,0.3),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((150,11,0.301),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((150,11,0.426),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((150,11,0.427),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((150,11,0.552),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((150,11,0.553),))
myAssembly.seedEdgeByBias(end1Edges=e1, ratio=3.0, number=6)
e1 = myInstance1.edges.findAt(((150,11,0.703),))
myAssembly.seedEdgeByBias(end2Edges=e1, ratio=3.0, number=6)
#uniform seeding vertical edge 1
e1 = myInstance1.edges.findAt(((0,2.5,0.0),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((0,2.5,0.3),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((0,2.5,0.301),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((0,2.5,0.426),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((0,2.5,0.427),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((0,2.5,0.552),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((0,2.5,0.553),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((0,2.5,0.703),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
#uniform seeding vertical edge 2
e1 = myInstance1.edges.findAt(((10,2.5,0.0),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((10,2.5,0.3),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((10,2.5,0.301),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((10,2.5,0.426),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((10,2.5,0.427),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((10,2.5,0.552),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((10,2.5,0.553),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((10,2.5,0.703),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
#uniform seeding vertical edge 3
e1 = myInstance1.edges.findAt(((150,2.5,0.0),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((150,2.5,0.3),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((150,2.5,0.301),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((150,2.5,0.426),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((150,2.5,0.427),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((150,2.5,0.552),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((150,2.5,0.553),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((150,2.5,0.703),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
#uniform seeding horizontal edge 1
e1 = myInstance1.edges.findAt(((5,0,0.0),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,0,0.3),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,0,0.301),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,0,0.426),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,0,0.427),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,0,0.552),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,0,0.553),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,0,0.703),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
#uniform seeding horizontal edge 2
e1 = myInstance1.edges.findAt(((5,10,0.0),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,10,0.3),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,10,0.301),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,10,0.426),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,10,0.427),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,10,0.552),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,10,0.553),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,10,0.703),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
#uniform seeding horizontal edge 3
e1 = myInstance1.edges.findAt(((5,25,0.0),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,25,0.3),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,25,0.301),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,25,0.426),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,25,0.427),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,25,0.552),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,25,0.553),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((5,25,0.703),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
#uniform seeding horizontal edge 4
e1 = myInstance1.edges.findAt(((12,0,0.0),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,0,0.3),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,0,0.301),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,0,0.426),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,0,0.427),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,0,0.552),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,0,0.553),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,0,0.703),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
#uniform seeding horizontal edge 5
e1 = myInstance1.edges.findAt(((12,10,0.0),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,10,0.3),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,10,0.301),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,10,0.426),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,10,0.427),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,10,0.552),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,10,0.553),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,10,0.703),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
#uniform seeding horizontal edge 6
e1 = myInstance1.edges.findAt(((12,25,0.0),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,25,0.3),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,25,0.301),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,25,0.426),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,25,0.427),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,25,0.552),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,25,0.553),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
e1 = myInstance1.edges.findAt(((12,25,0.703),))
myAssembly.seedEdgeByNumber(edges=e1, number=52)
#uniform seeding acr
e1 = myInstance1.edges.findAt(((1.697056,1.697056,0.0),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((1.697056,1.697056,0.3),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((1.697056,1.697056,0.301),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((1.697056,1.697056,0.426),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((1.697056,1.697056,0.427),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((1.697056,1.697056,0.552),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((1.697056,1.697056,0.553),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
e1 = myInstance1.edges.findAt(((1.697056,1.697056,0.703),))
myAssembly.seedEdgeByNumber(edges=e1, number=15)
#control 1 element through the thickness for each layer
#through thickness edge 1
e1 = myInstance1.edges.findAt(((0,2.4,0.15),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,2.4,0.3005),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,2.4,0.4),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,2.4,0.4265),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,2.4,0.5),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,2.4,0.6),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
#through thickness edge 2
e1 = myInstance1.edges.findAt(((0,10,0.15),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,10,0.3005),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,10,0.4),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,10,0.4265),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,10,0.5),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,10,0.6),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
#through thickness edge 3
e1 = myInstance1.edges.findAt(((0,25,0.15),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,25,0.3005),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,25,0.4),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,25,0.4265),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,25,0.5),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((0,25,0.6),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
#through thickness edge 4
e1 = myInstance1.edges.findAt(((2.4,0,0.15),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((2.4,0,0.3005),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((2.4,0,0.4),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((2.4,0,0.4265),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((2.4,0,0.5),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((2.4,0,0.6),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
#through thickness edge 5
e1 = myInstance1.edges.findAt(((10,0,0.15),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,0,0.3005),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,0,0.4),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,0,0.4265),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,0,0.5),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,0,0.6),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
#through thickness edge 6
e1 = myInstance1.edges.findAt(((10,10,0.15),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,10,0.3005),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,10,0.4),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,10,0.4265),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,10,0.5),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,10,0.6),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
#through thickness edge 7
e1 = myInstance1.edges.findAt(((10,25,0.15),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,25,0.3005),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,25,0.4),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,25,0.4265),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,25,0.5),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((10,25,0.6),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
#through thickness edge 8
e1 = myInstance1.edges.findAt(((150,0,0.15),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,0,0.3005),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,0,0.4),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,0,0.4265),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,0,0.5),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,0,0.6),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
#through thickness edge 9
e1 = myInstance1.edges.findAt(((150,10,0.15),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,10,0.3005),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,10,0.4),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,10,0.4265),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,10,0.5),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,10,0.6),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
#through thickness edge 10
e1 = myInstance1.edges.findAt(((150,25,0.15),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,25,0.3005),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,25,0.4),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,25,0.4265),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,25,0.5),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
e1 = myInstance1.edges.findAt(((150,25,0.6),))
myAssembly.seedEdgeByNumber(edges=e1, number=1, constraint=FIXED)
#mesh control-sweep to all regions
cells=myInstance1.cells.findAt(((5,5,0.15),),((80,5,0.15),),((80,15,0.15),),((5,15,0.15),),((5,5,0.3005),),((80,5,0.3005),),((80,15,0.3005),),((5,15,0.3005),),((5,5,0.4),),((80,5,0.4),),((80,15,0.4),),((5,15,0.4),),((5,5,0.4265),),((80,5,0.4265),),((80,15,0.4265),),((5,15,0.4265),),((5,5,0.5),),((80,5,0.5),),((80,15,0.5),),((5,15,0.5),),((5,5,0.5525),),((80,5,0.5525),),((80,15,0.5525),),((5,15,0.5525),),((5,5,0.6),),((80,5,0.6),),((80,15,0.6),),((5,15,0.6),))
myAssembly.setMeshControls(regions=cells, technique=SWEEP,
    algorithm=MEDIAL_AXIS)
#mesh type
#aluminum ext
elemType1 = mesh.ElemType(elemCode=C3D8I, elemLibrary=STANDARD)
elemType2 = mesh.ElemType(elemCode=C3D6, elemLibrary=STANDARD)
elemType3 = mesh.ElemType(elemCode=C3D4, elemLibrary=STANDARD)
cells=myInstance1.cells.findAt(((5,5,0.15),),((80,5,0.15),),((80,15,0.15),),((5,15,0.15),))
pickedRegions=(cells,)
myAssembly.setElementType(regions=pickedRegions, elemTypes=(elemType1, elemType2,
    elemType3))
#coheisve ext
elemType1 = mesh.ElemType(elemCode=COH3D8, elemLibrary=STANDARD)
elemType2 = mesh.ElemType(elemCode=COH3D6, elemLibrary=STANDARD)
elemType3 = mesh.ElemType(elemCode=UNKNOWN_TET, elemLibrary=STANDARD)
cells=myInstance1.cells.findAt(((5,5,0.3005),),((80,5,0.3005),),((80,15,0.3005),),((5,15,0.3005),))
pickedRegions=(cells,)
myAssembly.setElementType(regions=pickedRegions, elemTypes=(elemType1, elemType2,
    elemType3))
#composite ext
elemType1 = mesh.ElemType(elemCode=C3D8R, elemLibrary=STANDARD,hourglassControl=ENHANCED)
elemType2 = mesh.ElemType(elemCode=C3D6, elemLibrary=STANDARD)
elemType3 = mesh.ElemType(elemCode=C3D4, elemLibrary=STANDARD)
cells=myInstance1.cells.findAt(((5,5,0.4),),((80,5,0.4),),((80,15,0.4),),((5,15,0.4),))
pickedRegions=(cells,)
myAssembly.setElementType(regions=pickedRegions, elemTypes=(elemType1, elemType2,
    elemType3))
#cohesive middle
elemType1 = mesh.ElemType(elemCode=COH3D8, elemLibrary=STANDARD)
elemType2 = mesh.ElemType(elemCode=COH3D6, elemLibrary=STANDARD)
elemType3 = mesh.ElemType(elemCode=UNKNOWN_TET, elemLibrary=STANDARD)
cells=myInstance1.cells.findAt(((5,5,0.4265),),((80,5,0.4265),),((80,15,0.4265),),((5,15,0.4265),))
pickedRegions=(cells,)
myAssembly.setElementType(regions=pickedRegions, elemTypes=(elemType1, elemType2,
    elemType3))
#composite int
elemType1 = mesh.ElemType(elemCode=C3D8R, elemLibrary=STANDARD,hourglassControl=ENHANCED)
elemType2 = mesh.ElemType(elemCode=C3D6, elemLibrary=STANDARD)
elemType3 = mesh.ElemType(elemCode=C3D4, elemLibrary=STANDARD)
cells=myInstance1.cells.findAt(((5,5,0.5),),((80,5,0.5),),((80,15,0.5),),((5,15,0.5),))
pickedRegions=(cells,)
myAssembly.setElementType(regions=pickedRegions, elemTypes=(elemType1, elemType2,
    elemType3))
#cohesive int
elemType1 = mesh.ElemType(elemCode=COH3D8, elemLibrary=STANDARD)
elemType2 = mesh.ElemType(elemCode=COH3D6, elemLibrary=STANDARD)
elemType3 = mesh.ElemType(elemCode=UNKNOWN_TET, elemLibrary=STANDARD)
cells=myInstance1.cells.findAt(((5,5,0.5525),),((80,5,0.5525),),((80,15,0.5525),),((5,15,0.5525),))
pickedRegions=(cells,)
myAssembly.setElementType(regions=pickedRegions, elemTypes=(elemType1, elemType2,
    elemType3))
#aluminum int
elemType1 = mesh.ElemType(elemCode=C3D8I, elemLibrary=STANDARD)
elemType2 = mesh.ElemType(elemCode=C3D6, elemLibrary=STANDARD)
elemType3 = mesh.ElemType(elemCode=C3D4, elemLibrary=STANDARD)
cells=myInstance1.cells.findAt(((5,5,0.6),),((80,5,0.6),),((80,15,0.6),),((5,15,0.6),))
pickedRegions=(cells,)
myAssembly.setElementType(regions=pickedRegions, elemTypes=(elemType1, elemType2,
    elemType3))
#adjust the sweep direction,so the stack orientation would be along the sweep direction
#1
cells=myInstance1.cells.findAt((5,5,0.15))
edges=myInstance1.edges.findAt((10,10,0.15))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#2
cells=myInstance1.cells.findAt((80,5,0.15))
edges=myInstance1.edges.findAt((10,10,0.15))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#3
cells=myInstance1.cells.findAt((80,15,0.15))
edges=myInstance1.edges.findAt((10,10,0.15))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#4
cells=myInstance1.cells.findAt((5,15,0.15))
edges=myInstance1.edges.findAt((10,10,0.15))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#5
cells=myInstance1.cells.findAt((5,5,0.3005))
edges=myInstance1.edges.findAt((10,10,0.3005))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#6
cells=myInstance1.cells.findAt((80,5,0.3005))
edges=myInstance1.edges.findAt((10,10,0.3005))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#7
cells=myInstance1.cells.findAt((80,15,0.3005))
edges=myInstance1.edges.findAt((10,10,0.3005))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#8
cells=myInstance1.cells.findAt((5,15,0.3005))
edges=myInstance1.edges.findAt((10,10,0.3005))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#9
cells=myInstance1.cells.findAt((5,5,0.4))
edges=myInstance1.edges.findAt((10,10,0.4))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#10
cells=myInstance1.cells.findAt((80,5,0.4))
edges=myInstance1.edges.findAt((10,10,0.4))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#11
cells=myInstance1.cells.findAt((80,15,0.4))
edges=myInstance1.edges.findAt((10,10,0.4))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#12
cells=myInstance1.cells.findAt((5,15,0.4))
edges=myInstance1.edges.findAt((10,10,0.4))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#13
cells=myInstance1.cells.findAt((5,5,0.4265))
edges=myInstance1.edges.findAt((10,10,0.4265))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#14
cells=myInstance1.cells.findAt((80,5,0.4265))
edges=myInstance1.edges.findAt((10,10,0.4265))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#15
cells=myInstance1.cells.findAt((80,15,0.4265))
edges=myInstance1.edges.findAt((10,10,0.4265))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#16
cells=myInstance1.cells.findAt((5,15,0.4265))
edges=myInstance1.edges.findAt((10,10,0.4265))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#17
cells=myInstance1.cells.findAt((5,5,0.5))
edges=myInstance1.edges.findAt((10,10,0.5))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#18
cells=myInstance1.cells.findAt((80,5,0.5))
edges=myInstance1.edges.findAt((10,10,0.5))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#19
cells=myInstance1.cells.findAt((80,15,0.5))
edges=myInstance1.edges.findAt((10,10,0.5))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#20
cells=myInstance1.cells.findAt((5,15,0.5))
edges=myInstance1.edges.findAt((10,10,0.5))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#21
cells=myInstance1.cells.findAt((5,5,0.5525))
edges=myInstance1.edges.findAt((10,10,0.5525))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#22
cells=myInstance1.cells.findAt((80,5,0.5525))
edges=myInstance1.edges.findAt((10,10,0.5525))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#23
cells=myInstance1.cells.findAt((80,15,0.5525))
edges=myInstance1.edges.findAt((10,10,0.5525))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#24
cells=myInstance1.cells.findAt((5,15,0.5525))
edges=myInstance1.edges.findAt((10,10,0.5525))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#25
cells=myInstance1.cells.findAt((5,5,0.6))
edges=myInstance1.edges.findAt((10,10,0.6))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#26
cells=myInstance1.cells.findAt((80,5,0.6))
edges=myInstance1.edges.findAt((10,10,0.6))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#27
cells=myInstance1.cells.findAt((80,15,0.6))
edges=myInstance1.edges.findAt((10,10,0.6))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#28
cells=myInstance1.cells.findAt((5,15,0.6))
edges=myInstance1.edges.findAt((10,10,0.6))
myAssembly.setSweepPath(region=cells, edge=edges, sense=REVERSE)
#meshing the whole region
partInstances=(myInstance1,)
myAssembly.generateMesh(regions=partInstances)
#edit keyword to change the nonsupported keyword and parameters
myModel.keywordBlock.synchVersions()
myModel.keywordBlock.replace(86, """
*Elastic,type=traction
2000e3,751.8796992e3,751.8796992e3
*damage initiation,criterion=quade
2.5e-5,6.65e-5,6.65e-5
*damage evolution,type=energy,mixed mode behavior=power,softening=exponential,mode mix ratio=energy,power=2
4,4,4""")
#write input file
myjob=mdb.Job(name='fml_c3d8r_deg0_vis2_std', model='BluntNotch', type=ANALYSIS,
    explicitPrecision=SINGLE, nodalOutputPrecision=SINGLE, description='',
    parallelizationMethodExplicit=DOMAIN, multiprocessingMode=DEFAULT,
    numDomains=1, userSubroutine='', numCpus=1, scratch='',
    echoPrint=OFF, modelPrint=OFF, contactPrint=OFF, historyPrint=OFF)
mdb.jobs['fml_c3d8r_deg0_vis2_std'].writeInput()

