# -*- coding: mbcs -*- # # Abaqus/CAE Release 6.10-DEV replay file # Internal Version: 2009_10_14-20.27.17 100086 # Run by zlv on Thu Oct 15 14:46:39 2009 # # from driverUtils import executeOnCaeGraphicsStartup # executeOnCaeGraphicsStartup() #: Executing "onCaeGraphicsStartup()" in the site directory ... from abaqus import * from abaqusConstants import * session.Viewport(name='Viewport: 1', origin=(0.0, 0.0), width=177.7734375, height=143.506513983011) session.viewports['Viewport: 1'].makeCurrent() session.viewports['Viewport: 1'].maximize() from caeModules import * from driverUtils import executeOnCaeStartup executeOnCaeStartup() #: Executing "onCaeStartup()" in the site directory ... #Copy the input files. import fetch fetchApp = fetch.FetchApplication(('-job', 'cfd_mesh.inp'), FALSE) fetchApp.run() fetchApp = fetch.FetchApplication(('-job', 'std_heat_transfer.inp'), FALSE) fetchApp.run() session.viewports['Viewport: 1'].partDisplay.geometryOptions.setValues( referenceRepresentation=ON) Mdb() #: A new model database has been created. #: The model "Model-1" has been created. session.viewports['Viewport: 1'].setValues(displayedObject=None) mdb.ModelFromInputFile(name='cfd_mesh', inputFileName='cfd_mesh.inp') #: The model "cfd_mesh" has been created. #: The part "BOUNDINGBOX" has been imported from the input file. #: #: WARNING: The following keywords/parameters are not yet supported by the input file reader: #: --------------------------------------------------------------------------------- #: *PREPRINT #: The model "cfd_mesh" has been imported from an input file. #: Please scroll up to check for error and warning messages. a = mdb.models['cfd_mesh'].rootAssembly session.viewports['Viewport: 1'].setValues(displayedObject=a) mdb.Model(name='Cfd_flow', modelType=CFD) #: The model "Cfd_flow" has been created. a = mdb.models['Cfd_flow'].rootAssembly session.viewports['Viewport: 1'].setValues(displayedObject=a) import part import assembly import material import section import interaction mdb.models['Cfd_flow'].Part('BOUNDINGBOX', mdb.models['cfd_mesh'].parts['BOUNDINGBOX']) a = mdb.models['Cfd_flow'].rootAssembly session.viewports['Viewport: 1'].setValues(displayedObject=a) mdb.models['Cfd_flow'].Instance('BOUNDINGBOX-1', mdb.models['cfd_mesh'].rootAssembly.instances['BOUNDINGBOX-1']) a = mdb.models['Model-1'].rootAssembly session.viewports['Viewport: 1'].setValues(displayedObject=a) del mdb.models['Model-1'] a = mdb.models['cfd_mesh'].rootAssembly session.viewports['Viewport: 1'].setValues(displayedObject=a) del mdb.models['cfd_mesh'] a = mdb.models['Cfd_flow'].rootAssembly session.viewports['Viewport: 1'].setValues(displayedObject=a) session.viewports['Viewport: 1'].view.setValues(session.views['Iso']) session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=ON, engineeringFeatures=ON) session.viewports['Viewport: 1'].partDisplay.geometryOptions.setValues( referenceRepresentation=OFF) p1 = mdb.models['Cfd_flow'].parts['BOUNDINGBOX'] session.viewports['Viewport: 1'].setValues(displayedObject=p1) mdb.models['Cfd_flow'].Material(name='air') mdb.models['Cfd_flow'].materials['air'].Density(table=((0.001127, ), )) mdb.models['Cfd_flow'].materials['air'].Conductivity(table=((2710.0, ), )) mdb.models['Cfd_flow'].materials['air'].Expansion(zero=293.0, table=((0.00343, ), )) mdb.models['Cfd_flow'].materials['air'].SpecificHeat(table=((10064000.0, ), )) mdb.models['Cfd_flow'].materials['air'].specificHeat.setValues( law=CONSTANTPRESSURE) mdb.models['Cfd_flow'].materials['air'].Viscosity(table=((0.0001983, ), )) mdb.models['Cfd_flow'].HomogeneousFluidSection(name='air', material='air') p = mdb.models['Cfd_flow'].parts['BOUNDINGBOX'] region = p.sets['ALL'] p = mdb.models['Cfd_flow'].parts['BOUNDINGBOX'] p.SectionAssignment(region=region, sectionName='air', offset=0.0, offsetType=MIDDLE_SURFACE, offsetField='', thicknessAssignment=FROM_SECTION) a = mdb.models['Cfd_flow'].rootAssembly session.viewports['Viewport: 1'].setValues(displayedObject=a) a.regenerate() session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=ON, bcs=ON, predefinedFields=ON, connectors=ON) session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=OFF, bcs=OFF, predefinedFields=OFF, connectors=OFF, adaptiveMeshConstraints=ON) mdb.models['Cfd_flow'].FlowStep(name='NatConv', previous='Initial', description='Buoyancy Driven Natural COnvection', timePeriod=85.0, incrementation=FIXED_CFL, maximumCFL=5.0, energyEquation=TEMPERATURE, viscousFactor=BACKWARD_EULER, boundaryFactor=BACKWARD_EULER, advectionFactor=BACKWARD_EULER) session.viewports['Viewport: 1'].assemblyDisplay.setValues(step='NatConv') session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=ON, bcs=ON, predefinedFields=ON, connectors=ON, adaptiveMeshConstraints=OFF) mdb.models['Cfd_flow'].Gravity(name='Load-1', createStepName='NatConv', comp2=-981.0, distributionType=UNIFORM, field='') a = mdb.models['Cfd_flow'].rootAssembly region = a.instances['BOUNDINGBOX-1'].surfaces['BOTTOM'] mdb.models['Cfd_flow'].FluidWallConditionBC(name='BC-1', createStepName='NatConv', region=region, v1=0.0, v2=0.0, v3=0.0, type=NO_SLIP) a = mdb.models['Cfd_flow'].rootAssembly region = a.instances['BOUNDINGBOX-1'].surfaces['CIRCUIT_BOARD_FSI'] mdb.models['Cfd_flow'].FluidWallConditionBC(name='BC-2', createStepName='NatConv', region=region, v1=0.0, v2=0.0, v3=0.0, type=NO_SLIP) a = mdb.models['Cfd_flow'].rootAssembly region = a.instances['BOUNDINGBOX-1'].surfaces['TOP'] mdb.models['Cfd_flow'].FluidInletOutletBC(name='BC-3', createStepName='NatConv', region=region, pressure=0.0, momentumType=PRESSURE) session.viewports['Viewport: 1'].assemblyDisplay.setValues(step='Initial') mdb.models['Cfd_flow'].FluidDensity(name='Predefined Field-1', region=None, density=0.001127) mdb.models['Cfd_flow'].FluidThermalEnergy(name='Predefined Field-2', region=None, temperature=293.0) mdb.models['Cfd_flow'].FluidVelocity(name='Predefined Field-3', region=None, velocity1=0.0, velocity2=0.0, velocity3=0.0) mdb.ModelFromInputFile(name='std_heat_transfer', inputFileName='std_heat_transfer.inp') #: The model "std_heat_transfer" has been created. #: The part "CIRCUIT-BOARD" has been imported from the input file. #: #: WARNING: The following keywords/parameters are not yet supported by the input file reader: #: --------------------------------------------------------------------------------- #: *PREPRINT #: The model "std_heat_transfer" has been imported from an input file. #: Please scroll up to check for error and warning messages. session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=OFF, bcs=OFF, predefinedFields=OFF, connectors=OFF) a = mdb.models['std_heat_transfer'].rootAssembly session.viewports['Viewport: 1'].setValues(displayedObject=a) p1 = mdb.models['std_heat_transfer'].parts['CIRCUIT-BOARD'] session.viewports['Viewport: 1'].setValues(displayedObject=p1) mdb.models['std_heat_transfer'].Material(name='Die') mdb.models['std_heat_transfer'].materials['Die'].Density(table=((2.33, ), )) mdb.models['std_heat_transfer'].materials['Die'].Conductivity(table=(( 13010000.0, ), )) mdb.models['std_heat_transfer'].materials['Die'].Expansion(table=((3.3e-06, ), )) mdb.models['std_heat_transfer'].materials['Die'].SpecificHeat(table=(( 7120000.0, ), )) mdb.models['std_heat_transfer'].Material(name='HeatSlug') mdb.models['std_heat_transfer'].materials['HeatSlug'].Density(table=((8.94, ), )) mdb.models['std_heat_transfer'].materials['HeatSlug'].Conductivity(table=(( 39800000.0, ), )) mdb.models['std_heat_transfer'].materials['HeatSlug'].Expansion(table=(( 3.3e-06, ), )) mdb.models['std_heat_transfer'].materials['HeatSlug'].SpecificHeat(table=(( 3850000.0, ), )) mdb.models['std_heat_transfer'].Material(name='PCB_substrate') mdb.models['std_heat_transfer'].materials['PCB_substrate'].Density(table=(( 8.95, ), )) mdb.models['std_heat_transfer'].materials['PCB_substrate'].Conductivity(table=( (1925000.0, ), )) mdb.models['std_heat_transfer'].materials['PCB_substrate'].Expansion(table=(( 1.6e-05, ), )) mdb.models['std_heat_transfer'].materials['PCB_substrate'].SpecificHeat(table=( (13000000.0, ), )) mdb.models['std_heat_transfer'].Material(name='encapsulant') mdb.models['std_heat_transfer'].materials['encapsulant'].Density(table=((1.82, ), )) mdb.models['std_heat_transfer'].materials['encapsulant'].Conductivity(table=(( 63000.0, ), )) mdb.models['std_heat_transfer'].materials['encapsulant'].Expansion(table=(( 1.9e-05, ), )) mdb.models['std_heat_transfer'].materials['encapsulant'].SpecificHeat(table=(( 8820000.0, ), )) mdb.models['std_heat_transfer'].HomogeneousSolidSection(name='die', material='Die', thickness=None) mdb.models['std_heat_transfer'].HomogeneousSolidSection(name='heatslug', material='HeatSlug', thickness=None) mdb.models['std_heat_transfer'].HomogeneousSolidSection(name='substrate', material='PCB_substrate', thickness=None) mdb.models['std_heat_transfer'].HomogeneousSolidSection(name='encaps', material='encapsulant', thickness=None) p = mdb.models['std_heat_transfer'].parts['CIRCUIT-BOARD'] region = p.sets['DIE'] p = mdb.models['std_heat_transfer'].parts['CIRCUIT-BOARD'] p.SectionAssignment(region=region, sectionName='die', offset=0.0, offsetType=MIDDLE_SURFACE, offsetField='', thicknessAssignment=FROM_SECTION) p = mdb.models['std_heat_transfer'].parts['CIRCUIT-BOARD'] region = p.sets['ENCAPS'] p = mdb.models['std_heat_transfer'].parts['CIRCUIT-BOARD'] p.SectionAssignment(region=region, sectionName='encaps', offset=0.0, offsetType=MIDDLE_SURFACE, offsetField='', thicknessAssignment=FROM_SECTION) p = mdb.models['std_heat_transfer'].parts['CIRCUIT-BOARD'] region = p.sets['HEATSLUG'] p = mdb.models['std_heat_transfer'].parts['CIRCUIT-BOARD'] p.SectionAssignment(region=region, sectionName='heatslug', offset=0.0, offsetType=MIDDLE_SURFACE, offsetField='', thicknessAssignment=FROM_SECTION) p = mdb.models['std_heat_transfer'].parts['CIRCUIT-BOARD'] region = p.sets['SUBSTRATE'] p = mdb.models['std_heat_transfer'].parts['CIRCUIT-BOARD'] p.SectionAssignment(region=region, sectionName='substrate', offset=0.0, offsetType=MIDDLE_SURFACE, offsetField='', thicknessAssignment=FROM_SECTION) a = mdb.models['std_heat_transfer'].rootAssembly session.viewports['Viewport: 1'].setValues(displayedObject=a) a.regenerate() session.viewports['Viewport: 1'].assemblyDisplay.setValues( adaptiveMeshConstraints=ON) mdb.models['std_heat_transfer'].HeatTransferStep(name='Heat-Transfer', previous='Initial', description='Heat Transfer within the electronic component-mounted circuit board', timePeriod=85.0, maxNumInc=10000, initialInc=0.01, minInc=0.0001, maxInc=1.0, deltmx=1.0) session.viewports['Viewport: 1'].assemblyDisplay.setValues( step='Heat-Transfer') session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=ON, bcs=ON, predefinedFields=ON, connectors=ON, adaptiveMeshConstraints=OFF) a = mdb.models['std_heat_transfer'].rootAssembly region = a.instances['CIRCUIT-BOARD-1'].sets['COMPONENT'] mdb.models['std_heat_transfer'].BodyHeatFlux(name='Power-Dissipate', createStepName='Heat-Transfer', region=region, magnitude=500000000.0) session.viewports['Viewport: 1'].assemblyDisplay.setValues(step='Initial') a = mdb.models['std_heat_transfer'].rootAssembly region = a.instances['CIRCUIT-BOARD-1'].sets['ALL'] mdb.models['std_heat_transfer'].Temperature(name='Predefined Field-1', createStepName='Initial', region=region, distributionType=UNIFORM, crossSectionDistribution=CONSTANT_THROUGH_THICKNESS, magnitudes=(293.0, )) session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=OFF, bcs=OFF, predefinedFields=OFF, interactions=ON, constraints=ON, engineeringFeatures=ON) session.viewports['Viewport: 1'].assemblyDisplay.setValues( step='Heat-Transfer') a = mdb.models['std_heat_transfer'].rootAssembly region=a.instances['CIRCUIT-BOARD-1'].surfaces['FSI-SURF'] mdb.models['std_heat_transfer'].FSICosimulation(name='Int-1', createStepName='Heat-Transfer', region=region, stepSizeDefinition=DEFAULT, stepSize=0.0) #: The interaction "Int-1" has been created. a = mdb.models['Cfd_flow'].rootAssembly session.viewports['Viewport: 1'].setValues(displayedObject=a) session.viewports['Viewport: 1'].assemblyDisplay.setValues(step='Initial') session.viewports['Viewport: 1'].assemblyDisplay.setValues(step='NatConv') a = mdb.models['Cfd_flow'].rootAssembly region=a.instances['BOUNDINGBOX-1'].surfaces['CIRCUIT_BOARD_FSI'] mdb.models['Cfd_flow'].FSICosimulation(name='Int-1', createStepName='NatConv', region=region, stepSizeDefinition=DEFAULT, stepSize=0.0) #: The interaction "Int-1" has been created. session.viewports['Viewport: 1'].assemblyDisplay.setValues(interactions=OFF, constraints=OFF, connectors=OFF, engineeringFeatures=OFF) mdb.Job(name='cfd_cosim', model='Cfd_flow', description='CFD Side of the CHT', type=ANALYSIS, atTime=None, waitMinutes=0, waitHours=0, queue=None, scratch='', numCpus=1) mdb.Job(name='std_cosim', model='std_heat_transfer', description='Standard side of the cosimulation', type=ANALYSIS, atTime=None, waitMinutes=0, waitHours=0, queue=None, memory=50, memoryUnits=PERCENTAGE, getMemoryFromAnalysis=True, explicitPrecision=SINGLE, nodalOutputPrecision=SINGLE, echoPrint=OFF, modelPrint=OFF, contactPrint=OFF, historyPrint=OFF, userSubroutine='', scratch='', multiprocessingMode=DEFAULT, numCpus=1) mdb.Coexecution(name='Co-execution-1', description='Conjugate Heat Transfer', masterModel='Cfd_flow', masterAnalysisProduct=ABAQUS_CFD, slaveModels=( 'std_heat_transfer', ), slaveAnalysisProducts=(ABAQUS, )) mdb.coexecutions['Co-execution-1'].Job(type=ANALYSIS, atTime=None, waitMinutes=0, waitHours=0, queue=None, memory=50, memoryUnits=PERCENTAGE, getMemoryFromAnalysis=True, explicitPrecision=DOUBLE, nodalOutputPrecision=FULL, echoPrint=OFF, modelPrint=OFF, contactPrint=OFF, historyPrint=OFF, userSubroutine='', scratch='', parallelizationMethodExplicit=DOMAIN, numDomains=1, activateLoadBalancing=False, multiprocessingMode=DEFAULT, numCpus=1, name='Co-execution-1-Cfd_flow', model='Cfd_flow') mdb.coexecutions['Co-execution-1'].Job(type=ANALYSIS, atTime=None, waitMinutes=0, waitHours=0, queue=None, memory=50, memoryUnits=PERCENTAGE, getMemoryFromAnalysis=True, explicitPrecision=DOUBLE, nodalOutputPrecision=FULL, echoPrint=OFF, modelPrint=OFF, contactPrint=OFF, historyPrint=OFF, userSubroutine='', scratch='', parallelizationMethodExplicit=DOMAIN, numDomains=1, activateLoadBalancing=False, multiprocessingMode=DEFAULT, numCpus=1, name='Co-execution-1-std_heat_transfer', model='std_heat_transfer') #: The co-execution "Co-execution-1" has been created. # # execute co-exe # mdb.coexecutions['Co-execution-1'].Submit(consistencyChecking=OFF) mdb.coexecutions['Co-execution-1'].waitForCompletion() # # exit cae # import sys sys.exit()