Bu çalışmada belirli bir yükseklikten kirişe çarpan cismin kirişe vermiş olduğu deformasyon hesabı için python kodları oluşturulmuştur.
import math
import akma
while True:
print("değerleri mm cinsinden giriniz.")
m=input('Kütle giriniz:')
m=float(m)
e=input('Elastisite modül giriniz:')
e=float(e)
b=input('Kiriş genişliğini giriniz:')
b=float(b)
h=input('Kiriş yüksekliğini giriniz:')
h=float(h)
l=input('Kirişin boyunu giriniz:')
l=float(l)
h2=input('Cismin bırakıldığı yüksekliği giriniz:')
h2=float(h2)
ataletmomenti=b*(h**3)/12
shm=m*9.81*(l**3)/(48*e*ataletmomenti)
print("Başlar mafsal destekli kirişte yükün ortadan basması ile ortaya çıkan seğim miktarı:",shm)
shock=math.sqrt(1+2*(h2/shm))
print("şok faktör",shock)
x=shm*shock
print("çarpma sonucu ortaya çıkan seğim:",x)
print("bu seğimi oluştırabilecek kuvvet:",shock*m*9.81)
maxmoment=shock*m*9.81*l/4
c=h/2
print("bu kuvvetin oluşturacağı max moment:",maxmoment)
gerilim=maxmoment*c/ataletmomenti
print("Çarpma sonrası kirişte oluşan gerilim:",gerilim)
mallist=["st33","st37-2","ust37-2","rst37-2","st37-3","st44-2","st44-3","st52-3","st50-2","st60-2","st70-2"]
print("kiriş malzemesi seç:",mallist)
istenenliste1=akma.yield1
istenenliste2=akma.yield2
istenenliste3=akma.yield3
istenenliste4=akma.yield4
istenenliste5=akma.yield5
cevap1=input("kalınlık değerine göre kaçıncı sütun(1/2/3/4/5):")
cevap1=int(cevap1)
cevap2=input("malzeme tipi seç:")
cevap2=str(cevap2)
if cevap1==1:
secilendeger=istenenliste1[cevap2]
print(secilendeger)
if (secilendeger>gerilim):
print("deformasyon elastik bölgede olur ve kiriş esnedikten sonra eski haline döner.")
else:
print("kiriş deforme olur.")
elif cevap1==2:
secilendeger=istenenliste2[cevap2]
print(secilendeger)
if (secilendeger>gerilim):
print("deformasyon elastik bölgede olur ve kiriş esnedikten sonra eski haline döner.")
else:
print("kiriş deforme olur.")
elif cevap1==3:
secilendeger=istenenliste3[cevap2]
print(secilendeger)
if (secilendeger>gerilim):
print("deformasyon elastik bölgede olur ve kiriş esnedikten sonra eski haline döner.")
else:
print("kiriş deforme olur.")
elif cevap1==4:
secilendeger=istenenliste4[cevap2]
print(secilendeger)
if (secilendeger>gerilim):
print("deformasyon elastik bölgede olur ve kiriş esnedikten sonra eski haline döner.")
else:
print("kiriş deforme olur.")
elif cevap1==5:
secilendeger=istenenliste5[cevap2]
print(secilendeger)
if (secilendeger>gerilim):
print("deformasyon elastik bölgede olur ve kiriş esnedikten sonra eski haline döner.")
else:
print("kiriş deforme olur.")
Öncelikle kütüphane olarak math ve kendi oluşturmuş olduğum akma tanımlanır. Daha sonra programa MKS(M:milimetre) birim sistemine göre programa kütle, elastisite modül, kiriş genişliği, kiriş yüksekliği, kiriş boyu ve cismin bırakıldığı yükseklik girilir. Girilen değerler ile atalet momenti, şok faktörü, çarpma sonucu ortaya çıkan sehim, bu sehimi oluşturacak kuvvet, kuvvetin oluşturacağı maksimum moment, çarpma sonucu kirişte oluşacak gerilim değerleri hesaplanır.
Kodların doğrulaması muhendislikbilgileri.com sitesindeki problem sonuçları ile yapılmıştır. Programda kiriş malzemesi listesinden seçim yapmanız istenir ve yaptığınız seçime göre program kirişin bu durumda nasıl davranacağını size verir. Bunun için program ile birlikte kütüphaneyi ve pdf dosyasını da indirmeniz gereklidir. Kalınlık değerine göre kaçıncı sütun sorusuna pdf dosyasında seçtiğiniz malzemeye göre ve kiriş kalınlık değer aralıklarının verildiği sütunu seçmeniz gerekir. Yukarıdaki örnekte kiriş kalınlığı 60 mm olduğundan 3. sütun seçilmiştir. Yapılan bu işlemden sonra deformasyon tipi hesaplama sonucu ekrana yansıyacaktır. Aşağıda akma isimli kütüphane kodları verilmiştir.
yield1={"st33":185,"st37-2":235,"ust37-2":235,"rst37-2":235,"st37-3":235,"st44-2":275,"st44-3":275,"st52-3":355,"st50-2":295,"st60-2":335,"st70-2":365}
yield2={"st33":175,"st37-2":225,"ust37-2":225,"rst37-2":225,"st37-3":225,"st44-2":265,"st44-3":265,"st52-3":345,"st50-2":285,"st60-2":325,"st70-2":365}
yield3={"st33":0,"st37-2":215,"ust37-2":215,"rst37-2":215,"st37-3":215,"st44-2":255,"st44-3":255,"st52-3":335,"st50-2":275,"st60-2":315,"st70-2":345}
yield4={"st33":0,"st37-2":205,"ust37-2":205,"rst37-2":215,"st37-3":215,"st44-2":245,"st44-3":245,"st52-3":325,"st50-2":265,"st60-2":305,"st70-2":335}
yield5={"st33":0,"st37-2":195,"ust37-2":195,"rst37-2":215,"st37-3":215,"st44-2":235,"st44-3":235,"st52-3":315,"st50-2":255,"st60-2":295,"st70-2":325}
İyi çalışmalar..