(¿£Áö´Ï¾î¸¦
À§ÇÑ) ÆÄÀ̽㠽ÃÀÛÇϱâ[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´Â [ ]·Î ¹¿©ÀÖ´Ù.
±×¸®°í
½ÉÁö¾î { }(dictionary)³ª [ ](list)·Î ¹¾îÁÖÁö ¾Ê°í returnÇÒ ¼öµµ ÀÖ´Ù. ¾Æ·¡¿Í °°ÀÌ return( ) °ýÈ£ ¾È¿¡ ,·Î
±¸ºÐÇØ¼ ³ª¿¸¸Çصµ returnÀÌ µÈ´Ù.
ÀÌÀü
°Á¿¡¼ ´Ù·çÁö´Â ¾Ê¾ÒÁö¸¸ ÀÌ·¸°Ô ¸®ÅÏÇϸé ( )·Î ¹¿©¼ 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À» À妽º·Î ½á¾ßÇÑ´Ù.
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
Àüü ÄÚµå´Â ÷ºÎÆÄÀÏ·Î ¿Ã·Á³õ°Ú´Ù.
¿À´ÃÀº
ÇÔ¼ö¸¦ Á¤ÀÇÇÏ°í ºÒ·¯¼ ±× °á°ú¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» °øºÎÇß´Ù.
´ÙÀ½
½Ã°£¿¡´Â ÆÄÀ̽㿡 ±âº»ÀûÀ¸·Î ¼±¾ðµÇ¾îÀÖ´Â ³»ÀåÇÔ¼ö¿¡ ´ëÇØ¼ °øºÎÇϰڴÙ.