ID:
PW:

     0 ºÐ
     16 ºÐ

¿£Áö´Ï¾î µ¹Á¾
  dolljong
ÇÁ·Î±×·¡¹Ö Tips
ÇÁ·Î±×·¡¹Ö¿¡ °üÇÑ TipÀ» °øÀ¯ÇÏ´Â °÷ÀÔ´Ï´Ù.


[python](¿£Áö´Ï¾î¸¦ À§ÇÑ) ÆÄÀ̽㠽ÃÀÛÇϱâ[6] ÇÔ¼ö
À̼®Á¾  2022-08-23 17:31:50, Á¶È¸ : 582, Ãßõ : 66
- Download #1 : engpython06.png (17.8 KB), Download : 16

- Download #2 : stressmax.py (600 Byte), Download : 37

(¿£Áö´Ï¾î¸¦ À§ÇÑ) ÆÄÀ̽㠽ÃÀÛÇϱâ[6]

 

³»¿ë : ÇÔ¼ö

ÂüÁ¶ :  https://wikidocs.net/24

 

0.½ÃÀÛÇϸç

¼öÇп¡¼­ ÇÔ¼ö´Â ¾î¶² ÀԷ°ªÀ» ÁÖ¸é °á°ú¸¦ ¸¸µé¾îÁشٴ °³³äÀÌ ÀÖ´Ù. ÇÁ·Î±×·¥¿¡¼­µµ µ¿ÀÏÇÏ´Ù. Áö±Ý±îÁö ¿ì¸®´Â ÀÌ¹Ì ¸¹Àº ÇÔ¼ö¸¦ ½è´Ù. È­¸é¿¡ ³»¿ëÀ» Ãâ·ÂÇØÁÖ´Â print(¡®hello world¡¯)ÀÌ·± °Íµµ ÇÔ¼ö¿´°í ÆÄÀÏÀ» ¿­ ¶§ »ç¿ëÇÑ open()µµ ÇÔ¼ö¿´´Ù.

 

¿£Áö´Ï¾îµé¿¡°Ô ÇÔ¼ö´Â Àͼ÷ÇÏ´Ù. ¼öÇÐÀ» ÅëÇØ¼­µµ Àͼ÷Çß°í, ÀÌ¹Ì ¿¢¼¿¿¡¼­µµ ¼¿µéÀÇ ÇÕÀ» ±¸Çϱâ À§Çؼ­ =sum(A1:A10)À» »ç¿ëÇϰųª ÃÖ´ë°ªÀ» ã±â À§Çؼ­ =max(A1:A10) ÀÌ·± °Íµµ ½áºÃÀ» °ÍÀÌ´Ù. ¸ðµÎ ÇÔ¼ö´Ù.

 

ÄÚµù¿¡¼­ ÇÔ¼ö´Â ¿¢¼¿ÀÇ ÇÔ¼öº¸´Ù ¹üÀ§°¡ Á» ³Ð´Ù. ¾î¶² °ªÀ» µ¹·ÁÁÖ´Â °Í ¿Ü¿¡µµ ¸¹Àº ÀÏÀ» ½Ãų ¼ö ÀÖ´Ù. ÄÚµù¿¡¼­ ÇÔ¼ö´Â ÄÚµåµéÀ» ¹­¾î ³õÀº ÇϳªÀÇ ºí·°Ã³·³ »ç¿ëÇϱ⵵ ÇÑ´Ù. 100ÁÙÀÌ ³Ñ´Â ÄÚµåµéÀ» ¹­¾î¼­ ÇÔ¼ö·Î ¸¸µé¾î À̸§À» ÁÖ°í ±× ÇÔ¼ö¸¦ ºÒ·¯´Ù ¾²¸é(ÄÚµù¿¡¼­ ÇÔ¼ö¿¡°Ô ÀÏÀ» ½ÃŰ´Â °ÍÀ» È£Ãâ(call)ÇÑ´Ù°í ÇÑ´Ù) Äڵ带 º¸±â ÆíÇÑ °ÍÀÌ´Ù. ¿¹¸¦ µé¾î 1000ÁÙÂ¥¸® Äڵ尡 ÀÖ´Ù¸é 100ÁÙ¾¿ ¹­¾î¼­ À̸§À» Á¤Çؼ­ ÇÔ¼ö·Î ¸¸µé°í 10°³ÀÇ ÇÔ¼ö¸¦ Â÷·Ê·Î È£ÃâÇÑ´Ù¸é 1000ÁÙÀÇ Äڵ带 10ÁÙ·Î °ü¸®ÇÒ ¼ö Àֱ⠶§¹®¿¡ ÀÌÇØÇϱ⠴õ ½¬¿öÁú °ÍÀÌ´Ù. ¼öÁ¤ÀÌ ÇÊ¿äÇÏ´Ù¸é °¢°¢ÀÇ ÇÔ¼öµéÀ» ¼öÁ¤ÇÏ¸é µÈ´Ù.

 

¿¹¸¦ µé¾î ÇÏ·ç Àϰú¸¦ ÄÚµùÀ¸·Î ÇÑ´Ù¸é ÀϾ±â, »þ¿öÇϱâ, ¾ÆÄ§¸Ô±â, Ãâ±ÙÇϱâ, ¿ÀÀüÀÏÇϱâ, Á¡½É¸Ô±â, ¿ÀÈÄÀÏÇϱâ, Åð±ÙÇϱâ, Àú³á¸Ô±â, Ƽºñº¸±â, ÀáÀÚ¸® µé±â µîÀ¸·Î ³ª´­ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ¸¸ÀÏ ÀÌ·± ±¸ºÐ ¾øÀÌ ¸ðµç ÇàÀ§¸¦ ³ª¿­Çϸé Á¤¸®°¡ ¾ÈµÇ¾î °ü¸®Çϱ⵵ Èûµé °ÍÀÌ´Ù.    

 

1. ÇÔ¼ö Á¤ÀÇ

ÇÔ¼ö´Â Á¤ÀÇÇÏ´Â ºÎºÐ°ú ºÒ·¯¿À´Â ºÎºÐÀ¸·Î ³ª´¶´Ù. Á¤ÀÇÇØ¾ß ºÒ·¯´Ù ¾µ ¼ö ÀÖ´Ù. Áö±Ý±îÁö ½è´ø print() µîÀÇ ÇÔ¼ö´Â ÆÄÀ̽㿡 ±âº»ÀûÀ¸·Î ³»ÀåµÈ ÇÔ¼ö´Ù. (³»ÀåµÈ ÇÔ¼ö´Â ´ÙÀ½ °­Á¿¡¼­ °øºÎÇÑ´Ù). ±âº»ÀûÀ¸·Î Á¤Àǰ¡ µÇ¾îÀÖ´Ù´Â °ÍÀÌ´Ù. ¿ì¸®°¡ ´Ù·ê °ÍÀº »ç¿ëÀÚ ÁöÁ¤ ÇÔ¼ö´Ù.

 

def  

ÇÔ¼ö¸¦ Á¤ÀÇÇϴ Ű¿öµå´Ù. ÇÔ¼ö Á¤ÀÇ´Â ¾Æ·¡¿Í °°ÀÌ defŰ¿öµå¸¦ ÀÌ¿ëÇØ¼­ ÇÑ´Ù.

 

def ÇÔ¼ö¸í(¸Å°³º¯¼ö):

  ¹®Àå

  ¹®Àå

  return(µ¹·ÁÁÙ°ª)

 

ÇÔ¼ö¸íÀº »ç¿ëÀÚ°¡ ¿øÇϴ´ë·Î Á¤ÇÏ¸é µÈ´Ù.

¸Å°³º¯¼ö´Â ÇÔ¼ö ¾È¿¡¼­ ¾²¿©Áú º¯¼ö¸¦ Àü´Þ¹Þ´Â º¯¼ö °ÍÀÌ´Ù. ±×¸®°í ¹®ÀåµéÀº ÇÔ¼ö ¾È¿¡¼­ ÇØ¾ßµÉ ÀÏÀ» ±â¼úÇÑ ¹®ÀåµéÀÌ´Ù.

return(µ¹·ÁÁÙ°ª)Àº ÇÔ¼öÀÇ °á°ú·Î µ¹·ÁÁÙ °ªÀ» ½áÁØ´Ù.

¿©±â¼­ ÁÖÀÇÇØ¾ß ÇÒ °ÍÀº def ¾Æ·¡ÀÇ ¹®ÀåµéÀº µé¿©¾²±â°¡ µÇ¾îÀÖ¾î¾ß ÇÑ´Ù´Â °ÍÀÌ´Ù. ±×¸®°í def¹® ¸¶Áö¸·¿¡ :ÀÌ ÀÖ´Â °Íµµ ÁÖÀÇÇÏÀÚ.

 

¿¹Á¦: ÇÔ¼ö Á¤ÀÇ ¿¹¸¦ µé¾îº¸ÀÚ. ¾Æ·¡ ±×¸²°ú °°Àº IÇü °Å´õ°¡ ÀÖ´Ù°í ÇÏÀÚ. ÀÌ °Å´õÀÇ Á¦¿øÀ» ¾Ë·ÁÁÖ¸é ´Ü¸éÀû(A), ´Ü¸é2Â÷¸ð¸àÆ®(I), ´Ü¸é°è¼ö(Z), »óºÎ¿¬´Ü°Å¸®(yt) µîÀ» ±¸ÇØÁÖ´Â ÇÔ¼ö¸¦ Á¤ÀÇÇØº¸ÀÚ.

 

°¢ ºÎÀçÀÇ Á¦¿øµé°ú ±¸ÇÏ´Â °ªµéÀ» ³ªÅ¸³»´Â º¯¼ö´Â ¾Æ·¡¿Í °°ÀÌ Á¤Çß´Ù. º¯¼ö¸íÀº ÄÚµùÇÏ´Â »ç¶÷ÀÌ ¸¶À½´ë·Î Á¤ÇÏ¸é µÇÁö¸¸ º¯¼ö°¡ ÀǹÌÇÏ´Â °ÍÀ» Àß ³ªÅ¸³»µµ·Ï Á¤ÇÏ´Â °ÍÀÌ ÁÁ´Ù.

hg : °Å´õ³ôÀÌ,  hw: À¥³ôÀÌ, tf : Ç÷£ÁöµÎ²², tw: À¥µÎ²², bf: Ç÷£Áö Æø. 

A : ´Ü¸éÀû, I : ´Ü¸é2Â÷¸ð¸àÆ®, Z:´Ü¸é°è¼ö, yt : »ó¿¬ ¿¬´Ü°Å¸®

º¯¼ö¸íÀ» Á¤Çߴµ¥ ¿©±â¼­ hw¿Í hg µÑ Áß Çϳª°¡ Á¤ÇØÁö¸é ³ª¸ÓÁö´Â Á¤ÇØÁö´Â °ªÀÌ´Ù. µû¶ó¼­ ÀԷ¿¡¼­´Â µÑÁß Çϳª¸¸ ÀÔ·ÂÇÏ¸é µÈ´Ù. º¸ÅëÀº °Å´õ Àüü ³ôÀ̸¦ ÀÔ·ÂÇÏ´Â °ÍÀÌ ÀϹÝÀûÀÌ´Ù. ±×·¡¼­ hg¸¦ ÀÔ·ÂÇÏ´Â °ÍÀ¸·Î ÇϰڴÙ.

 

ÇÔ¼öÀ̸§Àº spop_igirder¶ó°í Áö¾ú´Ù. section property, I-girder ÀÌ·± ´Ü¾îµéÀ» Àû´çÈ÷ Á¶ÇÕÇØ¼­ ¸¸µç ÇÔ¼ö¸íÀÌ´Ù.

 

ÀÌ ÇÔ¼ö¿¡ ÁÖ¾î¾ß ÇÒ Á¤º¸µé Áï ¸Å°³º¯¼ö´Â gh, tf, tw, bf ÀÌ·¸°Ô 4°³·Î Á¤Çß´Ù. °¢°¢ gh(girder height), tf(thickness of flange), tw(thickness of web), bf(breadth of flange)ÀÇ ¶æÀÌ´Ù.

ÇÔ¼ö¸¦ Á¤ÀÇÇØº¸ÀÚ defŰ¿öµå µÚ¿¡ ÇÔ¼ö¸íÀ» ½áÁÖ°í °ýÈ£ ¿­°í ¸Å°³º¯¼ö µéÀ» ,·Î ±¸ºÐÇØ¼­ ½áÁÖ¸é µÈ´Ù. ¸¶Áö¸·¿¡ :À» ÀØÁö ¸»ÀÚ.

def spop_igirder(gh, tf, tw, bf):

 

ÀÌÁ¦ ÀÌ ÇÔ¼ö°¡ ÇÒ ÀϵéÀ» ³ª¿­ÇØÁÖ¸é µÈ´Ù. ±× ¹®ÀåµéÀº ÀÌ ÇÔ¼öÀÇ ¼Ò¼ÓÀ̹ǷΠµé¿©¾²±â¸¦ ÇØ¾ß ÇÑ´Ù´Â °É ±â¾ïÇÏÀÚ.

 

def sprop_igirder(hg, tf, tw, bf):
  hw = hg -
2*tf
  bnet = bf - tw
  A = hg * bf - bnet * hw
  I = bf*hg**
3/12 - bnet*hw**3/12
  yt = hg /
2.0
  Z = I / yt
 
return({'A' : A, 'I' : I, 'Z' : Z, 'yt' : yt})

 

±¸ÇØ¾ß ÇÏ´Â °ªµéÀ» ¼ö½ÄÀ» ½á¼­ ±¸Çß´Ù. I¸¦ ±¸ÇÏ´Â ºÎºÐ¿¡¼­ **3Àº 3Á¦°öÀ» ¶æÇÑ´Ù. ¾ð¾î¸¶´Ù Á¶±Ý¾¿ ´Ù¸¥µ¥ ÆÄÀ̽㿡¼­´Â x**n ÀÌ·¸°Ô ½áÁÖ¸é xÀÇ n½ÂÀ» ¶æÇÑ´Ù. ¾Æ¸¶µµ ¿¢¼¿¿¡¼­´Â x^4 ÀÌ·±½ÄÀ¸·Î Ç¥ÇöÇßÀ» °ÍÀÌ´Ù.

 

return¹®À» º¸ÀÚ. return(µ¹·ÁÁÙ°ª)À̶ó°í Çߴµ¥ { }¸¦ ½è´Ù. ¿©·¯°³ÀÇ °ªÀ» µ¹·ÁÁÖ±â À§Çؼ­ dictionary·Î ¹­¾îÁØ °ÍÀÌ´Ù. 2¹øÂ° °­Á¿¡¼­ ´Ù·é dictionaryÇüÀ» ´Ù½ÃÇѹø »ó±âÇØº¸ÀÚ. dictionary´Â { }·Î ¹­¿© ÀÖÀ¸¸ç key: value·Î ±¸¼ºµÇ¾îÀÖ´Ù°í Çß´Ù. ¡®A¡¯°¡ keyÀ̰í A´Â value´Ù. A¶ó´Â º¯¼ö¿¡´Â ´Ü¸éÀû°ªÀÌ µé¾îÀÖ´Ù. ÀÌ·¸°Ô ÇÏ¸é ¿©·¯°³ÀÇ °ªµéÀ» µ¹·ÁÁÙ ¼ö ÀÖ´Ù.

 

¹°·Ð ¿©·¯°³ÀÇ °ªÀ» ¾Æ·¡¿Í °°ÀÌ list·Î µ¹·ÁÁÙ ¼öµµ  ÀÖ´Ù. list´Â [ ]·Î ¹­¿©ÀÖ´Ù.

return([A, I, Z, yt])

 

±×¸®°í ½ÉÁö¾î { }(dictionary)³ª [ ](list)·Î ¹­¾îÁÖÁö ¾Ê°í returnÇÒ ¼öµµ ÀÖ´Ù. ¾Æ·¡¿Í °°ÀÌ return( ) °ýÈ£ ¾È¿¡ ,·Î ±¸ºÐÇØ¼­ ³ª¿­¸¸Çصµ returnÀÌ µÈ´Ù.

 

return(A, I, Z, yt)

 

ÀÌÀü °­Á¿¡¼­ ´Ù·çÁö´Â ¾Ê¾ÒÁö¸¸ ÀÌ·¸°Ô ¸®ÅÏÇϸé ( )·Î ¹­¿©¼­ returnÀÌ µÈ´Ù. ( )·Î ¹­¿© ÀÖ´Â µ¥ÀÌÅÍ ÇüÀº Æ©ÇÃÇü(tuple type)À̶ó°í ÇÑ´Ù. ÀÌ typeÀº list¿Í ºñ½ÁÇѵ¥ ¼öÁ¤ÀÌ ¾ÈµÈ´Ù´Â °Í¸¸ ´Ù¸£´Ù. Áï Àб⸸ °¡´ÉÇÏ´Ù.

 

dictionary·Î µ¹·ÁÁÖ´Â °Í°ú list·Î µ¹·ÁÁÖ´Â °Í, ±×¸®°í ±×³É ³ª¿­Çؼ­ µ¹·ÁÁÖ´Â °ÍÀÇ Â÷ÀÌ´Â ÀÌ ÇÔ¼öÀÇ °á°ú¸¦ ½á¸ÔÀ» ¶§ Â÷À̰¡ »ý±ä´Ù. ±× ºÎºÐ¿¡ ´ëÇØ¼­´Â ÇÔ¼ö È£ÃâºÎºÐ¿¡¼­ ´Ù·ç°Ú´Ù.

 

2. ÇÔ¼öÈ£Ãâ

¾Õ¿¡¼­ Á¤ÀÇµÈ ÇÔ¼ö¸¦ È£ÃâÇÒ ¶§´Â ÇÔ¼ö¸í°ú ÇÔ²² ()¾È¿¡ Àμö¸¦ ½áÁÖ¸é µÈ´Ù. ¿¹¸¦ µé¾î ¾Õ¿¡¼­ ¸¸µç i-girderÀÇ section propertyµéÀ» ±¸Çϱâ À§Çؼ­´Â ¾Æ·¡¿Í °°ÀÌ È£ÃâÇÏ¸é µÈ´Ù.( )¾ÈÀÇ Àμö´Â °¢°¢ hg, tf, tw, bf¿´´Ù´Â °ÍÀ» ±â¾ïÇÏÀÚ. ¾Æ·¡¿Í °°ÀÌ È£ÃâÇϸé hg=1500, tf=20, tw=12, bf=800ÀÎ °ÍÀÌ´Ù.

sprop_igirder(1500,20,12,800)

 

()¾ÈÀÇ ÀμöµéÀÌ °¢°¢ ¾î¶² °ÍÀ» ÀǹÌÇÏ´ÂÁö ¾î·Æ´Ù°í »ý°¢ÇÏ¸é ¾Æ·¡¿Í °°ÀÌ ¸Å°³º¯¼ö¸íÀ» °°ÀÌ ½áÁÙ ¼öµµ ÀÖ´Ù. ÀÌ·± °æ¿ì¿¡´Â º¯¼ö¸íÀ» ¾Ë·ÁÁá±â ¶§¹®¿¡ ¼ø¼­¸¦ ÁöŰÁö ¾Ê¾Æµµ µÈ´Ù.

sprop_igirder(tf=20,hg=1500,tw=12,bf=800

 

ÀÌ·¸°Ô¸¸ È£ÃâÇϸé ÇÔ¼öÀÇ ½ÇÇà °á°ú°¡ ¾îµð¿¡µµ ÀúÀåµÇÁö ¾Ê´Â´Ù. ±×·¡¼­ °á°ú¸¦ ÀúÀåÇÒ º¯¼ö¸¦ Á¤Çؼ­ ÇÒ´çÇϵµ·Ï ÇÑ´Ù. ÀÌ ÇÔ¼öÀÇ °á°ú¸¦ ¾Æ·¡¿Í °°ÀÌ sprop¿¡ ÀúÀåÇß´Ù.

sprop = sprop_igirder(1500,20,12,800)

 

ÀÌÁ¦ sprop¿¡ Á¢±ÙÇØ¼­ ÀÌ ÇÔ¼öÀÇ °á°ú°ªµéÀ» °¡Á®¿Ã ¼ö ÀÖ´Ù.

 

ÀÌÁ¦ returnÀ» list·ÎÇÑ °æ¿ì¿Í dictionary, tuple·Î ÇÑ °æ¿ìÀÇ Â÷ÀÌ¿¡ ´ëÇØ¼­ ¾Ë¾Æº¸ÀÚ.

list·Î returnÇÑ °æ¿ì¿¡´Â return¹®¿¡¼­ µ¹·ÁÁÖ´Â ¼ø¼­¸¦ ¾Ë°í ÀÖ¾î¾ß ÇÑ´Ù. Áï ù¹øÂ°´Â A µÎ¹øÂ°´Â I¡¦±×·¡¼­ I°ªÀ» ¾Ë±â À§Çؼ­´Â µÎ¹øÂ°´Ï±î  1À» À妽º·Î ½á¾ßÇÑ´Ù.

Izz = sprop[1]

 

tuple·Î returnÇÑ °æ¿ì¿¡µµ µ¿ÀÏÇÏ´Ù.

 

ÀÌ¿¡ ºñÇØ¼­ dictionaryÀÎ °æ¿ì´Â key¸¦ ÀÌ¿ëÇØ¼­ °¢°¢ÀÇ °á°ú¿¡ Á¢±ÙÇÒ ¼öÀÖ´Ù. ¸î¹øÂ°ÀÎÁö´Â ¸ô¶óµµ µÈ´Ù. ´Ü¸éÀûÀ» ¾Ë°í ½ÍÀ¸¸é ´Ü¸éÀû¿¡ ÇØ´çÇÏ´Â keyÀÎ ¡®A¡¯¸¦ ÀÌ¿ëÇØ¼­ Á¢±ÙÇÏ¸é µÈ´Ù.

 

area = sprop['A']

 

Áö±Ý±îÁöÀÇ ³»¿ëÀ» stressmax.py¶ó´Â À̸§À¸·Î ÀúÀåÇß´Ù.

def sprop_igirder(hg, tf, tw, bf):
  hw = hg -
2*tf
  bnet = bf - tw
  A = hg * bf - bnet * hw
  I = bf*hg**
3/12 - bnet*hw**3/12
  yt = hg /
2.0
  Z = I / yt
 
#return((A, I, Z, yt))  #list
 
return({'A' : A, 'I' : I, 'Z' : Z, 'yt' : yt}) #dictionary
 
#return([A, I, Z, yt])  #list

sprop = sprop_igirder(
1500,20,12,800)

#sprop=sprop_igirder(tf=20,hg=1500,tw=12,bf=800)
#print(sprop[0])
print(sprop[
'A'])

 

anaconda prompt¿¡¼­ ½ÇÇà½ÃŰ¸é ´Ü¸éÀû°ªÀÌ Ãâ·ÂµÉ °ÍÀÌ´Ù.

(base) D:\dev\python>python stressmax.py
49520

 

ÇÔ¼ö¼±¾ðºÎºÐ¿¡ return¹®ÀÌ 3°³°¡ Àִµ¥ Â÷À̸¦ Å×½ºÆ®Çغ¸±â À§Çؼ­ 3°³¸¦ ¸ðµÎ ¾²°í #·Î commentó¸®Çϸ鼭 Å×½ºÆ® ÇØº¸ÀÚ. sprop_igirderÇÔ¼ö¸¦ È£ÃâÇÏ´Â ¹æ¹ýµµ µÎ°¡Áö°¡ ÀÖ´Ù. º¯¼öº´À» »ý·«ÇÏ´Â ¹æ¹ý, º¯¼ö¸íÀ» ½áÁÖ´Â ¹æ¹ý. ±×¸®°í print¹®À¸·Î list³ª tuple·Î returnÇßÀ» ¶§¿Í dictionary·Î returnÇßÀ» ¶§ÀÇ Â÷À̸¦ Å×½ºÆ®Çغ¸ÀÚ.

 

3. ÇÔ¼ö¸¦ ÀÌ¿ëÇÑ ÃÖ´ë ÀÀ·Â ±¸ÇÏ´Â ÇÁ·Î±×·¥

ÀÌÁ¦ ÇÔ¼ö¸¦ Á¤ÀÇÇÏ°í ºÒ·¯¿À´Â ¹æ¹ýÀ» ¹è¿üÀ¸´Ï ½Ç¿ëÀûÀÎ ½Ç½ÀÀ» ÇØº¸ÀÚ. À§¿¡¼­ ´Ü¸éƯ¼º°ªÀ» ±¸ÇÏ´Â sprop_igirderÇÔ¼ö¸¦ Á¤ÀÇÇßÀ¸´Ï ´Ü°æ°£º¸¿¡ µîºÐÆ÷ÇÏÁßÀÌ ÀÛ¿ëÇÒ ¶§ ÃÖ´ë ¸ð¸àÆ®¸¦ ±¸ÇØÁÖ´Â ÇÔ¼ö¸¦ ¸¸µé°í ÃÖ´ëÀÀ·ÂÀ» ±¸ÇØÁÖ´Â ÇÁ·Î±×·¥À» ¸¸µé¾îº¸ÀÚ.

 

´Ü°æ°£º¸ÀÇ ÃÖ´ë¸ð¸àÆ®¸¦ ±¸ÇØÁÖ´Â °ø½ÄÀº ³Ê¹« °£´ÜÇØ¼­ ÇÔ¼ö·Î ¸¸µé ÇÊ¿ä±îÁö ¾øÁö¸¸ ÀÏ´Ü ½Ç½ÀÀ» À§ÇØ ¸¸µé¾îº¸ÀÚ. µîºÐÆ÷ ÇÏÁß w¿Í Áö°£ l¸¸ ³Ñ°ÜÁÖ¸é Áö°£ Áß¾ÓÀÇ ¸ð¸àÆ®¸¦ ±¸ÇØÁÖ´Â °£´ÜÇÑ ÇÔ¼ö´Ù. ÇÔ¼ö À̸§Àº mementcenter¶ó°í Áö¾ú´Ù.

def momentcenter(w,l):
 
return(w*l**2/8)

 

¿£Áö´Ï¾îµéÀº ´ÜÀ§¿¡ ¹Î°¨ÇÏ´Ù. ÇÁ·Î±×·¥¿¡¼­ ´ÜÀ§±îÁö ÅëÁ¦Çϵµ·Ï ¸¸µé ¼ö ÀÖÁö¸¸ ÀÌ ¿¹Á¦¿¡¼­´Â ´ÜÀ§¸¦ ÅëÀÏÇϵµ·Ï ÇÒ °ÍÀÌ´Ù. ¿¹¸¦ µé¾î ÀÀ·ÂÀ» ±¸ÇÑ´Ù¸é ÃÖÁ¾ °ªÀ» MPa´ÜÀ§·Î ±¸ÇÏ°í ½Í´Ù¸é PaÀÇ Á¤ÀÇÀÎ N/m2¿¡ ¸ÂÃç¼­ °ªÀ» ³Ö¾îÁÖ¸é µÈ´Ù. Áï ÇÏÁßÀº N, ±æÀÌ´ÜÀ§´Â m´ÜÀ§·Î ³Ö¾îÁÖÀÚ.

 

ÇÔ¼ö Á¤ÀÇ ºÎºÐ ¾Æ·¡¿¡ ÀÀ·ÂÀ» ±¸ÇÏ´Â ºÎºÐÀ» ÄÚµùÇÏ¸é µÈ´Ù. ÀÀ·ÂÀ» ±¸ÇÏ´Â °ø½ÄÀº  À̹ǷΠmomentcenterÇÔ¼ö·Î ¸ð¸àÆ®¸¦ ±¸Çϰí sprop_igirderÇÔ¼ö·Î ±¸ÇÑ ´Ü¸éƯ¼ºÄ¡ Áß¿¡ Z°ªÀ» ÃëÇØ¼­ ¿¡ ´ëÀÔÇϸé ÀÀ·ÂÀ» ±¸ÇÒ ¼ö ÀÖ´Ù.

µÎ°³ÀÇ ÇÔ¼ö ¼±¾ðºÎ ¾Æ·¡ÂÊ¿¡ ¾Æ·¡ÀÇ Äڵ带 Ãß°¡ÇÏ¸é µÈ´Ù.

 

ÇÏÁß¿¡ ÇØ´çÇÏ´Â w¿Í Áö°£ lÀº inputÇÔ¼ö·Î »ç¿ëÀڷκÎÅÍ ÀÔ·Â ¹Þ¾Ò´Ù.  ÀԷ¹ÞÀ» ¶§ ´ÜÀ§¸¦ ¾Ë·ÁÁÖ´Â ¸Þ½ÃÁö¸¦ Ãß°¡Çß´Ù.

inputÇÔ¼ö·Î ¹ÞÀº °á°ú´Â ¹®ÀÚ¿­À̹ǷΠfloatÇÔ¼ö·Î Çüº¯È¯À» ÇØÁá´Ù.

momentcenterÇÔ¼ö¸¦ È£ÃâÇÒ ¶§ »ç¿ëÀڷκÎÅÍ ÀԷ¹ÞÀº w¿Í lÀ» Àü´ÞÇß°í ±× °á°ú´Â Mmaxº¯¼ö¿¡ ÇÒ´çÇß´Ù.

sprop_igirderÇÔ¼ö¸¦ È£ÃâÇß´Ù. m´ÜÀ§·Î Á¦¿øÀ» ÀÔ·ÂÇß´Ù. °Å´õ ³ôÀÌ 1.2m, Ç÷£Áö ÆøÀº 0.6m´Ù. ´Ü¸éƯ¼ºÄ¡ ÇÔ¼öÈ£ÃâÀÇ °á°ú¸¦ spropº¯¼ö¿¡ ÇÒ´çÇß´Ù. ÀÌ °ªÀº dictionaryÇüÀÌ´Ù. ±×·¡¼­ Z°ªÀº sprop[¡®Z¡¯]·Î ÃëÇØ¼­ ÇÒ´çÇß´Ù. fmax¸¦ °è»êÇϰí ÇÁ¸°Æ®Çß´Ù. ÇÁ¸°Æ®¹®¿¡¼­ f-formatingÀ» ÀÌ¿ëÇß´Ù.

Áß°£¿¡ #·Î commentó¸®µÈ ¹®ÀåÀº È®ÀÎÀ» À§Çؼ­ Ãâ·ÂÀ» Çß´ø °ÍÀÌ´Ù. ÄÚµùÇÏ´Â °úÁ¤¿¡¼­ print¹®À» ³Ö¾î¼­ °ªÀÌ Á¦´ë·Î ±¸ÇØÁö°í ÀÖ´ÂÁö È®ÀÎÇÑ °ÍÀÌ´Ù.

w = float(input('w(N/m): '))
l = float(input(
'l(m): '))
Mmax = momentcenter(w,l)
#print(f'Mmax: {Mmax}')
sprop = sprop_igirder(
1.2,0.020,0.012,0.600)
Z=sprop[
'Z']
fmax = Mmax/Z
print(
f'Max. Stress(N/m2) :{fmax}'

 

ÀÌ ÆÄÀÏÀ» ÀúÀåÇÏ°í ½ÇÇàÇÏ¸é ¾Æ·¡¿Í °°Àº °á°ú°¡ ³ª¿Â´Ù. ¹ØÁ٠ģ ºÎºÐÀº »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ºÎºÐÀÌ´Ù. ÇÏÁßÀ¸·Î 100000N/m¸¦, Áö°£±æÀÌ·Î 20m¸¦ ÀÔ·ÂÇß´Ù. Ãâ·Â °á°ú¿¡ I(m4) ~ ºÎºÐÀÌ Àִµ¥ À̺κÐÀº I°ª°ú Z°ªÀ» È®ÀÎÇϱâ À§ÇØ sprop_igirderÇÔ¼ö¿¡ Àӽ÷Π³Ö¾î³õÀº Ãâ·Â¹®ÀÌ´Ù. 

(base) D:\dev\python>python stressmax.py
w(N/m):
100000
l(m):
20
Mmax:
5000000.0
I(m4):
0.009916096 Z(m3):0.016526826666666668
Max.
Stress(N/m2) :302538418.3452843

 

stressmax.py Àüü ÄÚµå´Â ÷ºÎÆÄÀÏ·Î ¿Ã·Á³õ°Ú´Ù.

 

¿À´ÃÀº ÇÔ¼ö¸¦ Á¤ÀÇÇÏ°í ºÒ·¯¼­ ±× °á°ú¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» °øºÎÇß´Ù.

 

´ÙÀ½ ½Ã°£¿¡´Â ÆÄÀ̽㿡 ±âº»ÀûÀ¸·Î ¼±¾ðµÇ¾îÀÖ´Â ³»ÀåÇÔ¼ö¿¡ ´ëÇØ¼­ °øºÎÇϰڴÙ.



  ÃßõÇÏ±â   ¸ñ·Ïº¸±â

Copyright 1999-2023 Zeroboard / skin by zero
±¸Á¶¼³°èÀÇ ¹Ì·¡¸¦ ÁغñÇÏ´Â ¸ðÀÓ [±¸Á¶¼³°è¹Ì·¡Æ÷·³]