On-bottom Stability by Non-linear Spring Approach


On-bottom Stability by Non-linear Spring Approach

K.Kurojjanawong

เนื่องจากได้ยินมาเมื่อกาลครั้งหนึ่งนานนนนน มากแล้วว่ามีคนทำแบบนี้ แต่ยังไม่เคยเห็นสักที พอได้เปิดกะลาออกมาสู่โลกกว้างเลยได้เห็นว่ามันมีคนทำกันแบบนี้จริงๆ วันนี้ก็เลยเอามาเล่าให้ดูว่าเค้าทำกันยังไง แต่ต้องบอกว่า ผมไม่เห็นด้วยเลยกับวิธีที่เค้าใข้ โดยเฉพาะการคำนวณค่า soil spring ที่มันมาจาก elastic theory แล้วเอามาใช้ในการวิเคราะห์ปัญหา on-bottom stability ที่มันควรจะคิดกำลังจาก limit equilibrium เหมือนที่เราคำนวณหากำลังในฐานราก หรือ เสาเข็มกันทั่วๆ ไป แต่ก็เอามาให้รู้เพื่อเป็นวิทยาทานแล้วกัน ใครใคร่ใช้ก็ใช้ ใครไม่ใคร่ ก็ไปทำแบบอื่นเอา

1) การคำนวณหาค่า soil spring ต่อหนึ่ง ฐาน

วิธีคิดก็ง่ายๆ เลยครับ ทำยังไงจะ model กำลังของฐานรากเข้าไปใน computer ให้ได้ ผมว่าคงบังเอิ้น มีคนไปเห็นสมการใน API เข้า เช่น สมการใน section 6.14.1 short term deformation of shallow foundation ซึ่งมันติดอยู่ในรูป p-d ดังแสดงข้างล่าง

1

สลับกันแบบโง่ๆ เลยครับ จะได้ vertical and horizontal stiffness ตามข้างล่าง

 

0

 

งั้นเราก็ได้ spring stiffness ออกมาหล่ะ

สมมติว่า mudmat เรา ขนาด 4m x 8m เราต้องหา Equivalent R ก่อน

จะได้ R = (A/π)0.5 = (4*8/π)0.5 = 3.19m

ถ้าเราสมมติให้ E = 115,000kPa, n = 0.3

จาก Elastic Theory เราจะได้ G = E / 2 (1 + ν)

งั้น G = 115,000 / 2 (1 + 0.3) = 44230kPa

จะได้ kv =4 * 44230 * 3.19 / (1 – 0.3) =806,250kN/m ต่อ หนึ่ง ฐาน

 

2) การกระจาย soil spring ไปที่แต่ละ node

ที่นี้เราก็ต้องแบ่งฐานรากเราออกเป็น node ย่อยๆ ก็สุดแต่จะแบ่งกันไป อย่างเช่นในรูปข้างล่าง ผมก็แบ่งเป็นกริด ละประมาณสัก 2ม ได้

2

เท่าที่เห็น เค้าก็ กระจายค่า vertical stiffness เป็นสัดส่วนกับ พื้นที่ ที่ node นั้นมันถือครองอยู่ งั้น ถ้าไม่อยากงานเยอะ ก็ควรจะแบ่งให้มี typical node ให้น้อยที่สุด เพราะจำนวน รูปแบบของ spring ก็จะเท่ากับ รูปแบบของ typical node นั่นเอง อย่างในรูปข้างบน ผมมีสปริงอยู่ 8 แบบ

เช่น node #G161 ถือครอง พื้นที่อยู่ 2 ตร.ม. เราจะได้ ค่า spring = 2/(4*8) *806250 = 50390kN/m

ถ้าเราทำแบบนี้ เมื่อเอาสปริงทุกจุดมารวมกันจะได้ เท่ากับ total spring ของฐานพอดี

ปล. แต่ผมว่า มันน่าจะกระจายตาม Equivalent R มากกว่านะ

 

3) การสร้าง P-D diagram สำหรับแต่ละ node

จากนั้นเรา ก็มาสร้าง P-D diagram สำหรับ แต่ละ node กัน

เริ่มต้น เราต้องรู้ก่อนนะว่า Ultimate bearing capacity ของฐานที่เราคำนวณเนี่ย มันเท่าไร ก็คำนวณตามสูตรทั่วๆไปหล่ะ บ้าง soil report อาจจะให้มาก็ได้

สมมติให้ qu = 200kPa

ผมจะได้ว่า ที่ node #G161 มีกำลังรับแรงแบกทาน = 200kPa * 2 ตร.ม. = 400kN

จากข้างบนเราได้ว่า ที่ จุดนี้จะมี vertical stiffness = 50390kN/m

งั้นการที่จะทำให้ จุดนี้เกิดกำลังแบกทานที่ 400kN จะต้องทำให้ จุดนี้ทรุดลงไป = 400/50390 *100 = 0.79cm

แล้วหลังจากจุดนี้จะเกิดอะไรขึ้น?

จุดนี้ก็จะรับกำลังเพิ่มขึ้นไม่ได้อีก เนื่องจากเต็มความสามารถแล้ว มันก็จะต้องเกิด กรณที ที่ แรงคงที่ แต่ ทรุดไม่หยุด

งั้นถ้าเราลากกราฟ เราก็จะได้จุดที่หนึ่ง คือ (0,0) จุดที่สอง คือ (-0.79, -400) จุดที่สามคือ (-500, -400)

จุดที่ สามก็สมมติเอาเลยครับ เลือกค่า x ให้เยอะๆ หน่อย แล้วค่า x, y ก็ต้องเป็น ลบ ด้วย เพราะ ต้องรับ compression อย่างเดียว

งั้นมันก็จะออกมาเป็น กราฟ คล้าย elastic-perfectly plastic ที่มีแต่ด้าน compression ตามข้างล่าง

3

ซึ่งกราฟนี้มันก็จะเท่ากับ จำนวน typical node ที่เราสร้างขึ้นมา ถึงบอกว่าอย่าเลือกให้มันต่างกันเยอะมาก จะงานเข้านะจะบอกให้

เดี๋ยวพรุ่งนี้มาต่อว่า แล้วจะใช้ SACS มาแก้ปัญหาด้วยวิธีนี้ยังไง ซึ่งการทำด้วยวิธีนี้ก็จะเห็น deform shape ของ mudmat นั้นๆ เลย แบบตัวอย่างข้างล่าง

00

ปล. แต่ผมไม่แนะนำให้ทำวิธีนี้นะ ผมว่า มันเหมือน จับอะไรมายำๆ กันให้มันได้คำตอบออกมามากกว่า

 

การใช้ SACS วิเคราะห์ On-bottom Stability ด้วย Non-linear Spring

วันนี้เรามาต่อว่าเราจะวิเคราะห์ ด้วย SACS ยังไง

 

1) SACS Model

เริ่มต้น ก็ซอย node บนแต่ละฐาน ตามที่พูดไปคราวที่แล้ว แต่มันมีทริกอยู่ตรงที่ว่าเราต้องใส่ non-linear spring เข้าไปในโมเดลด้วย อ่าวทำไงหล่ะทีนี้

หลายคนคงสงสัย เรารัน linear static ไม่ใช่เหรอ แล้ว non-linear spring จะใส่เข้าไปได้ยังไง คำตอบ ก็ Gap element ไงครับ เป็น simplified non-linear analysis

Gap element module สามารถใส่ non-linear spring ให้ element ใดๆ ย้ำนะครับ ใส่ให้ element ไม่ใช่ใส่ให้ node ถ้าใครเคยใช้ usfos คงคุ้นๆ กับ 2-node non-linear spring ซึ่งก็คือการ assign material nonlinear spring ให้กับ element ใดๆ

ดังนั้น เรามี จำนวน non-linear spring เท่าไร ก็ต้องสร้าง element ขึ้นมาเท่านั้น ในที่นี้ non-linear spring element ก็ต้องสร้าง อยู่ใต้ node ที่เราแบ่งเหมือนรูปข้างล่างนั่นเอง

4

มีเรื่องที่ให้สังเกต หนึ่งเรื่องคือ สมมติ spring ที่เราใส่เข้าไปมันเป็น vertical spring ซึ่งเราต้อง ใส่ให้ element ใดๆ แต่ว่า เราจำเป็นต้องให้ fixities ที่ใต้ของ element นั้น ไม่งั้นจะรันไม่ได้นะครับ เช่นในรูป จะเห็นว่าผมให้ fixities ในแนว z ด้วย ทั้งที่จริงๆ ใน element มันเป็น spring แล้ว ส่วน ที่เห็น fixities ในแนว x กับ y เพราะว่าผมใส่ linear lateral spring เข้าไปด้วย งั้นเมื่อใส่เสร็จแล้ว เราก็จะเห็น boundary condition ที่ทุกฐาน แบบข้างล่าง

5

2) Gap Input File

ขั้นต่อไป ก็คือการสร้าง gap input file ผมว่า ขั้นนี้คงต้องมีคนงง แน่ๆ เพราะมันจะไม่เหมือนกับที่เราทำมา

การกำหนด Force-Displacement curve ให้ element ใดๆ ใน gap module จำเป็น ต้องกำหนดใน gap input file เท่านั้น งั้นมันจะตกอยู่ใน Section 2.2 ใน manual ซึ่งก็คือ การ Define Gap Element Data outside Model

ความแตกต่างคืออะไร ข้างล่างผมตัดมาจาก SACS manual

 

2.2.1.1 Defining Dummy Unit Load Cases
Any gap elements defined in the Gap input file require a dummy load case in the model. For each gap element defined, a dummy load case consisting of only a unit axial load for that gap element must be specified by the user.

2.2.2 Gap Input File Requirements
When using a Gap input file to specify gap element data, all input data including input and output load cases data must be specified in the Gap input file. The following sections address the specification of this input data.

 

กรณีที่ 1 ต้องสร้าง Dummy Load Case ในโมเดล ให้แต่ละ Gap Element ด้วย

6

 

Dummy Load case ก็เหมือนในรูปเลย เป็นแค่ unit load ไว้ให้มันเอาไปทำ iteration เท่านั้นเอง โดยต้องเอาไปใส่ไว้ใน โมเดล 99

ใน gap input file เราก็ กำหนด gap element โดยใช้ค่า non-linear spring ที่เราคำนวณได้ รวมทั้งกำหนด dummy load case ให้มันด้วย ตามรูปข้างล่าง

8

ไอ้ที่สาหัส ก็ไอ้ non-linear spring ใน gap input file นี่หล่ะ เช่น เราแบ่งไว้ ฐานละ 100 node ถ้า มี 4 ฐาน เราก็ต้องมี 400 spring ที่ต้องใส่เข้าไปหล่ะ ดีที่สุดก็คือเขียนเป็น โปรแกรมเล็ก ไว้ สร้าง input file เลย เพราะคงคีย์ไม่ไหวแน่ๆ

 

กรณีที่ 2 Load combination มันต้องเอามาใส่ ใน Gap input File

ที่นี้ เราต้องเอา Load combination มาไว้ใน gap input file ด้วย โดย มันให้ระบุ real load case กับ output load case

โดย real load ก็คือ Basic Load case ที่อยู่ใน โมเดล ส่วน Output Load case ก็คือ Load Combination Case นั่นเอง

เช่น ในรูปข้างล่าง ผมเรียก Real Load case จากโมเดลมา 61 cases ด้วย LCSEL แล้วผมก็เอา Real Load Case นี้มา combined กันด้วย LCOMB จนได้ทั้งหมด 98 cases โดย Load case ไหนที่ไม่ได้เรียกเข้ามาเป็น real load case ไม่สามารถเอาไปใช้ได้นะครับ

แล้วกรณีที่ ก่อนที่จะมาเป็น real load case ต้องผ่านการ combine ก่อน เช่นเราต้องการคูณ factor อะไรก่อนที่จะให้มันกลายมาเป็น real load case ก็ทำได้โดยการ combined ก่อนหนึ่งรอบ โดยรัน Seastate ให้มันไปอยู่ใน seaoci ก่อน แล้วค่อย เรียก seaoci มารันแทน

9

3) Stability Check

จากนั้นก็รันสิครับ จะรออะไรอยู่ รัน Gap Analysis นะครับ อย่าลืม

พอรันเสร็จ เราก็จะได้ reaction ออกมา โดยจะเรียก joint reaction หรือว่า member force ที่เป็น non-linear spring ออกมาก็ได้ มันต้องเท่ากัน ตามรูปข้างล่าง

10

งั้น reaction ของฐานราก ก็รวมเลยครับ จะรวมทั้งฐานเลย แล้วเทียบกับกำลังต่อฐาน หรือว่าจะ รวมที่กลุ่มย่อยๆ ก็ได้ แล้วแต่สไตล์ โดย มันจะต้องไม่เกิน ultimate bearing pressure คูณด้วย พื้นที่ ที่สนใจ

อย่างรูปข้างล่าง นี่ผมรวมทั้งฐานเลย

11

ข้อดีของวิธีนี้ ก็คือ มันรู้เลยครับ ว่า effective area มันอยู่ตรงไหน ไม่ต้องไปเสียเวลาคิดให้มันเหมื่อยตุ้ม

ส่วน Overturning หรือว่า Sliding ก็ไปเช็คแบบเดิม

 

4) Mudmat Beam Design

แล้ว stringer beam ของ mudmat หล่ะ ?

ก็จบในการรันที่เดียว เพราะว่า มันสมดุลในตัวเองอยู่แล้ว ก็สั่ง code-checked ได้เลยทันที

q

จบแร้ววววววว

ง่ายหล่ะสิ แต่ผมไม่แนะนำนะ ผมว่ามันมั่วๆ จริง ๆ ไม่จำเป็นต้องใช้ สมการ API ก็ได้ สมการ Initial Settlement ของ Footing มีอยู่ทั่วไปตามตำรา ขอแค่จับมาเป็น K ให้ได้ก็จบหล่ะ

อย่างไรก็ดี ต้องชื่นชมไอ้คนที่มันคิดมาใช้ คนแรก ก็ถือว่าหัวมันสร้างสรรค์ดีมาก ดูเหมือนมีหลักการ แม้ว่าความเป็นจริงมันมั่วก็เหอะ ที่ผมเข้าใจ ที่ office Worley หลายที่ทำแบบนี้นะ บ้างคน มันว่า มันทำมาตั้งหลายโปรเจ็คแล้ว ไม่เห็นเคยพังสักที แต่ถ้าให้ผมทำ ก็คงต้องมีเสียวแน่ๆ

สังเกตอย่างหนึ่งคือ การจะคำนวณ K ได้แม่นๆ ต้องรู้ Esoil ที่ค่อนข้างแน่นอนนะครับ ถ้าคนที่รู้เรื่องจะรู้เลยว่า ค่า Esoil นี่มั่วมาก ไม่ใช่ค่าคงที่แบบ Esteel นะ แค่นี้ก็คงรู้แล้วว่า K มันจะมั่วขนาดไหน

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s