Tag: AMBER

มาลองทำ Molecular Dynamics Simulation ของโปรตีนกันครับ 6

ต่อจากครั้งแล้ว http://www.sakngoi.com/?p=473 กลับมาดูระบบที่ผมพูดถึงในตอนแรก (HIV-RT + ยา) เนื่องจากว่าผมสงสัยว่าที่ปลายของสาย DNA บริเวณ active site ที่มีเจ้า inhibitor มาจับนี้จะมีการสั่นหรือเปลี่ยนแปลงอย่างไร ก็เลยออกแบบการทดลอง โดยลองเปลี่ยนบริเวณนั้นตามตารางด้านล่างนี้ครับ ระบบ 1,2,5 และ 6 นั้น เป็นสถานการณ์ก่อนที่ inhibitors หรือ nucleotides จะเข้าจับกับสาย DNA ครับ ส่วนระบบ 3,4,7 และ 8 เป็นสถานการณ์หลังจากที่ inhibitors หรือ nucleotides จับกับสาย DNA แล้ว อันนี้แสดงบริเวณที่สนใจครับ ส่วนนี้แสดง pathway ของยาที่สนใจ (Adefovir/Tenofovir) ครับ ระบบที่จะทำ MD ทั้ง 9 ระบบนี้ในแต่ละระบบจะมีอะตอมประมาณ 130,000  อะตอมครับ ส่วนการเตรียมโครงสร้างของแต่ล่ะระบบผมก็ทำคร่าวๆตามนี้ครับ โหลดโครงสร้างจาก PDB.org ที่ต้องการซึ่งก็คือ 1T05 เจ้าโครงสร้างนี้จะมีสาย DNA ที่มี tenofovir

มาลองทำ Molecular Dynamics Simulation ของโปรตีนกันครับ 5

ต่อจากครั้งที่แล้ว (http://www.sakngoi.com/?p=450) จากคุณสมบัติต่างๆทางเทอร์โมไดนามิคของระบบที่ต้องคำนึงถึงแล้ว ลองมาดูเรื่องของขั้นตอนของการทำ MD ว่าเราจะต้องมีอะไรคิดถึงหรือทำอะไรอีก  ในขั้นนี้ผมอยากจะให้มองว่าตัวโปรแกรมคอมพิวเตอร์สำหรับทำ MD อย่าง NAMD,GROMACS,CHARMM หรือ AMBER นั้นเป็นเหมือนกล่องดำที่จะคำนวณตำแหน่งของอะตอมต่างๆที่ประกอบเป็นโมเลกุลหรือระบบที่เราสนใจทุกๆช่วงเวลาที่เราสนใจ (รวมถึงเรื่องพลังงาน และอื่นๆอีก) เหมือนภาพถ่าย โดยที่เราจะป้อนค่าต่างๆ ของระบบที่ต้องการเข้าไป การทำ MD เราอาจแบ่งออกได้เป็นขั้นตอนต่างๆตามลำดับดังนี้ครับ Initial Input ขั้นตอนนี้เป็นขั้นตอนของการเตรียมระบบ,ไฟล์ และ ค่าพารามีเตอร์ต่างๆสำหรับในการรันMD เช่น โครงสร้างโปรตีนที่เอามาจาก PDB นั้นมันจะไม่มีตำแหน่งของไฮโรเจนมาด้วยครับ เราก็ต้องเอามาใส่ไฮโดรเจนเองซึ่งการใส่ไฮโดรเจนเข้าไปก็มีโปรแกรมช่วยครับ (เดี๋ยวพูดถึงทีหลัง 🙂 ว่ามันใส่ยังไง ถ้าไม่ขี้เกียจก่อนนะครับ) , การใส่น้ำหรือ solvate โปรตีน หรือการในประจุของธาตุต่างๆเพื่อให้ระบบของเราที่มีน้ำ+โปรตีน มีประจุเป็นศูนย์ (neutralize)  Energy minimization ในขั้นตอนนี้เป็นการขยับอะตอมที่อาจจะถูกวางไว้ใกล้กันเกินไปจากขั้นตอนของการใส่อะตอมไฮโดนเจนหรือโมเลกุลของน้ำออกจากกันหน่อย เพราะถ้าหากเราเริ่มรันMDโดยที่มันมีอะตอมที่อยู่ใกล้กันเกินไปก็จะทำให้อะตอมอาจถูกผลักออกจากกันได้ ซึ่งอาจเป็นผลให้ระบบของเราพังได้ 🙂 ในขั้นตอนนี้ ถ้าหากเรา plot graph ระหว่างพลังงานของระบบกับจำนวน step จะเห็นว่าพลังงานมันค่อยๆลดลง

มาลองทำ Molecular Dynamics Simulation ของโปรตีนกันครับ 4

ต่อจากครั้งที่แล้ว http://www.sakngoi.com/?p=275 มาถึงเรื่องการควบคุมความดันของระบบครับ 🙂  ในโปรแกรม NAMD การควบคุมความดันให้คงที่มีหลายวิธีครับเช่น ๑) Berendsen pressure bath coupling ๒) Extended system method ๓) Langevin Piston Algorithm ๔) Nosé-Hoover constant pressure method [latexpage] วิธีที่ ๑ ไอเดียก็คล้ายกับวิธี weak coupling with a heat bath สำหรับการควบคุมอุณหภูมิครับ (แต่เป็น pressure bath แทน) โดยที่อัตราการเปลี่ยนของความดันคือ \begin{eqnarray*} \frac{dP(t)}{dt} &=& \frac{1}{\tau_P}\left(P_{bath}-P(t)\right)\nonumber \end{eqnarray} โดย $\tau_P$ คือ coupling constant, $P_{bath}$ คือความดันของ bath โดยที่ปริมาตรของ

มาลองทำ Molecular Dynamics Simulation ของโปรตีนกันครับ 3

ต่อจากตอนที่แล้ว http://www.sakngoi.com/?p=238 พอเห็นภาพคร่าวๆของสมการการเคลื่อนที่ที่เราใช้แล้วนะครับ ตอนนี้เราจะมาลองดูเรื่องคุณสมบัติทางเทอโมไดนามิค (อุณหภูมิ, ความดัน) ของระบบที่เรากำลังสนใจครับ เพราะในการคำนวณจริงๆ เราต้องคิดถึงว่าระบบของเรานั้นอยู่ในสภาวะแบบไหน อุณหภูมิคงที่หรือเปล่า ความดันล่ะคงที่ด้วยหรือเปล่า จำนวนของอะตอมคงที่หรือมีการหายไปด้วยอีกหรือเปล่า เพื่อที่ว่าจะได้ดูสมจริงมากที่สุดเมื่อเอาไปเปรียบเทียบกับของจริงในธรรมชาติ ในโปรแกรม NAMD ที่ผมใช้นี้ การควบคุมในอุณหภูมิคงของระบบ ก็มีอยู่สามวิธีครับ คือ 1) rescaling of velocities 2) weak coupling with a heat bath 3) Langevin dynamics ในวิธีที่ 1 ก็คือค่อยๆเปลี่ยนอุณหภูมิไปเรื่อยๆที่ล่ะนิด ด้วยการคูณอุณหภูมิของระบบด้วยค่าคงที่ (จริงๆแล้วคูณกับความเร็ว)ครับ อุณภูมิมันสัมพันธ์กับพลังงานจลน์ของระบบ ดูสมการด้านล่างครับ ใน NAMD จะมีพารามีเตอร์คือ rescaleTemp – อุณหภูมิที่ต้องการ กับ rescaleFreq -ความถี่ที่จะคูณเจ้าค่าคงที่นี้ประมาณว่าจะคูณมันกี่step วิธีที่ 2 วิธีนี่ก็คล้ายกับวิธีแรก แต่จะมองเหมือนว่าระบบของเราถูกแช่อยู่ในอ่างของความร้อนที่มีอุณหภูมิที่เราต้องการ ระบบของเรากับอ่างนี้ก็จะมีการแลกเปลี่ยนความร้อนกัน โดยที่อัตราการแลกเปลี่ยนความร้อนหรืออุณหภูมิสามารถเขียนได้ว่า

มาลองทำ Molecular Dynamics Simulation ของโปรตีนกันครับ 2

ต่อจากตอนที่แล้ว (http://www.sakngoi.com/?p=189)ครับ Molecular dynamics (MD) ก็เป็นเทคนิคที่ฮิตฮอตสำคัญอันหนึ่งที่นักวิทยาศาสตร์ใช้ในการศึกษาเกี่ยวกับการเคลื่อนไหวหรือสั่นไหวของโมเลกุลต่างๆ โดยเค้าจะมองว่าพันธะที่คอยเชื่อมต่ออะตอมเข้าด้วยกันเป็นโมเลกุลนี้เป็นเหมือนสปริงที่เชื่อมลูกบอลเข้าไว้ด้วยกัน  ซึ่งพลังงานศักย์ทั้งหมดของระบบก็จะมาจากผลรวมทั้งหมดของ interaction ระหว่างลูกบอลที่เชื่อมกันผ่านสปริง(bond) และระหว่างสปริงด้วยกัน(non-bonded) ถ้าใครที่เรียนมาก็คงจะจำได้ว่าแรงของปริงนี้เป็นแรงอนุรักษ์ซึ่งเราจะเขียนได้ว่าแรงทั้งหมดที่กระทำกับลูกบอล(อะตอม) นี้เขียนได้ว่า โดย ก็คือพลังงานศักย์ ซึ่งเราเราสามารถเขียนได้ว่า โดยเทอมที่ไม่เป็นพันธะสามารถเขียนได้ว่าเป็นผลรวมศักย์จากแรงวันเดอร์วาลส์กับแรงจากประจุไฟฟ้า โดย และ ส่วนพลังงานศักย์ของแรงจากพันธะก็สามารถเขียนได้ว่าเป็นรวมจากรูปแบบของพันธะที่เป็นไปได้ทั้งหมด (ดูรูป เดี๋ยวมาใส่ให้ครับ) หรือ สมการที่เขียนมานี่ก็เป็นเพียงตัวอย่างเท่านั้นครับซึ่งมันจะแตกต่างกันไป ขึ้นกับว่าเราเป็นสาวกของสำนักไหน 🙂 แต่ล่ะสำนักก็จะมีรูปแบบของฟังก์ชั่นและค่า constants ต่างๆที่ใช้แตกต่างกัน (เราเรียก พวกฟังก์ชั่นนี้ว่า force field) force field ที่เป็นที่นิยมกันก็ได้แก่ AMBER (Assisted Model Building with Energy Refinement, http://ambermd.org/) OPLS, OPLS-AA (Optimized Potentials for Liquid Simulations,http://zarbi.chem.yale.edu/) CHARMM (Chemistry at HARvard

การทำงานของโปรแกรมสำหรับ Molecular dynamics simulation

ใครที่สนใจว่าโปรแกรมที่เราใช้ศึกษาด้าน molecular dynamics simulation เช่น AMBER, GROMACS, CHARMM หรือ NAMD ทำงานอย่างไร ผมขอแนะนำให้ลองศึกษาจาก source codes ของ  Mindy ครับ http://www.ks.uiuc.edu/Development/MDTools/mindy มันเป็นเหมือนเวอร์ชั่นย่อๆ ของ NAMD ครับ ซึ่งมันทำงานหลักๆอย่างที่ NAMD ทำเลยครับ จะไม่มีก็ในส่วนของการคำนวณแบบขนาน