from abaqus import * from abaqusConstants import * session.Viewport(name='Viewport: 1', origin=(0.0, 0.0), width=157.78125, height=197.1484375) session.viewports['Viewport: 1'].makeCurrent() session.viewports['Viewport: 1'].maximize() from caeModules import * from driverUtils import executeOnCaeStartup executeOnCaeStartup() session.viewports['Viewport: 1'].setValues(displayedObject=None) modell = mdb.Model (name='test99') import part zeichnung = modell.ConstrainedSketch(name='_profile_', sheetSize=1220.0) zeichnung.setPrimaryObject(option=STANDALONE) zeichnung.Line(point1=(-100.0,-400.0), point2=(99.0,-400.0)) zeichnung.Line(point1=(99.0,-400.0), point2=(99.0,400.0)) zeichnung.Line(point1=(99.0,400.0), point2=(-100.0,400.0)) zeichnung.Line(point1=(-100.0,400.0), point2=(-100.0,0.10000000000000001)) zeichnung.Line(point1=(-100.0,0.10000000000000001), point2=(0.0,0.0)) zeichnung.Line(point1=(0.0,0.0), point2=(-100.0,-0.10000000000000001)) zeichnung.Line(point1=(-100.0,-0.10000000000000001), point2=(-100.0,-400.0)) teil = modell.Part(name='test99', dimensionality=TWO_D_PLANAR, type=DEFORMABLE_BODY) teil = modell.parts['test99'] teil.BaseShell(sketch=zeichnung) zeichnung.unsetPrimaryObject() session.viewports['Viewport: 1'].setValues(displayedObject=None) del modell.sketches['_profile_'] import material material = modell.Material(name='s') material.Elastic(table=((210000.0,0.29999999999999999),)) material.Expansion(table=((3,),)) import section sektion = modell.HomogeneousSolidSection (name='Sektion',material='s',thickness=1.0) flaeche=teil.faces.findAt(((-100.0,-400.0,0.0),)) region = regionToolset.Region(faces=flaeche) teil.SectionAssignment(region=region,sectionName='Sektion') import assembly zusammen = modell.rootAssembly zusammen.DatumCsysByDefault(CARTESIAN) instanz = zusammen.Instance (name='Instanz',part=teil,dependent=OFF) import step modell.StaticStep(name='step-1',previous='Initial') import load kante = instanz.edges.findAt(((-0.5,-400.0,0.0),)) region = regionToolset.Region(edges=kante) modell.DisplacementBC (name='q',createStepName='Initial',region=region,u1=SET,u2=SET,ur3=UNSET,amplitude=UNSET,distributionType=UNIFORM,localCsys=None) kante = instanz.edges.findAt(((-0.5,400.0,0.0),)) zusammen.Surface(side1Edges=kante,name='Kraftangriffsflaeche2') region=zusammen.surfaces['Kraftangriffsflaeche2'] modell.Pressure(name='Last',createStepName='step-1',region=region,magnitude=-800.0) zusammen.Set(name='RUO',edges=(instanz.edges.findAt(((-50.0,-0.050000000000000003,0.0),)),)) kante=instanz.edges.findAt(((-50.0,-0.050000000000000003,0.0),)) zusammen.PartitionEdgeByParam(edges=kante, parameter=0.02) zusammen.Surface(side1Edges=(instanz.edges.findAt(((-50.0,-0.050000000000000003,0.0),)),),name='Slave') slaveregion = zusammen.surfaces['Slave'] zusammen.Set(name='RUU',edges=(instanz.edges.findAt(((-50.0,0.050000000000000003,0.0),)),)) zusammen.Surface(side1Edges=(instanz.edges.findAt(((-50.0,0.050000000000000003,0.0),)),),name='Master') masterregion = zusammen.surfaces['Master'] modell.ContactProperty('intprop-1') modell.interactionProperties['intprop-1'].NormalBehavior(pressureOverclosure=HARD, allowSeparation=ON,constraintEnforcementMethod=DEFAULT) modell.SurfaceToSurfaceContactStd(name='int-1',createStepName='Initial',master=masterregion,slave=slaveregion,sliding=FINITE,interactionProperty='intprop-1',adjustMethod=NONE,smooth=0.2,initialClearance=OMIT,datumAxis=None,clearanceRegion=None) zusammen.Set(name='TIP',vertices=(instanz.vertices.findAt(((0.0,0.0,0.0),)),)) Rissfront = zusammen.sets['TIP'] Rissspitze = zusammen.sets['TIP'] zusammen.engineeringFeatures.ContourIntegral(name='Riss', symmetric=OFF, crackFront=Rissfront, crackTip=Rissspitze,extensionDirectionMethod=Q_VECTORS, qVectors=(((0.0, 0.0, 0.0), (1.0,0.0,0.0)), ), midNodePosition=0.5, collapsedElementAtTip=NONE) modell.HistoryOutputRequest(name='H-Output-2', createStepName='step-1', contourIntegral='Riss', sectionPoints=DEFAULT,rebar=EXCLUDE, numberOfContours=9) flaeche=instanz.faces[0] t=zusammen.MakeSketchTransform(sketchPlane=flaeche,sketchPlaneSide=SIDE1,origin=(0.0,0.0,0.0)) zeichnung = modell.ConstrainedSketch(name='_profile_',sheetSize=30.000009999997499,gridSpacing=2.0000009999997501,transform=t) zeichnung.setPrimaryObject(option=SUPERIMPOSE) zusammen.projectReferencesOntoSketch(sketch=zeichnung,filter=COPLANAR_EDGES) zeichnung.rectangle(point1=(-10.000004999998749,-10.000004999998749),point2=(10.000004999998749,10.000004999998749)) zusammen.PartitionFaceBySketch(faces=flaeche,sketch=zeichnung) zeichnung.unsetPrimaryObject() import mesh kante=instanz.edges zusammen.seedEdgeBySize(edges=kante,size=2.0000009999997501) linie = instanz.edges.findAt(((-55.000002499999376,-0.055000002499999381,0.0),)) zusammen.seedEdgeByBias(end1Edges=linie,ratio=39.999980000015,number=7) linie = instanz.edges.findAt(((-55.000002499999376,0.055000002499999381,0.0),)) zusammen.seedEdgeByBias(end2Edges=linie,ratio=39.999980000015,number=7) linie = instanz.edges.findAt(((-100.0,-200.05000000000001,0.0),)) zusammen.seedEdgeBySize(edges=linie,size=80.0) linie = instanz.edges.findAt(((-100.0,200.05000000000001,0.0),)) zusammen.seedEdgeBySize(edges=linie,size=80.0) linie = instanz.edges.findAt(((-0.5,400.0,0.0),)) zusammen.seedEdgeBySize(edges=linie,size=80.0) linie = instanz.edges.findAt(((99.0,0.0,0.0),)) zusammen.seedEdgeBySize(edges=linie,size=80.0) linie = instanz.edges.findAt(((-0.5,-400.0,0.0),)) zusammen.seedEdgeBySize(edges=linie,size=80.0) elemType = mesh.ElemType(elemCode=CPS4,elemLibrary=STANDARD) flaeche=instanz.faces for i in flaeche: zusammen.setElementType(regions=(i,),elemTypes=(elemType,)) zusammen.setMeshControls(regions=(i,),elemShape=QUAD,algorithm=ADVANCING_FRONT,allowMapped=TRUE) zusammen.generateMesh(regions=(i,)) mdb.Job(name='Job-test99', model='test99', type=ANALYSIS, explicitPrecision=DOUBLE, nodalOutputPrecision=FULL, description='', parallelizationMethodExplicit=DOMAIN, multiprocessingMode=DEFAULT, numDomains=1, userSubroutine='', numCpus=1, preMemory=256.0, standardMemory=256.0, standardMemoryPolicy=MODERATE, scratch='', echoPrint=OFF, modelPrint=ON, contactPrint=OFF, historyPrint=ON) mdb.jobs['Job-test99'].writeInput(consistencyChecking=OFF)