Cif = Crystallographic information File و راه های ایجاد ساختارهای پیچیده بلوری

فایلی با فرمت cif استانداردی است که بین انتشاردهندگان و نویسندگان مقالات علمی در حین اجراهای محاسباتی‌شان، رد و بدل می‌شود. یا برای اطمینان از درستی ساختاری که ایجاد کرده‌اند، مورد بررسی قرار می‌گیرد. این فایل‌ها را می‌توانید به راحتی از وبسایت crystallograpy.net دانلود کنید که معروف به crystallography open database یا COD است.

پس بهتر است اندکی با این فرمت آشنا شویم. البته فرمت‌های جالب دیگری نیز وجود دارند که ممکن است خروجی یک برنامه‌ی خاص باشند و در طی یک سری مقالات و ویدئوها ارائه می‌دهیم.

هدف از ارائه این دسته مقالات اولاً آشنایی همه‌ی دانشجویان و دریافت تخصص‌های لازم در این زمینه است. و اینکه به شما ثابت کنیم ساختن فایل‌های ورودی کار چندان مشکلی نیست و در بیشتر موارد نیازی به استفاده از نرم‌افزارهای خاص نیست. این مقالات به هیچ عنوان خالی از عیب نیست و ما در اینجا پذیرای شنیدن نظرات و نقدهای شما هستیم.

هر کسی که فیزیک ماده چگال یا شاخه‌های آن را تحصیل می‌کند، بهتر است که درکی کلی از نظریه‌ی گروه و گروه‌های فضایی داشته باشد.

فایل‌های cif نه تنها برای مشاهده‌ی بصری ساختارها استفاده می‌شوند، بلکه راهی برای حفظ و نگهداری ساختارهای جدیدی است که محققین در طی مطالعات محاسباتی‌شان آن‌ها را تولید می‌کنند. پس از این نظر باارزش هستند.

اطلاعات بیشتر را می‌توانید در مقاله‌ی Acta Cryst. (1991). A47, 655–۶۸۵ by S. R. Hall, F. H. Allen and I.D. Brown ببینید.

ذکر یک نکته هم حائز اهمیت است. هیچ نرم‌افزاری نمی‌تواند به تنهایی هر ساختاری را ایجاد کند. اما استفاده از کتابخانه‌هایی که دارای ساختارهای بهینه شده از نظر نیرو یا پارامترهای دیگر هستند، می‌تواند به شما کمک کند.همیشه وجود یک کاربر حاذق الزامی است.

با توجه به اینکه بسیاری از محققین فایل‌هایی با استاندارد cif را به ژورنال‌های ارائه می‌دهند – ابتدا ساختار کلی آن را معرفی می‌کنیم.

داده‌ها در یک فایل تکست معمولی نوشته می‌شوند و با پسوندcif ذخیره می‌شوند. این فایل را بسیاری از برنامه‌های گرافیکی می‌توانند بخوانند و به تصویر بکشند.

مثلا برای نوشتن حجم یاخته از ‘cell_volume_’ استفاده می‌شود. یا جایگاه اتم‌ها را می‌توانید با’atom_site_fract_x/y/z_’مشخص می‌شوند.

یا لیبل‌های اتمی را نیز با نوشتن ‘atom_site_label_’ تقریبا نوشتن فایل cif همین است. برای دانشجویان فیزیک چگال همین کافی است تا از روی آن یک ساختار را رسم کنند.

البته این برای دانشجویانی است که می خواهند کارشان راه بیافتد.

یادگیری نوشتن اسکریپت cif را می‌توانید با صرف چند دقیقه فراگیرید و خودتان فایل cif بنویسید. اما اگر می‌خواهید با نرم‌افزار انجام دهید از PLATON استفاده کنید که یک نرم‌افزار حرفه‌ای در این زمینه است و یکی از خروجی‌هایش فایل cif استاندارد است. این نرم‌افزار فوق‌العاده قدرتمند و پیشرفته است.

کد محاسباتی کوانتوم شیمیایی دیگری نیز با نام CRYSTAL وجود دارد که با XCRYSDEN که معرف حضور بسیاری از شماست، کار می‌کند. اما مادامی که این کد را نداشته باشید، نمی‌توانید از امکانات ساخت ساختار در XCRYSDEN استفاده کنید و این کد هم گران قیمت است.

از پکیج VNL هم می توانید برای ساخت ساختارهای ساده یا آنهایی که در دیتابیسش دارد، استفاده کنید.

PLATON, ATOMSK ,molSimplify  و VMD فعلا برای شروع گزینه‌های بسیار مناسبی هستند. ذکر این نکته هم مهم است که atomsk و molsimplify میتوانند ساختار بسازند ولی دیگر برنامه هاجهت نمایش و کارهای post proccessing هستند.

خصوصا برای کسانی که می‌خواهند جذبی انجام دهند یا کمپلکس‌های پیچیده بسازند یا دوست ندارند (یا حوصله‌اش را ندارند ۹۰٪) خودشان ساختار را با ژرف‌کاوی بنویسند، انتخاب بسیاری خوبی است.

البته ناگفته نماند این نرم‌افزارهای پیچیدگی‌های بسیار زیادی دارند.

نکات cif نویسی

TypeSet باید ASCII باشد. کاراکترهای دارای لهجه نباید در فایل نوشته شوند.

طول خطوط حداکثر باید ۸۰ کاراکتر باشد.

در نوشتن cif باید برای هر بخشی که مشخص می‌کنید یک بلوک تعیین کنید و آن‌را با _data آغاز کنید. مثل

‘data_anush’ یا ‘data_team2(3)’

پس ابتدای کد باید با بلوک data_آغاز شود. از بلوک data_anush فقط مجازید یک بار استفاده کنید. ابتدای کار بعد از Commentها می‌توانید، بلوک‌ها ظاهر می‌شوند.

نام‌های داده‌ای یا Data names

نام‌های داده‌ای با زیرخط یا underscore شروع می‌شوند و به ۲ شکل نوشته می‌شوند:

۱- مقادیر داده‌ای تکی Associated single data Values

مثال:

cell_length_a 7.245_

۲- مقادیر داده‌ای چندتایی Associated multiple data Values

loop_
_atom_site_label
_atom_site_fract_x
_atom_site_fract_y
_atom_site_fract_z
O1 .4254(4) .5699(1) .3026(1)
C2 .5630(5) .5087(2) .3246(1)

هر عبارتی که با زیرخط آغاز می‌شود، یک نام داده‌ای است. یک لغت‌نامه‌ی cif وجود دارد که در آن تمام نام های داده‌ای دارای معنی در آن فهرست‌وار بیان شده است. البته خودتان هم می‌توانید نام‌های داده‌ای از خودتان اختراع کنید و به لغت‌نامه بیافزایید. یک مثال از این نمونه نیز برنامه‌ی xtal است که نام‌های داده‌ای جدیدی را به لغت‌نامه اضافه کرده که با

_xtal_

شروع می‌شوند. Xtal نیز برنامه‌ای قوی است که می‌توانید برای بررسی cif از آن استفاده کنید.

مقادیر داده‌ای

روبروی نام‌های داده‌ای باید مقادیر آن‌ها را گزارش دهید. مقادیر داده‌ها می‌توانند، بخشی از یک نوشته، عدد یا یک رشته باشند. به صورت کلی گذاشتن فاصله قابل قبول نیست. اما اگر از نقل قول (‘ یا “) استفاده کنید گذاشتن فاصله در آن نیز قابل قبول است.

مثال:

_diffrn_radiation_source ’X-ray tube’

یا

_diffrn_radiation_source “X-ray tube”

یا

_diffrn_radiation_source
; X-ray tube
;

اما اگر qoutation باشد، باید از underscore استفاده کنید:

_diffrn_radiation_source X-ray_tube

اگر متن خیلی طولانی است بهتر است از نقطه ویرگول استفاده کنید—-> ;

;
This is the first of many lines of text.
This is the second…
dap pdapp pappa ppppff f
;

ساختار یک فایل cif را تقریبا آموخیتم.

برخی از نام‌های داده‌ای مهم به این صورت هستند، که ممکن است با آن‌ها برخورد کنید:

loop__symmetry_equiv_pos_as_xyz
+x,+y,+z -x,-y,-z
_symmetry_Int_Tables_number 221
_symmetry_space_group_name_H-M ’P -1’
_cell_length_a 13.231(1)
_cell_length_b 13.857(1)
_cell_length_c 11.425(1)
_cell_angle_alpha 99.48(1)
_cell_angle_beta 104.63(1)
_cell_angle_gamma 109.68(1)

برای دستیبابی به اطلاعات بیشتر به لغت‌نامه‌ی CIF می‌توانید مراجعه کنید که یک فایل PostScript است.

یک بلوک cif نمونه می‌تواند به این صورت باشد:

data_symmetry_Int_Tables_number
_name        ’_symmetry_Int_Tables_number’
_category    symmetry
_type        numb
_definition
; Space-group number from International Tables
for Crystallography, Vol. A (1987).
;

در جلسات آینده به بحث درباره‌ی PLATON و atomsk می‌پردازیم.(برنامه‌های مناسب برای ساختن ساختارهای مشکل، با خروجی CIF : Xtal_GX, PLATON, BUILDER). البته ابتدا باید اطلاعات بلور را داشته باشید.

برنامه‌های دیگری هم هستند که درستی فایل‌های CIF را بررسی می‌کنند که در خود سایت IUCR نامشان آمده است.

برای شروع با برنامه‌ی molSimplify آغاز می‌کنیم.

این برنامه می‌تواند لیگاندهای فلزی/Metal coordination Complex ها را براحتی بسازد، حتی بخشی به نام slab builder دارد که می‌توان با slab ایجاد کرد.

ظاهر GUI آن به شکل زیر است.

molsimplify برنامه ای گرافیکی متنی برای ایجاد ساختار و لیگاندهای فلزی و ایجاد سطوح

molsimplify برنامه ای گرافیکی متنی برای ایجاد ساختار و لیگاندهای فلزی و ایجاد سطوح

open-babel را می‌توانید با wget دریافت کنید:

wget https://sourceforge.net/projects/openbabel/files/openbabel/ 2.3.2/openbabel-2.3.2.tar.gz

یا خودتان آن‌را دانلود، نصب و در محیط پایتون import کنید.

البته می‌توان با دستور sudo apt-get install python-openbabel نیز نصب کنید. نسخه لینوکس molSimplify را نیز دریافت و نصب کنید.

تمامی برنامه‌های موردنیاز نصب برای نصبش را طبق فایل راهنمایش دریافت و نصب کنید.

مثالی که در اینجا بررسی می‌شود، برگرفته از UserGuide برنامه‌ی molSimplify است. قابلیت‌های اجرای متنی مطمئناً بالاتر از محیط گرافیکی است. اما برای فعلا همین محیط گرافیکی را بررسی می‌کنیم که بیشتر ویژگی‌ها را دارد.

سمت چپ GUI، شکل بالا می‌توانید اطلاعات اتم‌ها را وارد کنید. در ساختارهای مولکولی یک core وجود دارد – تعداد زیادی core, لیگاند و مولکول در دیتابیس وجود دارد (البته می‌توانید به دیتابیس‌های بیشماری دسترسی داشته باشید که ویژگی بسیار ارزشمندی است).

بررسی یک مثال:

ساخت یک Metal coordination Complex – کمپلکس ۶ پر با هسته‌ی کبالت

این ساختار یک کمپلکس ۶ پر با هسته‌ی کبالت است که ساختار octahedral دارد. در بخش تصاویر گوگل به دنبال octahedral جستجو کنید تا بفهمید چرا به آن هشت وجهی می‌گویند. در هر شش جایگاه پیوند، یک لیگاند آمونیا قرار می‌گیرد.

Frequncy نشان دهنده‌ی coordination است. که برای آمونیا عدد ۶ انتخاب می‌شوند. میتوان از SMILEها هم برای وارد کردن هسته‌ها یا لیگاندها استفاده کرد. هسته‌ها می‌توانند متعدد باشند. با کاما یا space از هم تفکیک کنید.

molsimplify برنامه ای گرافیکی متنی برای ایجاد ساختار و لیگاندهای فلزی و ایجاد سطوح

molsimplify برنامه ای گرافیکی متنی برای ایجاد ساختار و لیگاندهای فلزی و ایجاد سطوح

شما با این اطلاعات ورودی قادر هستید، چنین ساختاری ایجاد کنید.

molsimplify برنامه ای گرافیکی متنی برای ایجاد ساختار و لیگاندهای فلزی و ایجاد سطوح

molsimplify برنامه ای گرافیکی متنی برای ایجاد ساختار و لیگاندهای فلزی و ایجاد سطوح

در جلسات آتی که سعی میکنیم به صورت ویدئویی باشد، مفصلتر ساختار خواهیم ساخت، فایل cif خواهیم ساخت – و فرمت­ها را بهم تبدیل میکنیم.

نظرات