Предварительное натяжение высокопрочных болтов во фланцевых соединениях - Страница 27
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Архитектура и Строительство > Конструкции зданий и сооружений > Металлические конструкции > Предварительное натяжение высокопрочных болтов во фланцевых соединениях

Предварительное натяжение высокопрочных болтов во фланцевых соединениях

Ответ
Поиск в этой теме
Непрочитано 27.11.2008, 22:52
Предварительное натяжение высокопрочных болтов во фланцевых соединениях
Bash
 
Конструктор
 
Ставрополь
Регистрация: 25.11.2008
Сообщений: 139

Здравствуйте!
Давно мучает вопрос: зачем во фланцевых соединениях делается предварительное натяжение высокопрочных болтов. В частности, для начала возьмём нижний пояс ферм, где действует только растягивающее усилие. Почему бы здесь просто не затянуть болты, высокопрочные или обычные, и пускай себе работают на рассчитанное по их количеству растягивающее усилие.
Просмотров: 294963
 
Непрочитано 26.03.2011, 19:54
#521
Семенов Сергей

инженер-проектировщик МК
 
Регистрация: 22.04.2010
Нижний Новгород
Сообщений: 306


Цитата:
Сообщение от таи Посмотреть сообщение
Какую сильную книгу посоветуете вы?
.......
ыыы Это мы знаем. Я про книжку говорил. Рекомендации - вещь отличная, но зачастую в них все очень сжато, а иногда необходима теория, чтобы понять суть того или иного вопроса. Зачастую, не зная теории и основ сложно подступиться к какому-нибудь расчету.(особенно, если впервые сталкиваешься с данным вопросом). А вот в книжках и учебниках порой доступно и понятно описано, хоть и без примеров!
Семенов Сергей вне форума  
 
Непрочитано 27.03.2011, 04:31
#522
Alekceich

конструктор, смею надеяться, что инженер
 
Регистрация: 16.07.2009
Сообщений: 372


Цитата:
Сообщение от valenok@yandex.ru Посмотреть сообщение
Если несут, то почему "раскрытие"?...Искать причину надо...и может быть вообще не в этом узле.
может не совсем корректно выразился, но дело не в "раскрытии" фланцев, а в невозможности их закрытия в связи с )( вот такой формой и установкой вута
__________________
Зачем биться головой об стену, ведь биться головой об угол ГОРАЗДО эффективнее...
Alekceich вне форума  
 
Непрочитано 27.03.2011, 16:33
#523
Ильнур

КМ (+КМД), КЖ (КЖФ)
 
Регистрация: 30.05.2007
Далече
Сообщений: 25,625


Цитата:
Сообщение от valenok@yandex.ru Посмотреть сообщение
Если несут, то почему "раскрытие"?...Искать причину надо...и может быть вообще не в этом узле.
Какое "раскрытие"? Когда говорят про зазор между фланцами, имеют ввиду "незакрытие". Т.е. узел не поддается нормальной сборке из-за неточностей и дефектов изготовления. Если бы торцы идеально подходили бы к друг-другу перед затяжкой болтов, то после затяжки болтов никаких раскрытий просто не могло быть - видимое раскрытие - это уже готовое обрушение, значит, болт "поехал".
ВП болты преднапрягают не для того, чтобы выпрямить кривые детали, а для выборки податливости. В процессе загружения усилие растяжения болта от нагрузки ЗАМЕЩАЕТ усилие преднатяга, и почти полностью. Поэтому видимое раскрытие исключено.
Таи, Катюшин не противоречит "Рекомендациям..", а лишь разжевывает и уточняет. При этом прямо ссылается на "Рекомендации...", на СНиП и другие источники.
__________________
Воскресе
Ильнур вне форума  
 
Непрочитано 14.05.2011, 16:19
#524
Chardash

Соискатель
 
Регистрация: 12.03.2011
Урал
Сообщений: 1,496


Добавлю от себя(не совсем, точнее, даже совсем.) расчет фланца в abaqus(гем, физнелин, контакт). Его можно найти в справке abaqus и его примерах

кода(python) не пугаться, он для продвинутых юзеров. для обычных, вроде меня, можно использовать кады для начала. и дорабатывать в программе. но с прицелом на python.
ps запускать как скрипт и изучать панель дерева расчета(та, что слева) абакуса
Код:
[Выделить все]
#
#    Contact in ABAQUS/Standard
#    Bolted Flange Analysis
#
#    ANSWERS
#
from abaqus import *
from abaqusConstants import *
session.viewports['Viewport: 1'].makeCurrent()
session.viewports['Viewport: 1'].maximize()
from caeModules import *
from driverUtils import executeOnCaeStartup
executeOnCaeStartup()
Mdb()

openMdb('bolted-flange.cae')
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)

mdb.models['Model-1'].StaticStep(name='Tighten bolts', previous='Initial', 
    initialInc=0.25, nlgeom=ON)

mdb.models['Model-1'].ContactProperty('Friction-0p1')
mdb.models['Model-1'].interactionProperties['Friction-0p1'].TangentialBehavior(
    formulation=PENALTY, directionality=ISOTROPIC, slipRateDependency=OFF, 
    pressureDependency=OFF, temperatureDependency=OFF, dependencies=0, table=((
    0.1, ), ), shearStressLimit=None, maximumElasticSlip=FRACTION, 
    fraction=0.005, elasticSlipStiffness=None)
mdb.models['Model-1'].interactionProperties['Friction-0p1'].NormalBehavior(
    pressureOverclosure=HARD, allowSeparation=ON, contactStiffness=DEFAULT, 
    contactStiffnessScaleFactor=1.0, clearanceAtZeroContactPressure=0.0, 
    stiffnessBehavior=LINEAR, constraintEnforcementMethod=PENALTY)

mdb.models['Model-1'].ContactProperty('Friction-0p4')
mdb.models['Model-1'].interactionProperties['Friction-0p4'].TangentialBehavior(
    formulation=PENALTY, directionality=ISOTROPIC, slipRateDependency=OFF, 
    pressureDependency=OFF, temperatureDependency=OFF, dependencies=0, table=((
    0.4, ), ), shearStressLimit=None, maximumElasticSlip=FRACTION, 
    fraction=0.005, elasticSlipStiffness=None)
mdb.models['Model-1'].interactionProperties['Friction-0p4'].NormalBehavior(
    pressureOverclosure=HARD, allowSeparation=ON, contactStiffness=DEFAULT, 
    contactStiffnessScaleFactor=1.0, clearanceAtZeroContactPressure=0.0, 
    stiffnessBehavior=LINEAR, constraintEnforcementMethod=PENALTY)

region = a.instances['Bolt-1'].surfaces['boltLoad']
datumAxis = mdb.models['Model-1'].rootAssembly.instances['Gasket-1'].datums[3]
mdb.models['Model-1'].BoltLoad(name='BoltLoad-1', 
    createStepName='Tighten bolts', region=region, magnitude=200.0, 
    boltMethod=APPLY_FORCE, datumAxis=datumAxis)

region = a.instances['HalfBolt-1'].surfaces['boltLoad']
datumAxis = mdb.models['Model-1'].rootAssembly.instances['Gasket-1'].datums[3]
mdb.models['Model-1'].BoltLoad(name='HalfBoltLoad-1', 
    createStepName='Tighten bolts', region=region, magnitude=100.0, 
    boltMethod=APPLY_FORCE, datumAxis=datumAxis)

region = a.instances['HalfBolt-2'].surfaces['boltLoad']
datumAxis = mdb.models['Model-1'].rootAssembly.instances['Gasket-1'].datums[3]
mdb.models['Model-1'].BoltLoad(name='HalfBoltLoad-2', 
    createStepName='Tighten bolts', region=region, magnitude=100.0, 
    boltMethod=APPLY_FORCE, datumAxis=datumAxis)

region = a.sets['Csymm-x']
mdb.models['Model-1'].DisplacementBC(name='Csymm-x', 
    createStepName='Tighten bolts', region=region, u1=0.0, u2=UNSET, u3=UNSET, 
    ur1=UNSET, ur2=UNSET, ur3=UNSET, amplitude=UNSET, fixed=OFF, 
    distributionType=UNIFORM, fieldName='', localCsys=None)

region = a.sets['Csymm-z']
mdb.models['Model-1'].DisplacementBC(name='Csymm-z', 
    createStepName='Tighten bolts', region=region, u1=UNSET, u2=UNSET, u3=0.0, 
    ur1=UNSET, ur2=UNSET, ur3=UNSET, amplitude=UNSET, fixed=OFF, 
    distributionType=UNIFORM, fieldName='', localCsys=None)

region = a.sets['Bottom']
mdb.models['Model-1'].DisplacementBC(name='Axial', 
    createStepName='Tighten bolts', region=region, u1=UNSET, u2=0.0, u3=UNSET, 
    ur1=UNSET, ur2=UNSET, ur3=UNSET, amplitude=UNSET, fixed=OFF, 
    distributionType=UNIFORM, fieldName='', localCsys=None)

s1 = a.instances['botFlange'].faces
side1Faces1 = s1.findAt(((0.455644, 1.774369, 3.638088), ), ((0.412134, 
    1.774369, 3.3076), ), ((0.518247, 1.774369, 2.606112), ), ((1.657382, 
    1.774369, 2.08829), ), ((1.961762, 1.774369, 2.484966), ), ((2.378954, 
    1.774369, 3.004776), ), ((0.584761, 1.774369, 3.275037), ), ((0.304698, 
    1.774369, 2.64859), ), ((0.671408, 1.774369, 3.766513), ), ((2.720102, 
    1.774369, 2.699177), ), ((2.251486, 1.774369, 2.229011), ), ((1.913591, 
    1.774369, 1.322431), ), ((2.64859, 1.774369, 0.304698), ), ((2.993746, 
    1.774369, 2.105237), ), ((3.3076, 1.774369, 0.412134), ), ((1.915779, 
    1.774369, 1.854092), ), ((3.638088, 1.774369, 0.455644), ), ((2.605932, 
    1.774369, 1.780725), ))
a.Surface(side1Faces=side1Faces1, name='CP-1-botFlange')
region1=a.surfaces['CP-1-botFlange']

s1 = a.instances['Gasket-1'].faces
side1Faces1 = s1.findAt(((0.316163, 1.774369, 2.647213), ), ((0.690043, 
    1.774369, 3.763144), ), ((0.42659, 1.774369, 3.305748), ), ((0.489318, 
    1.774369, 2.615944), ), ((0.600967, 1.774369, 3.272109), ), ((0.471734, 
    1.774369, 3.63601), ), ((1.452183, 1.774369, 1.825786), ), ((2.262862, 
    1.774369, 2.219321), ), ((2.393798, 1.774369, 2.992963), ), ((1.678072, 
    1.774369, 1.620618), ), ((1.974047, 1.774369, 2.475236), ), ((2.732854, 
    1.774369, 2.68381), ), ((3.510304, 1.774369, 0.351124), ), ((3.309401, 
    1.774369, 0.397671), ), ((1.920119, 1.774369, 1.312946), ), ((2.650079, 
    1.774369, 0.291585), ), ((2.59393, 1.774369, 1.806165), ), ((3.004131, 
    1.774369, 2.090392), ))
a.Surface(side1Faces=side1Faces1, name='CP-1-Gasket-1')
region2=a.surfaces['CP-1-Gasket-1']

s1 = a.instances['botFlange'].faces
side1Faces1 = s1.findAt(((2.287174, 1.441036, 2.309741), ), ((2.661838, 
    1.441036, 2.640839), ), ((2.640839, 1.607702, 2.661838), ), ((2.309741, 
    1.607702, 2.287174), ))
a.Surface(side1Faces=side1Faces1, name='CP-2-botFlange')
region3=a.surfaces['CP-2-botFlange']

s1 = a.instances['Bolt-1'].faces
side1Faces1 = s1.findAt(((2.425315, 1.191036, 2.234939), ), ((2.397826, 
    2.274369, 2.242304), ), ((2.311987, 2.274369, 2.657884), ), ((2.291863, 
    1.191036, 2.637761), ), ((2.657884, 1.191036, 2.311987), ), ((2.551922, 
    2.274369, 2.707443), ), ((2.242304, 1.191036, 2.397826), ), ((2.707443, 
    1.191036, 2.551922), ), ((2.637761, 2.274369, 2.291863), ), ((2.714809, 
    2.274369, 2.524433), ), ((2.234939, 2.274369, 2.425315), ), ((2.524433, 
    1.191036, 2.714809), ))
a.Surface(side1Faces=side1Faces1, name='CP-2-Bolt-1')
region4=a.surfaces['CP-2-Bolt-1']

s1 = a.instances['botFlange'].faces
side1Faces1 = s1.findAt(((0.671408, 1.274369, 3.766513), ), ((0.584761, 
    1.274369, 3.275037), ), ((0.412134, 1.274369, 3.3076), ), ((0.455644, 
    1.274369, 3.638088), ), ((2.251486, 1.274369, 2.229011), ), ((2.720102, 
    1.274369, 2.699177), ), ((2.993746, 1.274369, 2.105237), ), ((2.605932, 
    1.274369, 1.780725), ), ((1.961762, 1.274369, 2.484966), ), ((3.638088, 
    1.274369, 0.455644), ), ((3.3076, 1.274369, 0.412134), ), ((2.378954, 
    1.274369, 3.004776), ))
a.Surface(side1Faces=side1Faces1, name='CP-3-botFlange')
region5=a.surfaces['CP-3-botFlange']

s1 = a.instances['nut-1'].faces
side1Faces1 = s1.findAt(((2.185135, 1.274369, 2.382557), ), ((2.771953, 
    1.274369, 2.539794), ), ((2.764612, 1.274369, 2.56719), ), ((2.177794, 
    1.274369, 2.409953), ), ((2.679636, 1.274369, 2.250056), ), ((2.270111, 
    1.274369, 2.699692), ))
a.Surface(side1Faces=side1Faces1, name='CP-3-nut-1')
region6=a.surfaces['CP-3-nut-1']

s1 = a.instances['botFlange'].faces
side1Faces1 = s1.findAt(((0.248761, 1.441036, 3.475142), ), ((0.24993, 
    1.607702, 3.505927), ))
a.Surface(side1Faces=side1Faces1, name='CP-4-botFlange')
region7=a.surfaces['CP-4-botFlange']

s1 = a.instances['HalfBolt-1'].faces
side1Faces1 = s1.findAt(((0.014229, 2.274369, 3.744586), ), ((0.014229, 
    1.191036, 3.255414), ), ((0.134616, 1.191036, 3.295297), ), ((0.014229, 
    2.149369, 3.255414), ), ((0.244586, 1.191036, 3.514229), ), ((0.014229, 
    1.607702, 3.744586), ), ((0.244586, 2.274369, 3.485771), ), ((0.134616, 
    2.274369, 3.704703), ))
a.Surface(side1Faces=side1Faces1, name='CP-4-HalfBolt-1')
region8=a.surfaces['CP-4-HalfBolt-1']

s1 = a.instances['botFlange'].faces
side1Faces1 = s1.findAt(((0.671408, 1.274369, 3.766513), ), ((0.584761, 
    1.274369, 3.275037), ), ((0.412134, 1.274369, 3.3076), ), ((0.455644, 
    1.274369, 3.638088), ), ((2.251486, 1.274369, 2.229011), ), ((2.720102, 
    1.274369, 2.699177), ), ((2.993746, 1.274369, 2.105237), ), ((2.605932, 
    1.274369, 1.780725), ), ((1.961762, 1.274369, 2.484966), ), ((3.638088, 
    1.274369, 0.455644), ), ((3.3076, 1.274369, 0.412134), ), ((2.378954, 
    1.274369, 3.004776), ))
a.Surface(side1Faces=side1Faces1, name='CP-5-botFlange')
region9=a.surfaces['CP-5-botFlange']

s1 = a.instances['HalfNut-1'].faces
side1Faces1 = s1.findAt(((0.014181, 1.274369, 3.78478), ), ((0.014181, 
    1.274369, 3.21522), ), ((0.303759, 1.274369, 3.514181), ), ((0.303759, 
    1.274369, 3.485819), ))
a.Surface(side1Faces=side1Faces1, name='CP-5-HalfNut-1')
region10=a.surfaces['CP-5-HalfNut-1']

s1 = a.instances['botFlange'].faces
side1Faces1 = s1.findAt(((3.505927, 1.441036, 0.24993), ), ((3.475142, 
    1.607702, 0.248761), ))
a.Surface(side1Faces=side1Faces1, name='CP-6-botFlange')
region11=a.surfaces['CP-6-botFlange']

s1 = a.instances['HalfBolt-2'].faces
side1Faces1 = s1.findAt(((3.255414, 2.274369, 0.014229), ), ((3.744586, 
    1.191036, 0.014229), ), ((3.704703, 1.191036, 0.134616), ), ((3.744586, 
    2.149369, 0.014229), ), ((3.485771, 1.191036, 0.244586), ), ((3.255414, 
    1.607702, 0.014229), ), ((3.514229, 2.274369, 0.244586), ), ((3.295297, 
    2.274369, 0.134616), ))
a.Surface(side1Faces=side1Faces1, name='CP-6-HalfBolt-2')
region12=a.surfaces['CP-6-HalfBolt-2']

s1 = a.instances['botFlange'].faces
side1Faces1 = s1.findAt(((0.671408, 1.274369, 3.766513), ), ((0.584761, 
    1.274369, 3.275037), ), ((0.412134, 1.274369, 3.3076), ), ((0.455644, 
    1.274369, 3.638088), ), ((2.251486, 1.274369, 2.229011), ), ((2.720102, 
    1.274369, 2.699177), ), ((2.993746, 1.274369, 2.105237), ), ((2.605932, 
    1.274369, 1.780725), ), ((1.961762, 1.274369, 2.484966), ), ((3.638088, 
    1.274369, 0.455644), ), ((3.3076, 1.274369, 0.412134), ), ((2.378954, 
    1.274369, 3.004776), ))
a.Surface(side1Faces=side1Faces1, name='CP-7-botFlange')
region13=a.surfaces['CP-7-botFlange']

s1 = a.instances['HalfNut-2'].faces
side1Faces1 = s1.findAt(((3.21522, 1.274369, 0.014181), ), ((3.78478, 1.274369, 
    0.014181), ), ((3.485819, 1.274369, 0.303759), ), ((3.514181, 1.274369, 
    0.303759), ))
a.Surface(side1Faces=side1Faces1, name='CP-7-HalfNut-2')
region14=a.surfaces['CP-7-HalfNut-2']

s1 = a.instances['topFlange'].faces
side1Faces1 = s1.findAt(((3.638088, 1.899369, 0.455644), ), ((3.3076, 1.899369, 
    0.412134), ), ((2.606112, 1.899369, 0.518247), ), ((2.08829, 1.899369, 
    1.657382), ), ((2.484966, 1.899369, 1.961762), ), ((3.004776, 1.899369, 
    2.378954), ), ((3.275037, 1.899369, 0.584761), ), ((2.64859, 1.899369, 
    0.304698), ), ((3.766513, 1.899369, 0.671408), ), ((2.699177, 1.899369, 
    2.720102), ), ((2.229011, 1.899369, 2.251486), ), ((1.322431, 1.899369, 
    1.913591), ), ((0.304698, 1.899369, 2.64859), ), ((2.105237, 1.899369, 
    2.993746), ), ((0.412134, 1.899369, 3.3076), ), ((1.854092, 1.899369, 
    1.915779), ), ((0.455644, 1.899369, 3.638088), ), ((1.780725, 1.899369, 
    2.605932), ))
a.Surface(side1Faces=side1Faces1, name='CP-8-topFlange')
region15=a.surfaces['CP-8-topFlange']

s1 = a.instances['Gasket-1'].faces
side1Faces1 = s1.findAt(((0.489318, 1.899369, 2.615944), ), ((0.600967, 
    1.899369, 3.272109), ), ((0.471734, 1.899369, 3.63601), ), ((1.452183, 
    1.899369, 1.825786), ), ((1.974047, 1.899369, 2.475236), ), ((2.393798, 
    1.899369, 2.992963), ), ((1.678072, 1.899369, 1.620618), ), ((0.42659, 
    1.899369, 3.305748), ), ((2.732854, 1.899369, 2.68381), ), ((1.920119, 
    1.899369, 1.312946), ), ((2.59393, 1.899369, 1.806165), ), ((3.004131, 
    1.899369, 2.090392), ), ((0.690043, 1.899369, 3.763144), ), ((2.650079, 
    1.899369, 0.291585), ), ((2.262862, 1.899369, 2.219321), ), ((0.316163, 
    1.899369, 2.647213), ), ((3.796798, 1.899369, 0.206727), ), ((3.309401, 
    1.899369, 0.397671), ))
a.Surface(side1Faces=side1Faces1, name='CP-8-Gasket-1')
region16=a.surfaces['CP-8-Gasket-1']

s1 = a.instances['topFlange'].faces
side1Faces1 = s1.findAt(((2.309741, 2.232702, 2.287174), ), ((2.640839, 
    2.232702, 2.661838), ), ((2.661838, 2.066036, 2.640839), ), ((2.287174, 
    2.066036, 2.309741), ))
a.Surface(side1Faces=side1Faces1, name='CP-9-topFlange')
region17=a.surfaces['CP-9-topFlange']

s1 = a.instances['Bolt-1'].faces
side1Faces1 = s1.findAt(((2.425315, 1.191036, 2.234939), ), ((2.397826, 
    2.274369, 2.242304), ), ((2.311987, 2.274369, 2.657884), ), ((2.291863, 
    1.191036, 2.637761), ), ((2.657884, 1.191036, 2.311987), ), ((2.551922, 
    2.274369, 2.707443), ), ((2.242304, 1.191036, 2.397826), ), ((2.707443, 
    1.191036, 2.551922), ), ((2.637761, 2.274369, 2.291863), ), ((2.714809, 
    2.274369, 2.524433), ), ((2.234939, 2.274369, 2.425315), ), ((2.524433, 
    1.191036, 2.714809), ))
a.Surface(side1Faces=side1Faces1, name='CP-9-Bolt-1')
region18=a.surfaces['CP-9-Bolt-1']

s1 = a.instances['topFlange'].faces
side1Faces1 = s1.findAt(((3.766513, 2.399369, 0.671408), ), ((3.275037, 
    2.399369, 0.584761), ), ((3.3076, 2.399369, 0.412134), ), ((3.638088, 
    2.399369, 0.455644), ), ((2.229011, 2.399369, 2.251486), ), ((2.699177, 
    2.399369, 2.720102), ), ((2.105237, 2.399369, 2.993746), ), ((1.780725, 
    2.399369, 2.605932), ), ((2.484966, 2.399369, 1.961762), ), ((0.455644, 
    2.399369, 3.638088), ), ((0.412134, 2.399369, 3.3076), ), ((3.004776, 
    2.399369, 2.378954), ))
a.Surface(side1Faces=side1Faces1, name='CP-10-topFlange')
region19=a.surfaces['CP-10-topFlange']

s1 = a.instances['Bolt-1'].faces
side1Faces1 = s1.findAt(((2.177794, 2.399369, 2.409953), ), ((2.56719, 
    2.399369, 2.764612), ), ((2.185135, 2.399369, 2.382557), ), ((2.699692, 
    2.399369, 2.270111), ), ((2.539794, 2.399369, 2.771953), ), ((2.409953, 
    2.399369, 2.177794), ))
a.Surface(side1Faces=side1Faces1, name='CP-10-Bolt-1')
region20=a.surfaces['CP-10-Bolt-1']

s1 = a.instances['topFlange'].faces
side1Faces1 = s1.findAt(((3.766513, 2.399369, 0.671408), ), ((3.275037, 
    2.399369, 0.584761), ), ((3.3076, 2.399369, 0.412134), ), ((3.638088, 
    2.399369, 0.455644), ), ((2.229011, 2.399369, 2.251486), ), ((2.699177, 
    2.399369, 2.720102), ), ((2.105237, 2.399369, 2.993746), ), ((1.780725, 
    2.399369, 2.605932), ), ((2.484966, 2.399369, 1.961762), ), ((0.455644, 
    2.399369, 3.638088), ), ((0.412134, 2.399369, 3.3076), ), ((3.004776, 
    2.399369, 2.378954), ))
a.Surface(side1Faces=side1Faces1, name='CP-11-topFlange')
region21=a.surfaces['CP-11-topFlange']

s1 = a.instances['HalfBolt-1'].faces
side1Faces1 = s1.findAt(((0.014181, 2.399369, 3.78478), ), ((0.014181, 
    2.399369, 3.21522), ), ((0.303759, 2.399369, 3.514181), ), ((0.164161, 
    2.399369, 3.244027), ))
a.Surface(side1Faces=side1Faces1, name='CP-11-HalfBolt-1')
region22=a.surfaces['CP-11-HalfBolt-1']

s1 = a.instances['topFlange'].faces
side1Faces1 = s1.findAt(((0.24993, 2.232702, 3.505927), ), ((0.248761, 
    2.066036, 3.475142), ))
a.Surface(side1Faces=side1Faces1, name='CP-12-topFlange')
region23=a.surfaces['CP-12-topFlange']

s1 = a.instances['HalfBolt-1'].faces
side1Faces1 = s1.findAt(((0.014229, 2.274369, 3.744586), ), ((0.014229, 
    1.191036, 3.255414), ), ((0.134616, 1.191036, 3.295297), ), ((0.014229, 
    2.149369, 3.255414), ), ((0.244586, 1.191036, 3.514229), ), ((0.014229, 
    1.607702, 3.744586), ), ((0.244586, 2.274369, 3.485771), ), ((0.134616, 
    2.274369, 3.704703), ))
a.Surface(side1Faces=side1Faces1, name='CP-12-HalfBolt-1')
region24=a.surfaces['CP-12-HalfBolt-1']

s1 = a.instances['topFlange'].faces
side1Faces1 = s1.findAt(((3.766513, 2.399369, 0.671408), ), ((3.275037, 
    2.399369, 0.584761), ), ((3.3076, 2.399369, 0.412134), ), ((3.638088, 
    2.399369, 0.455644), ), ((2.229011, 2.399369, 2.251486), ), ((2.699177, 
    2.399369, 2.720102), ), ((2.105237, 2.399369, 2.993746), ), ((1.780725, 
    2.399369, 2.605932), ), ((2.484966, 2.399369, 1.961762), ), ((0.455644, 
    2.399369, 3.638088), ), ((0.412134, 2.399369, 3.3076), ), ((3.004776, 
    2.399369, 2.378954), ))
a.Surface(side1Faces=side1Faces1, name='CP-13-topFlange')
region25=a.surfaces['CP-13-topFlange']

s1 = a.instances['HalfBolt-2'].faces
side1Faces1 = s1.findAt(((3.21522, 2.399369, 0.014181), ), ((3.78478, 2.399369, 
    0.014181), ), ((3.485819, 2.399369, 0.303759), ), ((3.755973, 2.399369, 
    0.164161), ))
a.Surface(side1Faces=side1Faces1, name='CP-13-HalfBolt-2')
region26=a.surfaces['CP-13-HalfBolt-2']

s1 = a.instances['topFlange'].faces
side1Faces1 = s1.findAt(((3.475142, 2.232702, 0.248761), ), ((3.505927, 
    2.066036, 0.24993), ))
a.Surface(side1Faces=side1Faces1, name='CP-14-topFlange')
region27=a.surfaces['CP-14-topFlange']

s1 = a.instances['HalfBolt-2'].faces
side1Faces1 = s1.findAt(((3.255414, 2.274369, 0.014229), ), ((3.744586, 
    1.191036, 0.014229), ), ((3.704703, 1.191036, 0.134616), ), ((3.744586, 
    2.149369, 0.014229), ), ((3.485771, 1.191036, 0.244586), ), ((3.255414, 
    1.607702, 0.014229), ), ((3.514229, 2.274369, 0.244586), ), ((3.295297, 
    2.274369, 0.134616), ))
a.Surface(side1Faces=side1Faces1, name='CP-14-HalfBolt-2')
region28=a.surfaces['CP-14-HalfBolt-2']

s1 = a.instances['Bolt-1'].faces
side1Faces1 = s1.findAt(((2.425315, 1.191036, 2.234939), ), ((2.397826, 
    2.274369, 2.242304), ), ((2.311987, 2.274369, 2.657884), ), ((2.291863, 
    1.191036, 2.637761), ), ((2.657884, 1.191036, 2.311987), ), ((2.551922, 
    2.274369, 2.707443), ), ((2.242304, 1.191036, 2.397826), ), ((2.707443, 
    1.191036, 2.551922), ), ((2.637761, 2.274369, 2.291863), ), ((2.714809, 
    2.274369, 2.524433), ), ((2.234939, 2.274369, 2.425315), ), ((2.524433, 
    1.191036, 2.714809), ))
a.Surface(side1Faces=side1Faces1, name='CP-15-Bolt-1')
region29=a.surfaces['CP-15-Bolt-1']

s1 = a.instances['Gasket-1'].faces
side1Faces1 = s1.findAt(((2.299025, 1.816036, 2.297174), ), ((2.662932, 
    1.857702, 2.639598), ), ((2.674297, 1.816036, 2.62564), ), ((2.321636, 
    1.816036, 2.277344), ))
a.Surface(side1Faces=side1Faces1, name='CP-15-Gasket-1')
region30=a.surfaces['CP-15-Gasket-1']

s1 = a.instances['HalfBolt-1'].faces
side1Faces1 = s1.findAt(((0.014229, 2.274369, 3.744586), ), ((0.014229, 
    1.191036, 3.255414), ), ((0.134616, 1.191036, 3.295297), ), ((0.014229, 
    2.149369, 3.255414), ), ((0.244586, 1.191036, 3.514229), ), ((0.014229, 
    1.607702, 3.744586), ), ((0.244586, 2.274369, 3.485771), ), ((0.134616, 
    2.274369, 3.704703), ))
a.Surface(side1Faces=side1Faces1, name='CP-16-HalfBolt-1')
region31=a.surfaces['CP-16-HalfBolt-1']

s1 = a.instances['Gasket-1'].faces
side1Faces1 = s1.findAt(((0.248761, 1.816036, 3.475142), ), ((0.24993, 
    1.857702, 3.505927), ))
a.Surface(side1Faces=side1Faces1, name='CP-16-Gasket-1')
region32=a.surfaces['CP-16-Gasket-1']

s1 = a.instances['HalfBolt-2'].faces
side1Faces1 = s1.findAt(((3.255414, 2.274369, 0.014229), ), ((3.744586, 
    1.191036, 0.014229), ), ((3.704703, 1.191036, 0.134616), ), ((3.744586, 
    2.149369, 0.014229), ), ((3.485771, 1.191036, 0.244586), ), ((3.255414, 
    1.607702, 0.014229), ), ((3.514229, 2.274369, 0.244586), ), ((3.295297, 
    2.274369, 0.134616), ))
a.Surface(side1Faces=side1Faces1, name='CP-17-HalfBolt-2')
region33=a.surfaces['CP-17-HalfBolt-2']

s1 = a.instances['Gasket-1'].faces
side1Faces1 = s1.findAt(((3.476313, 1.857702, 0.248875), ), ((3.505927, 
    1.816036, 0.24993), ))
a.Surface(side1Faces=side1Faces1, name='CP-17-Gasket-1')
region34=a.surfaces['CP-17-Gasket-1']

s1 = a.instances['Bolt-1'].faces
side1Faces1 = s1.findAt(((2.425315, 1.191036, 2.234939), ), ((2.397826, 
    2.274369, 2.242304), ), ((2.311987, 2.274369, 2.657884), ), ((2.291863, 
    1.191036, 2.637761), ), ((2.657884, 1.191036, 2.311987), ), ((2.551922, 
    2.274369, 2.707443), ), ((2.242304, 1.191036, 2.397826), ), ((2.707443, 
    1.191036, 2.551922), ), ((2.637761, 2.274369, 2.291863), ), ((2.714809, 
    2.274369, 2.524433), ), ((2.234939, 2.274369, 2.425315), ), ((2.524433, 
    1.191036, 2.714809), ))
a.Surface(side1Faces=side1Faces1, name='CP-18-Bolt-1')
region35=a.surfaces['CP-18-Bolt-1']

s1 = a.instances['nut-1'].faces
side1Faces1 = s1.findAt(((2.234939, 1.057702, 2.425315), ), ((2.714809, 
    1.057702, 2.524433), ), ((2.637761, 1.057702, 2.291863), ), ((2.242304, 
    1.166036, 2.397826), ), ((2.707443, 1.166036, 2.551922), ), ((2.311987, 
    1.057702, 2.657884), ))
a.Surface(side1Faces=side1Faces1, name='CP-18-nut-1')
region36=a.surfaces['CP-18-nut-1']

s1 = a.instances['HalfBolt-1'].faces
side1Faces1 = s1.findAt(((0.014229, 2.274369, 3.744586), ), ((0.014229, 
    1.191036, 3.255414), ), ((0.134616, 1.191036, 3.295297), ), ((0.014229, 
    2.149369, 3.255414), ), ((0.244586, 1.191036, 3.514229), ), ((0.014229, 
    1.607702, 3.744586), ), ((0.244586, 2.274369, 3.485771), ), ((0.134616, 
    2.274369, 3.704703), ))
a.Surface(side1Faces=side1Faces1, name='CP-19-HalfBolt-1')
region37=a.surfaces['CP-19-HalfBolt-1']

s1 = a.instances['HalfNut-1'].faces
side1Faces1 = s1.findAt(((0.014229, 1.166036, 3.255414), ), ((0.244586, 
    1.057702, 3.485771), ), ((0.014229, 1.057702, 3.744586), ), ((0.244586, 
    1.166036, 3.514229), ))
a.Surface(side1Faces=side1Faces1, name='CP-19-HalfNut-1')
region38=a.surfaces['CP-19-HalfNut-1']

s1 = a.instances['HalfBolt-2'].faces
side1Faces1 = s1.findAt(((3.255414, 2.274369, 0.014229), ), ((3.744586, 
    1.191036, 0.014229), ), ((3.704703, 1.191036, 0.134616), ), ((3.744586, 
    2.149369, 0.014229), ), ((3.485771, 1.191036, 0.244586), ), ((3.255414, 
    1.607702, 0.014229), ), ((3.514229, 2.274369, 0.244586), ), ((3.295297, 
    2.274369, 0.134616), ))
a.Surface(side1Faces=side1Faces1, name='CP-20-HalfBolt-2')
region39=a.surfaces['CP-20-HalfBolt-2']

s1 = a.instances['HalfNut-2'].faces
side1Faces1 = s1.findAt(((3.744586, 1.166036, 0.014229), ), ((3.514229, 
    1.057702, 0.244586), ), ((3.255414, 1.057702, 0.014229), ), ((3.485771, 
    1.166036, 0.244586), ))
a.Surface(side1Faces=side1Faces1, name='CP-20-HalfNut-2')
region40=a.surfaces['CP-20-HalfNut-2']

mdb.models['Model-1'].SurfaceToSurfaceContactStd(
    name='CP-1-botFlange-Gasket-1', createStepName='Initial', master=region1, 
    slave=region2, sliding=SMALL, enforcement=SURFACE_TO_SURFACE, 
    interactionProperty='Friction-0p4', adjustMethod=TOLERANCE, 
    adjustTolerance=0.01)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(name='CP-2-botFlange-Bolt-1', 
    createStepName='Initial', master=region3, slave=region4, sliding=SMALL, 
    enforcement=SURFACE_TO_SURFACE, interactionProperty='Friction-0p1', 
    adjustMethod=NONE)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(name='CP-3-botFlange-nut-1', 
    createStepName='Initial', master=region5, slave=region6, sliding=SMALL, 
    enforcement=SURFACE_TO_SURFACE, interactionProperty='Friction-0p1', 
    adjustMethod=TOLERANCE, adjustTolerance=0.01)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(
    name='CP-4-botFlange-HalfBolt-1', createStepName='Initial', master=region7, 
    slave=region8, sliding=SMALL, enforcement=SURFACE_TO_SURFACE, 
    interactionProperty='Friction-0p1', adjustMethod=NONE)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(
    name='CP-5-botFlange-HalfNut-1', createStepName='Initial', master=region9, 
    slave=region10, sliding=SMALL, enforcement=SURFACE_TO_SURFACE, 
    interactionProperty='Friction-0p1', adjustMethod=TOLERANCE, 
    adjustTolerance=0.01)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(
    name='CP-6-botFlange-HalfBolt-2', createStepName='Initial', 
    master=region11, slave=region12, sliding=SMALL, 
    enforcement=SURFACE_TO_SURFACE, interactionProperty='Friction-0p1', 
    adjustMethod=NONE)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(
    name='CP-7-botFlange-HalfNut-2', createStepName='Initial', master=region13, 
    slave=region14, sliding=SMALL, enforcement=SURFACE_TO_SURFACE, 
    interactionProperty='Friction-0p1', adjustMethod=TOLERANCE, 
    adjustTolerance=0.01)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(
    name='CP-8-topFlange-Gasket-1', createStepName='Initial', master=region15, 
    slave=region16, sliding=SMALL, enforcement=SURFACE_TO_SURFACE, 
    interactionProperty='Friction-0p4', adjustMethod=TOLERANCE, 
    adjustTolerance=0.01)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(name='CP-9-topFlange-Bolt-1', 
    createStepName='Initial', master=region17, slave=region18, sliding=SMALL, 
    enforcement=SURFACE_TO_SURFACE, interactionProperty='Friction-0p1', 
    adjustMethod=NONE)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(name='CP-10-topFlange-Bolt-1', 
    createStepName='Initial', master=region19, slave=region20, sliding=SMALL, 
    enforcement=SURFACE_TO_SURFACE, interactionProperty='Friction-0p1', 
    adjustMethod=TOLERANCE, adjustTolerance=0.01)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(
    name='CP-11-topFlange-HalfBolt-1', createStepName='Initial', 
    master=region21, slave=region22, sliding=SMALL, 
    enforcement=SURFACE_TO_SURFACE, interactionProperty='Friction-0p1', 
    adjustMethod=TOLERANCE, adjustTolerance=0.01)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(
    name='CP-12-topFlange-HalfBolt-1', createStepName='Initial', 
    master=region23, slave=region24, sliding=SMALL, 
    enforcement=SURFACE_TO_SURFACE, interactionProperty='Friction-0p1', 
    adjustMethod=NONE)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(
    name='CP-13-topFlange-HalfBolt-2', createStepName='Initial', 
    master=region25, slave=region26, sliding=SMALL, 
    enforcement=SURFACE_TO_SURFACE, interactionProperty='Friction-0p1', 
    adjustMethod=TOLERANCE, adjustTolerance=0.01)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(
    name='CP-14-topFlange-HalfBolt-2', createStepName='Initial', 
    master=region27, slave=region28, sliding=SMALL, 
    enforcement=SURFACE_TO_SURFACE, interactionProperty='Friction-0p1', 
    adjustMethod=NONE)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(name='CP-15-Bolt-1-Gasket-1', 
    createStepName='Initial', master=region29, slave=region30, sliding=SMALL, 
    enforcement=SURFACE_TO_SURFACE, interactionProperty='Friction-0p4', 
    adjustMethod=NONE)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(
    name='CP-16-HalfBolt-1-Gasket-1', createStepName='Initial', 
    master=region31, slave=region32, sliding=SMALL, 
    enforcement=SURFACE_TO_SURFACE, interactionProperty='Friction-0p4', 
    adjustMethod=NONE)
mdb.models['Model-1'].SurfaceToSurfaceContactStd(
    name='CP-17-HalfBolt-2-Gasket-1', createStepName='Initial', 
    master=region33, slave=region34, sliding=SMALL, 
    enforcement=SURFACE_TO_SURFACE, interactionProperty='Friction-0p4', 
    adjustMethod=NONE)
mdb.models['Model-1'].Tie(name='CP-18-Bolt-1-nut-1', master=region35, 
    slave=region36, positionToleranceMethod=COMPUTED, adjust=ON, 
    constraintEnforcement=SURFACE_TO_SURFACE)
mdb.models['Model-1'].Tie(name='CP-19-HalfBolt-1-HalfNut-1', master=region37, 
    slave=region38, positionToleranceMethod=COMPUTED, adjust=ON, 
    constraintEnforcement=SURFACE_TO_SURFACE)
mdb.models['Model-1'].Tie(name='CP-20-HalfBolt-2-HalfNut-2', master=region39, 
    slave=region40, positionToleranceMethod=COMPUTED, adjust=ON, 
    constraintEnforcement=SURFACE_TO_SURFACE)

mdb.Job(name='boltedFlange', model='Model-1', type=ANALYSIS)

#
# genral contact model
#
mdb.Model(name='Model-2', objectToCopy=mdb.models['Model-1'])
a=mdb.models['Model-2'].rootAssembly

p = mdb.models['Model-2'].parts['gasket']
s = p.faces

side1Faces = s.findAt(((2.615944, 0.489318, 0.125), ), ((1.985436, 0.240926, 
    0.083333), ), ((2.647213, 0.316163, 0.0), ), ((3.970871, 0.481853, 
    0.041667), ), ((3.763144, 0.690043, 0.0), ), ((3.272109, 0.600967, 0.125), 
    ), ((3.63601, 0.471734, 0.125), ), ((3.305748, 0.42659, 0.0), ), ((
    3.763144, 0.690043, 0.125), ), ((3.125346, 2.49644, 0.083333), ), ((
    2.992963, 2.393798, 0.0), ), ((3.305748, 0.42659, 0.125), ), ((2.475236, 
    1.974047, 0.0), ), ((1.825786, 1.452183, 0.125), ), ((1.962497, 0.385495, 
    0.041667), ), ((2.615944, 0.489318, 0.0), ), ((1.386379, 1.441511, 
    0.041667), ), ((1.825786, 1.452183, 0.0), ), ((1.620618, 1.678072, 0.125), 
    ), ((2.305642, 2.290861, 0.041667), ), ((2.212732, 2.276668, 0.0), ), ((
    2.475236, 1.974047, 0.125), ), ((2.639598, 2.662932, 0.083333), ), ((
    2.669284, 2.739407, 0.125), ), ((2.772758, 2.883022, 0.083333), ), ((
    3.63601, 0.471734, 0.0), ), ((1.620618, 1.678072, 0.0), ), ((1.115108, 
    1.660281, 0.041667), ), ((1.312946, 1.920119, 0.125), ), ((3.272109, 
    0.600967, 0.0), ), ((1.806165, 2.59393, 0.125), ), ((2.669284, 2.739407, 
    0.0), ), ((2.090392, 3.004131, 0.125), ), ((3.935764, 0.713974, 0.083333), 
    ), ((0.345573, 3.865783, 0.0), ), ((2.27815, 3.287862, 0.083333), ), ((
    2.992963, 2.393798, 0.125), ), ((0.397671, 3.309401, 0.0), ), ((1.562673, 
    1.24822, 0.041667), ), ((0.291585, 2.650079, 0.125), ), ((2.212732, 
    2.276668, 0.125), ), ((1.312946, 1.920119, 0.0), ), ((-0.015263, 3.083482, 
    0.083333), ), ((0.291585, 2.650079, 0.0), ), ((2.666667, 0.0, 0.083333), ), 
    ((1.806165, 2.59393, 0.0), ), ((2.612738, 2.683424, 0.041667), ), ((
    3.459445, 0.246689, 0.041667), ), ((0.249371, 3.517727, 0.041667), ), ((
    2.647213, 0.316163, 0.125), ), ((0.340507, 3.531515, 0.125), ), ((3.083333, 
    0.0, 0.041667), ), ((-0.0132, 2.666634, 0.041667), ), ((3.833333, 0.0, 
    0.041667), ), ((-0.019386, 3.916404, 0.041667), ), ((3.517727, 0.249371, 
    0.083333), ), ((0.397671, 3.309401, 0.125), ), ((0.222352, 1.987601, 
    0.041667), ), ((0.444704, 3.975203, 0.083333), ), ((2.268407, 2.333908, 
    0.041667), ), ((0.247486, 3.464633, 0.083333), ), ((2.090392, 3.004131, 
    0.0), ))
p.Surface(side1Faces=side1Faces, name='all')

side1Faces = s.findAt(((2.615944, 0.489318, 0.125), ), ((3.272109, 0.600967, 
    0.125), ), ((3.63601, 0.471734, 0.125), ), ((3.763144, 0.690043, 0.125), ), 
    ((3.305748, 0.42659, 0.125), ), ((1.825786, 1.452183, 0.125), ), ((
    1.620618, 1.678072, 0.125), ), ((2.475236, 1.974047, 0.125), ), ((2.669284, 
    2.739407, 0.125), ), ((1.312946, 1.920119, 0.125), ), ((1.806165, 2.59393, 
    0.125), ), ((2.090392, 3.004131, 0.125), ), ((2.992963, 2.393798, 0.125), 
    ), ((0.291585, 2.650079, 0.125), ), ((2.212732, 2.276668, 0.125), ), ((
    2.647213, 0.316163, 0.125), ), ((0.340507, 3.531515, 0.125), ), ((0.397671, 
    3.309401, 0.125), ))
p.Surface(side1Faces=side1Faces, name='top')

side1Faces = s.findAt(((2.647213, 0.316163, 0.0), ), ((3.763144, 0.690043, 
    0.0), ), ((3.305748, 0.42659, 0.0), ), ((2.992963, 2.393798, 0.0), ), ((
    2.475236, 1.974047, 0.0), ), ((2.615944, 0.489318, 0.0), ), ((1.825786, 
    1.452183, 0.0), ), ((2.212732, 2.276668, 0.0), ), ((3.63601, 0.471734, 
    0.0), ), ((1.620618, 1.678072, 0.0), ), ((3.272109, 0.600967, 0.0), ), ((
    2.669284, 2.739407, 0.0), ), ((0.345573, 3.865783, 0.0), ), ((0.397671, 
    3.309401, 0.0), ), ((1.312946, 1.920119, 0.0), ), ((0.291585, 2.650079, 
    0.0), ), ((1.806165, 2.59393, 0.0), ), ((2.090392, 3.004131, 0.0), ))
p.Surface(side1Faces=side1Faces, name='bot')

p = mdb.models['Model-2'].parts['flange']
s = p.faces

side1Faces = s.findAt(
    ((0.455644, 1.774369, 3.638088), ), ((0.412134, 1.774369, 
    3.3076), ), ((0.518247, 1.774369, 2.606112), ), ((1.657382, 1.774369, 
    2.08829), ), ((1.961762, 1.774369, 2.484966), ), ((2.378954, 1.774369, 
    3.004776), ), ((0.584761, 1.774369, 3.275037), ), ((0.304698, 1.774369, 
    2.64859), ), ((0.671408, 1.774369, 3.766513), ), ((2.726169, 1.774369, 
    2.688951), ), ((2.265516, 1.774369, 2.22139), ), ((1.913591, 1.774369, 
    1.322431), ), ((2.64859, 1.774369, 0.304698), ), ((2.993746, 1.774369, 
    2.105237), ), ((3.3076, 1.774369, 0.412134), ), ((1.915779, 1.774369, 
    1.854092), ), ((3.638088, 1.774369, 0.455644), ), ((2.605932, 1.774369, 
    1.780725), ))
p.Surface(side1Faces=side1Faces, name='inner')

side1Faces = s.findAt(
    ((0.671408, 1.274369, 3.766513), ), ((0.584761, 1.274369, 
    3.275037), ), ((0.412134, 1.274369, 3.3076), ), ((0.455644, 1.274369, 
    3.638088), ), ((2.265516, 1.274369, 2.22139), ), ((2.726169, 1.274369, 
    2.688951), ), ((2.993746, 1.274369, 2.105237), ), ((2.605932, 1.274369, 
    1.780725), ), ((1.961762, 1.274369, 2.484966), ), ((3.638088, 1.274369, 
    0.455644), ), ((3.3076, 1.274369, 0.412134), ), ((2.378954, 1.274369, 
    3.004776), ))
p.Surface(side1Faces=side1Faces, name='outer')

p = mdb.models['Model-2'].parts['bolt']
s = p.faces

side1Faces = s.findAt(
    ((-0.300075, 1.225, 0.027932), ), ((0.174227, 1.225, 
    0.245907), ), ((-0.300075, 1.225, -0.027932), ), ((0.174227, 1.225, 
    -0.245907), ), ((0.125848, 1.225, 0.273838), ), ((-0.125848, 1.225, 
    -0.273838), ))
p.Surface(side1Faces=side1Faces, name='head')

p = mdb.models['Model-2'].parts['halfBolt']
s = p.faces

side1Faces = s.findAt(
    ((0.253717, 1.225, 0.130108), ), ((-0.239536, 1.225, 
    -0.154671), ), ((0.174227, 1.225, -0.245907), ), ((-0.125848, 1.225, 
    -0.273838), ))
p.Surface(side1Faces=side1Faces, name='head')

p = mdb.models['Model-2'].parts['nut']
s = p.faces

side1Faces = s.findAt(((-0.302217, -0.021137, 0.0), ), ((0.302217, -0.021137, 
    0.0), ), ((0.302217, 0.021137, 0.0), ), ((-0.302217, 0.021137, 0.0), ), ((
    0.132804, -0.272296, 0.0), ), ((-0.132804, 0.272296, 0.0), ))
p.Surface(side1Faces=side1Faces, name='nut')

p = mdb.models['Model-2'].parts['halfNut']
s = p.faces

side1Faces = s.findAt(((-0.014181, -0.28478, 0.0), ), ((-0.014181, 0.28478, 
    0.0), ), ((-0.302217, -0.021137, 0.0), ), ((-0.302217, 0.021137, 0.0), ))
p.Surface(side1Faces=side1Faces, name='nut')

a.SurfaceByMerge(name='allNuts', surfaces=(
    a.instances['HalfNut-1'].surfaces['nut'], 
    a.instances['HalfNut-2'].surfaces['nut'], 
    a.instances['nut-1'].surfaces['nut'], ))
a.SurfaceByMerge(name='allHeads', surfaces=(
    a.instances['Bolt-1'].surfaces['head'], 
    a.instances['HalfBolt-1'].surfaces['head'], 
    a.instances['HalfBolt-2'].surfaces['head'], ))

mdb.models['Model-2'].interactions.delete(('CP-1-botFlange-Gasket-1', 
    'CP-2-botFlange-Bolt-1', 'CP-3-botFlange-nut-1', 
    'CP-4-botFlange-HalfBolt-1', 'CP-5-botFlange-HalfNut-1', 
    'CP-6-botFlange-HalfBolt-2', 'CP-7-botFlange-HalfNut-2', 
    'CP-8-topFlange-Gasket-1', 'CP-9-topFlange-Bolt-1', 
    'CP-10-topFlange-Bolt-1', 'CP-11-topFlange-HalfBolt-1', 
    'CP-12-topFlange-HalfBolt-1', 'CP-13-topFlange-HalfBolt-2', 
    'CP-14-topFlange-HalfBolt-2', 'CP-15-Bolt-1-Gasket-1', 
    'CP-16-HalfBolt-1-Gasket-1', 'CP-17-HalfBolt-2-Gasket-1', ))

mdb.models['Model-2'].rootAssembly.deleteSurfaces(surfaceNames=(
    'CP-1-Gasket-1', 'CP-1-botFlange', 'CP-2-Bolt-1', 'CP-2-botFlange', 
    'CP-3-botFlange', 'CP-3-nut-1', 'CP-4-HalfBolt-1', 'CP-4-botFlange', 
    'CP-5-HalfNut-1', 'CP-5-botFlange', 'CP-6-HalfBolt-2', 'CP-6-botFlange', 
    'CP-7-HalfNut-2', 'CP-7-botFlange', 'CP-8-Gasket-1', 'CP-8-topFlange', 
    'CP-9-Bolt-1', 'CP-9-topFlange', 'CP-10-Bolt-1', 'CP-10-topFlange', 
    'CP-11-HalfBolt-1', 'CP-11-topFlange', 'CP-12-HalfBolt-1', 
    'CP-12-topFlange', 'CP-13-HalfBolt-2', 'CP-13-topFlange', 
    'CP-14-HalfBolt-2', 'CP-14-topFlange', 'CP-15-Bolt-1', 'CP-15-Gasket-1',
    'CP-16-Gasket-1', 'CP-16-HalfBolt-1', 'CP-17-Gasket-1', 'CP-17-HalfBolt-2', ))

mdb.models['Model-2'].StdInitialization(name='adjust-1', openingTolerance=1e-05)
mdb.models['Model-2'].ContactStd(name='general', createStepName='Initial')
mdb.models['Model-2'].interactions['general'].includedPairs.setValuesInStep(
    stepName='Initial', useAllstar=ON)

r22=mdb.models['Model-2'].rootAssembly.instances['Gasket-1'].surfaces['all']
mdb.models['Model-2'].interactions['general'].contactPropertyAssignments.appendInStep(
    stepName='Initial',
    assignments=
    ((GLOBAL, SELF, 'Friction-0p1'),
    (GLOBAL, r22, 'Friction-0p4')))

r11=mdb.models['Model-2'].rootAssembly.instances['Gasket-1'].surfaces['bot']
r12=mdb.models['Model-2'].rootAssembly.instances['botFlange'].surfaces['inner']
r21=mdb.models['Model-2'].rootAssembly.instances['Gasket-1'].surfaces['top']
r22=mdb.models['Model-2'].rootAssembly.instances['topFlange'].surfaces['inner']
r31=mdb.models['Model-2'].rootAssembly.surfaces['allHeads']
r32=mdb.models['Model-2'].rootAssembly.instances['topFlange'].surfaces['outer']
r41=mdb.models['Model-2'].rootAssembly.surfaces['allNuts']
r42=mdb.models['Model-2'].rootAssembly.instances['botFlange'].surfaces['outer']
mdb.models['Model-2'].interactions['general'].initializationAssignments.appendInStep(
    stepName='Initial', assignments=(
    (r11, r12, 'adjust-1'),
    (r21, r22, 'adjust-1'),
    (r31, r32, 'adjust-1'),
    (r41, r42, 'adjust-1')))

a = mdb.models['Model-2'].rootAssembly
a.regenerate()

mdb.Job(name='boltedFlange_gc', model='Model-2', description='', type=ANALYSIS)

mdb.jobs['boltedFlange'].submit()
mdb.jobs['boltedFlange'].waitForCompletion()
mdb.jobs['boltedFlange_gc'].submit()
mdb.jobs['boltedFlange_gc'].waitForCompletion()
psps Хорошие слова (Vavan Metallist).
Из всего того делаю вывод: в ЛИРЕ можно считать фланцевые соединения (не доверяя конечно только ей) но если железо супер-пупер продвинутое. Иначе нужно переходить на Ансис, может Робот, больше не знаю. За основу брать какой нибудь аналог (есть в тех же рекомендациях, можно взять КОМЕТУ или Инженерный Калькулятор от ЛИРЫ) и пересчитать его. Если более-менее будут похожие результаты - можно помалу и проектировать. Имхо это будет проще, чем перечитывать талмуды теоретических изысканий на эту тему. Хотя для мозгов лучше второе.


это точно. но с программами проще, дойти до результата немного быстрее. без книг никак. вопросов остается много и никакой уверенности в том, что насчитала программа, может схему не так задал или еще что. она инструмент, хоть и тонкий.
Миниатюры
Нажмите на изображение для увеличения
Название: flange.jpg
Просмотров: 322
Размер:	71.2 Кб
ID:	59537  
Вложения
Тип файла: rar ws_contact_flange_answer.rar (5.4 Кб, 109 просмотров)

Последний раз редактировалось Chardash, 14.05.2011 в 17:31.
Chardash вне форума  
 
Непрочитано 14.05.2011, 21:18
#525
таи


 
Регистрация: 28.08.2008
Сообщений: 2,294


Цитата:
Сообщение от Ильнур Посмотреть сообщение
Таи, Катюшин не противоречит "Рекомендациям..", а лишь разжевывает и уточняет. При этом прямо ссылается на "Рекомендации...", на СНиП и другие источники.
Offtop: Типа посыл в прошлое.
Offtop: Не знаю, как Вам - мне Катюшин практически не помог. Сухая теория без примеров - как рассуждения без практики.

Учение без примеров вредно, примеры без учения опасны.
Впрочем - ни на чем не настаиваю.
таи вне форума  
 
Непрочитано 15.05.2011, 12:01
#526
olf


 
Регистрация: 12.05.2011
Сообщений: 4


Посоветуйте пожалуйста,товарищи проектировщики! Нужен жесткий узел в раме каркаса,но на монтаже хотят избежать сварочные работы.Получается только на высокопрочных болтах можно запроектировать? Но в этом случае удорожание.
olf вне форума  
 
Непрочитано 09.06.2014, 00:19
#527
bigden


 
Регистрация: 05.08.2008
Сообщений: 828


объясните пож. что это за дикая фраза написана в СП 70.13330.2012 п.4.6.12 "Гайки, затянутые до расчетного крутящего момента в соответствии с п.4.6.9 или поворотом на заданный угол, следует дополнительно закреплять от самоотвинчивания с помощью установки пружинных шайб, вторых гаек или другими способами запрещается"
две взаимоисключающих рекомендации: следует и запрещается
bigden вне форума  
 
Непрочитано 09.06.2014, 09:01
#528
Ильнур

КМ (+КМД), КЖ (КЖФ)
 
Регистрация: 30.05.2007
Далече
Сообщений: 25,625


Цитата:
Сообщение от bigden Посмотреть сообщение
...что это за дикая фраза написана в СП ...
Нормальная дикая фраза для современных СП. Символизирует суть современного абсурдного устройства жизни. Как например кончита европы.
__________________
Воскресе
Ильнур вне форума  
 
Непрочитано 01.07.2014, 19:02
#529
user277418


 
Регистрация: 21.04.2010
Сообщений: 450


Цитата:
Сообщение от bigden Посмотреть сообщение
объясните пож. что это за дикая фраза написана в СП 70.13330.2012 п.4.6.12 "Гайки, затянутые до расчетного крутящего момента в соответствии с п.4.6.9 или поворотом на заданный угол, следует дополнительно закреплять от самоотвинчивания с помощью установки пружинных шайб, вторых гаек или другими способами запрещается"
две взаимоисключающих рекомендации: следует и запрещается
присоединяюсь к вопросу...
user277418 вне форума  
 
Непрочитано 01.07.2014, 19:27
1 | #530
Бахил

?
 
Регистрация: 17.06.2014
Царицын
Сообщений: 12,801


Между словами шайб и вторых пропущено закрепление с помощью
__________________
Меньше знаешь - крепче зубы.
Бахил вне форума  
 
Непрочитано 01.07.2014, 21:19
#531
user277418


 
Регистрация: 21.04.2010
Сообщений: 450


Разве установка контргаек на натянутые до упора болты запрещена??
__________________
Нужно бежать со всех ног, чтобы только оставаться на месте...
«Алиса в стране чудес» Льюис Кэрролл
user277418 вне форума  
 
Непрочитано 01.07.2014, 22:31
#532
Бармаглотище

КМ, КМД
 
Регистрация: 24.05.2010
Тула
Сообщений: 8,030


не надо бредовые сп, разработанные для распила бабла, выделенного на их разработку, читать.
читайте нормальные снипы.
Бармаглотище вне форума  
 
Непрочитано 01.07.2014, 22:34
#533
ETCartman


 
Регистрация: 09.12.2008
Сообщений: 4,643


хорошо описан ответ на вопрос
http://www.boltscience.com/pages/basics2.htm
http://www.boltscience.com/pages/basics3.htm
ETCartman вне форума  
 
Непрочитано 01.07.2014, 22:59
#534
user277418


 
Регистрация: 21.04.2010
Сообщений: 450


Цитата:
Сообщение от ETCartman Посмотреть сообщение
Что-то не нашёл там пояснений по поводу контргайки... Если правильно понял, то там рассказывается про работу пружинящей шайбы...
__________________
Нужно бежать со всех ног, чтобы только оставаться на месте...
«Алиса в стране чудес» Льюис Кэрролл
user277418 вне форума  
 
Непрочитано 01.07.2014, 23:41
#535
ETCartman


 
Регистрация: 09.12.2008
Сообщений: 4,643


http://www.fhwa.dot.gov/bridge/signinspection02.cfm
ETCartman вне форума  
 
Непрочитано 02.07.2014, 00:00
#536
boris_r

Инженер
 
Регистрация: 23.03.2007
Сообщений: 744


Цитата:
Сообщение от Бармаглотище Посмотреть сообщение
не надо бредовые сп, разработанные для распила бабла, выделенного на их разработку, читать.
читайте нормальные снипы.
Об этой фразе в СП я писал примерно год назад и вот теперь, получил разъяснение, спасибо!
http://forum.dwg.ru/showpost.php?p=1124295&postcount=16
boris_r вне форума  
 
Непрочитано 02.07.2014, 00:08
#537
Бармаглотище

КМ, КМД
 
Регистрация: 24.05.2010
Тула
Сообщений: 8,030


Цитата:
Сообщение от ETCartman Посмотреть сообщение
Цитата:
Сообщение от ETCartman Посмотреть сообщение
а по-русски?
а то я английский учил в школе - но помню только нихт ферштейн
Бармаглотище вне форума  
 
Непрочитано 02.07.2014, 00:13
#538
ETCartman


 
Регистрация: 09.12.2008
Сообщений: 4,643


контрогайки наверно нигде не запрещены. если хотите еще одну гайку - кто вам запретит. хотя смысла в этом нет никакого
а вот пружинные шайбы не рекомендуется

Lock washers should not be used with high strength bolts. Their variability of deformation under load does not provide for proper bolt installation tension.

им в виду такие http://www.mcmaster.com/#standard-lock-washers/=sngjd8
ETCartman вне форума  
 
Непрочитано 02.07.2014, 10:45
#539
Бахил

?
 
Регистрация: 17.06.2014
Царицын
Сообщений: 12,801


Так чем предотвращать, если в контргайке смысла нет (с этим можно согласиться для высокопрочных болтов), а пружинные шайбы не рекомендуются?
__________________
Меньше знаешь - крепче зубы.
Бахил вне форума  
 
Непрочитано 02.07.2014, 10:47
#540
Бармаглотище

КМ, КМД
 
Регистрация: 24.05.2010
Тула
Сообщений: 8,030


натяжением до 70% прочности на разрыв
Бармаглотище вне форума  
Ответ
Вернуться   Форум DWG.RU > Архитектура и Строительство > Конструкции зданий и сооружений > Металлические конструкции > Предварительное натяжение высокопрочных болтов во фланцевых соединениях



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Предварительное натяжение болтов 13forever Прочее. Архитектура и строительство 86 20.11.2019 18:44
предварительное натяжение оттяжек мачты в Лире Romka Лира / Лира-САПР 5 05.08.2008 14:25
Предварительное натяжение оттяжек мачты Red Nova Конструкции зданий и сооружений 1 02.02.2008 19:14
Зазор в соединениях на высокопрочных болтах paha Прочее. Архитектура и строительство 1 17.05.2006 22:01