Python İle Yüksekten Düşen Bir Cismin Kirişe Verdiği Deformasyon Hesabı

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.

Şekil 1. http://www.muhendislikbilgileri.com sitesindeki problemin program ile çözümü

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..

Yorum yapın