เราจะกำหนดกลุ่มจุดของโมเลกุลได้อย่างไร?


18

ในที่สุดคุณก็สามารถค้นหาวิธีการจัดเรียงอะตอมในหน่วยงานโมเลกุลที่ค้นพบใหม่ของคุณ ขณะนี้คุณกำลังอยู่ในความครอบครองของพิกัดอะตอมมากมายชนิดอะตอมความยาวพันธะประเภทพันธะและสิ่งที่ไม่ได้อยู่ในโมเลกุลของคุณ ตอนนี้คุณสนใจที่จะกำหนดกลุ่มจุด (กลุ่มสมมาตร) ของโมเลกุลของคุณ

สำหรับโมเลกุลอย่างง่ายเช่นมีเธน ( ) หรือเบนซีน ( ) มันเป็นเรื่องง่ายของการตรวจสอบด้วยภาพเพื่อกำหนดกลุ่มจุดที่มีโมเลกุลอยู่ อย่างไรก็ตามนี่เป็นไปไม่ได้เมื่อโมเลกุลมีขนาดค่อนข้างใหญ่D 6 ชมTdD6ชั่วโมง

เมื่อกำหนดโมเลกุลที่เก็บไว้ในรูปแบบข้อมูลที่สะดวก (* .pdb, * .mol ​​ฯลฯ ) คุณจะกำหนดกลุ่มสมมาตรของโมเลกุลได้อย่างไร


3
สำหรับสิ่งที่มันคุ้มค่า VMD รวมถึงปลั๊กอินสำหรับวัตถุประสงค์นี้เรียกว่าSymmetryTool
Juan M. Bello-Rivas

คำตอบ:


13

ประสบการณ์หลักของฉันคือโครงสร้างคริสตัลและมีจำนวนจุดสมมาตรที่ปรากฏในผลึก ดังนั้นอัลกอริทึมที่ฉันจะใช้จะแตกต่างจากที่คุณใช้ในโมเลกุลเล็กน้อย แต่ไม่น่าเป็นไปได้ที่จะมีโมเลกุลขนาดใหญ่ที่จะแสดงสมมาตรแบบต่อเนื่องเช่นสมมาตรตามแนวแกนใน Hหรือ COดังนั้นวิธีการจึงควรซ้อนทับกันค่อนข้างดี เมื่อพิจารณาความสมมาตรในระบบจะมีความแตกต่างกันสองประการ แต่เกี่ยวข้องกันซึ่งต้องคำนึงถึง: ท้องถิ่นและทั่วโลก222

สมมาตรท้องถิ่น

Local symmetry คือความสมมาตรของสภาพแวดล้อมท้องถิ่นรอบ ๆ จุดที่กำหนด โดยเฉพาะอย่างยิ่งความสมมาตรในแต่ละตำแหน่งของอะตอมจะกำหนดแยกอะตอมในท้องถิ่นและในระดับหนึ่งในสภาพแวดล้อมทางเคมีและเป็นกลุ่มย่อยของสมมาตรระดับโลก ตัวอย่างเช่นในเบนซีนเบนซินสมมาตรในท้องถิ่นประกอบด้วยระนาบการสะท้อนสองอันและแกน (หมุนแบบ ) (เห็นได้ชัดว่ามีเพียงสองการดำเนินการที่จำเป็นในการสร้างกลุ่มจุดท้องถิ่นทั้งหมด)180 2180

ป้อนคำอธิบายรูปภาพที่นี่

จากมุมมองของอัลกอริทึมสิ่งที่เราทำคือการหาเพื่อนบ้านที่ใกล้ที่สุดของอะตอมเป้าหมายแล้วแจกแจงทุกวิธีที่เราสามารถหมุนสภาพแวดล้อมนั้นเกี่ยวกับอะตอมกลางและทำให้มันคงเดิม ยิ่งไปกว่านั้นมันเป็นการแก้ปัญหาสำหรับเมทริกซ์มุมฉากทั้งหมดเช่นนั้นA

A(xผม-x)=xJ-x

โดยที่และเป็นตำแหน่งของอะตอมของสายพันธุ์เดียวกันและคือตำแหน่งของส่วนกลางหรือเป้าหมายอะตอม แต่ฉันจะดูรูปแบบที่ง่ายกว่าก่อนเช่นมีระนาบการสะท้อนอยู่ก่อนที่จะพยายามหาโดยทั่วไปหรือไม่ x jx cAxผมxJxA

อีกความคิดหนึ่งคือการใช้เมทริกซ์โมเมนตัมเชิงมุมเป็นเครื่องกำเนิดไฟฟ้าของการหมุน

A=ประสบการณ์(ผมφn^L)

โดยที่เป็นหน่วยเวกเตอร์เกี่ยวกับการหมุนของมุมดำเนินการและเป็นเวกเตอร์ของเมทริกซ์โมเมนตัมเชิงมุมสามมิติ จากนั้นก็จะมีเพียง 3 ราชวงศ์ไว →การL =(Lx,LY,LZ)n^R3φL=(Lx, LY, LZ)A

ความสมมาตรระดับโลก

เมื่อความสมมาตรของท้องถิ่นกำหนดสภาพแวดล้อมรอบ ๆ อะตอมเดียวความสมมาตรทั่วโลกจะกำหนดว่าอะตอมจะแลกเปลี่ยนซึ่งกันและกันได้อย่างไร ขั้นตอนแรกในการกำหนดสัดส่วนทั่วโลกคือการกำหนดอะตอมที่เทียบเท่า ก่อนกำหนดประเภทและทิศทางสัมพัทธ์กับเพื่อนบ้านที่ใกล้ที่สุด (และที่ใกล้ที่สุดที่สองหรือสูงกว่าถ้าต้องการ) อะตอม อะตอมสองตัวนั้นเทียบเท่ากันหากเพื่อนบ้านมีการเตรียมพื้นที่เหมือนกัน นี่คือการคำนวณที่ตรงไปตรงมา

ขั้นตอนที่สองนั้นเหมือนกับคร่าว ๆ ที่พบในกรณีสมมาตรในท้องถิ่นยกเว้นว่าจุดศูนย์กลางมวลของโมเลกุลน่าจะเป็นศูนย์กลางของความสมมาตร เมื่อมาถึงจุดนี้หากมีการกำหนดสัดส่วนท้องถิ่นอาจมีการดำเนินการที่ไม่ซ้ำกันเพียงไม่กี่อย่างเพื่อสร้างกลุ่มทั้งหมด ตัวอย่างเช่นในโครงสร้างผลึก B20แต่ละอะตอมมีสมมาตรในท้องถิ่นและกลุ่มจุดเต็มถูกสร้างขึ้นโดยรวมแกนสกรูหมุน2 เท่า ( ) ซึ่งเปลี่ยนอะตอมหนึ่งเป็นอะตอมอื่น ในน้ำมันเบนซินจำเป็นต้องมีการใช้งานสองอย่าง: การหมุน6 เท่า ( ) ผ่านแกนกลางและระนาบการสะท้อนที่แบ่งพันธะ360 18060

แก้ไข : สำหรับโครงสร้าง B20 คุณสามารถใช้แกนสองแกนแทนเพื่อสร้างกลุ่มแบบเต็ม สิ่งนี้จะช่วยให้คุณหลีกเลี่ยงวิธีการกำหนดแกนสกรูโดยอัตโนมัติ3

ข้อควรระวัง : ข้อควรระวังในการใช้ความคิดในส่วนสมมาตรท้องถิ่นในส่วนส่วนกลางเพื่อให้การดำเนินการสมมาตรต้องเปลี่ยนสภาพแวดล้อมด้วย ดังนั้นถ้าคุณพบจากด้านบนมันจะให้สมมาตรเท่านั้นเนื่องจากการเปลี่ยนแปลงอาจไม่เปลี่ยนสภาพแวดล้อมอย่างเหมาะสมและการตรวจสอบเพิ่มเติมนั้นจำเป็น ตัวอย่างเช่นถ้าแหวนเบนซีนมีอะตอมไฮโดรเจนยื่นออกมาจากระนาบของวงแหวนด้านหนึ่งจากนั้นเครื่องบินสะท้อนที่ตัดกับพันธะคาร์บอน - คาร์บอนจะดี แต่การคล้ายกับการเกิดพันธะจะไม่ใช่เพราะ มันจะไม่ทำซ้ำสภาพแวดล้อมท้องถิ่น180 A180

แก้ไข - การแปล : มีความซับซ้อนอีกอย่างหนึ่งที่การอภิปรายข้างต้นเกี่ยวกับความสมมาตรในท้องที่นั้นไม่สนใจ: การแปล เป็นทางการการดำเนินการสมมาตรที่ถูกต้องคือ

A(xผม-x)+เสื้อ=xJ-x

โดยที่และข้างต้นและเป็นการแปลโดยพลการ ในผลึก symmorphicx k tAxkเสื้อ

t=n1a1+n2a2+n3a3

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


1
@JM ฉันเพิ่มความระมัดระวังในการใช้ความคิดในกรณีที่สมมาตรท้องถิ่นสุ่มสี่สุ่มห้าในกรณีทั่วโลก ในกรณีทั่วโลกมีความเข้มงวดเพิ่มเติมว่าสภาพแวดล้อมในท้องถิ่นจะต้องได้รับการเปลี่ยนแปลงโดยการดำเนินการแบบสมมาตรและฉันไม่คิดว่าฉันได้ทำให้ชัดเจน
rcollyer

@JM ฉันลืมที่จะรวมการอภิปรายใด ๆ เกี่ยวกับการแปลและผลกระทบต่อการดำเนินงานสมมาตร ฉันได้รวมภาคผนวกสั้น ๆ
rcollyer

ฉันเห็น. ฉันคิดเสมอว่าอัลกอริทึมสำหรับการทำสิ่งนี้จะทำให้โมเลกุลหรือคริสตัลกลายเป็น "การวางแนวมาตรฐาน" (สิ่งที่อาจหมายถึง) ก่อนที่จะตรวจสอบประเทศเพื่อนบ้านและเช่นนั้น
JM

1
@JM สำหรับคริสตัลมีสอง "ทิศทางมาตรฐาน" ตาข่ายคริสตัลและตาข่ายดั้งเดิมและพวกเขาไม่อาจจะเหมือนกันเช่นในหน้าเป็นศูนย์กลางระบบลูกบาศก์ สำหรับโมเลกุลฉันอาจใช้จุดศูนย์กลางมวลเป็นจุดกำเนิดจากนั้นทำเส้นทแยงมุมช่วงเวลาของแรงเฉื่อยเทนเซอร์เพื่อ "จัดแนว" ให้เหมาะสม ที่จะไม่กำจัดความจำเป็นในการหมุนหลายศูนย์ถ้าจำเป็นต้องมีการดำเนินการสมมาตรทั่วไปเช่นแกนสกรูในคริสตัล
rcollyer

11

มีรหัสเก่าสำหรับจุดประสงค์ที่ใช้ในแพ็คเกจไม่กี่ชุดที่เรียกว่า SYMMOL อัลกอริทึมที่ใช้อธิบายไว้ในบทความต่อไปนี้:

T. Pilati และ A. Forni, "SYMMOL: โปรแกรมเพื่อค้นหากลุ่มสมมาตรสูงสุดในกลุ่มอะตอมให้ความอดทนนำหน้า" , J. Appl cryst พ.ศ. 2541 31, 503-504

โดยพื้นฐานแล้วมันเป็นตัวกำหนดศูนย์กลางของความเฉื่อยจากนั้นนำการดำเนินการสมมาตรที่เป็นไปได้มาใช้ รหัสที่ตัวเองไม่สามารถใช้ได้อีกจากเว็บไซต์ของผู้เขียน แต่มันมีอยู่ (กับชุดของแฟ้มตัวอย่างเช่นใส่) ที่นี่


3

ฉันยินดีที่จะตอบว่ามีโอเพนซอร์สคุณภาพสูงสำหรับสิ่งนี้:

https://github.com/mcodev31/libmsym

libmsym เป็นไลบรารี C ที่เกี่ยวข้องกับสมมาตรกลุ่มจุดในโมเลกุล สามารถกำหนดสมมาตรและสร้างโมเลกุลของกลุ่มจุดใด ๆ นอกจากนี้ยังสามารถสร้างสมมาตรที่ดัดแปลงจากการรวมกันเชิงเส้นของอะตอม orbitals สำหรับชุดย่อยของทุกกลุ่มจุดและโมเมนตัมเชิงมุมวงโคจร (l) และวงโคจรโครงการเป็นตัวแทนลดลงด้วยองค์ประกอบ larges

ฉันได้ปรับ libmysm ให้เป็นAvogadroและจะมีการเผยแพร่ในเดือนสิงหาคม 2558

ฉันเชื่อว่าผู้เขียนกำลังเขียนต้นฉบับเกี่ยวกับรายละเอียด ฉันจะแก้ไขคำตอบนี้เมื่อมีการเผยแพร่


1

หากคุณยังสนใจในเรื่องนี้ฉันมีสคริปต์ไพ ธ อนที่จะให้คุณ (Abelian) กลุ่มจุด (และไม่ซ้ำซ้อนไม่ซ้ำซ้อน) อะตอมของโมเลกุลใด ๆ ภายในความอดทนที่ระบุ

ความแตกต่างระหว่างรูทีนของฉันกับคนอื่น ๆ มากมายที่ฉันเคยเห็นก็คือการวางแนวเริ่มต้นนั้นไม่สำคัญทำให้มีประโยชน์ในการรันในผลลัพธ์ของการออปติไมซ์ทางเรขาคณิตที่คุณไม่ได้ระบุกลุ่มจุดเริ่มต้น ข้อสันนิษฐานเช่นนี้สามารถ จำกัด เรขาคณิตบังคับให้สมมาตรและทำให้สภาพพื้นดินไม่สมดุล)

หากคุณยังสนใจแจ้งให้ฉันทราบฉันจะแบ่งปันที่นี่


ฉันจะสนใจบทนี้แน่นอน คุณยินดีที่จะทำให้มันเป็นโอเพนซอร์ซ (เช่นผ่าน GitHub?)
Geoff Hutchison

@GeoffHutchison ฉันจะเล่นกับมันเพราะมันอยู่ในโปรแกรมที่มีขนาดใหญ่กว่า (ปัจจุบันเป็นส่วนหนึ่งของโปรแกรมที่รัน molpro โดยอัตโนมัติเพื่อลองและย่อขนาดเรขาคณิตแล้วแยกรูปทรงเรขาคณิตที่สร้างขึ้นและ orients พวกมันออก) จะง่ายพอสมควรในการแยกและทำความสะอาดเล็กน้อย
จะ

ขอบคุณ ฉันยินดีที่จะทำความสะอาดตามความจำเป็น มีความต้องการเครื่องมือชนิดนี้อย่างแน่นอน
เจฟฟ์ฮัทชิสัน

1

ฉันเคยเขียนสคริปต์ Python ขนาดเล็กเพื่อตรวจจับสมมาตรกลุ่มจุดสำหรับโมเลกุล หากคุณสนใจโปรดดูhttps://github.com/sunqm/pyscf/blob/master/symm/geom.py


1
ปรากฏว่า OP มีความสนใจในวิธีการมากกว่ารหัส มันจะมีประโยชน์ถ้าคุณสามารถอธิบายวิธีการของคุณในรายละเอียดเพิ่มเติม
เปาโล

ลิ้งค์ อาจวางลิงก์ไปยังบิลด์เฉพาะบน github แทนที่จะเป็นปรมาจารย์ปัจจุบัน
Erik Kjellgren

0

มีชุดซอฟต์แวร์บางอย่างเช่น Materials Studio ที่สามารถระบุกลุ่มจุดของโมเลกุลให้คุณโดยอัตโนมัติ อย่างไรก็ตามถ้าคุณต้องการที่จะคิดออกเองมีผังงานที่ดีที่จะนำคุณไปสู่กระบวนการ นอกจากนี้คุณยังสามารถดูเว็บไซต์สมมาตร Otterbeinเพื่อดูบทช่วยสอนและการสาธิตเชิงโต้ตอบ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.