ورود به حساب کاربری

نام کاربری *
رمز عبور *
یاداوری

آموزش lammps

امتیاز کاربران

ستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعال
 

                                                                                                                                                                    آشنایی با نرم افزار لمپس

 

اصطلاح شناسی

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

اتمی/ مولکولی: توانایی نرم افزار در شبیه سازی سیستم های اتمی و مولکولی (پیوندها).

بزرگ مقیاس: توانایی شبیه سازی سیستم های پر ذره.

به شدت موازی: توانایی نرم افزار در موازی سازی شبیه سازی های سنگین.

 

این نرم افزار با در اختیار داشتن میدان نیروهای (Force Field) متنوع فراهم کننده ی بستری مناسب برای شبیه سازی نمونه های مختلف از سیستم های اتمی و مولکولی گرفته تا انواع پروتئین ها و سیستم های زیستی می باشد. از مهمترین ویژگی های این نرم افزار می توان به توان بالای آن در شبیه سازی سیستم های پر ذره اشاره کرد. این بسته ی محاسباتی بر اساس نظریه ی دینامیک مولکولی کار می کند که در ابتدا در فیزیک نظری در دهه 1950 استفاده شد اما امروزه با گسترش حیطه کاربرد آن در علم مواد و زیست مولکولی نیز بکار می رود و قابلیت شبیه سازی سیستم های زیستی و مهندسی را دارا می باشد.

 

در مورد ساختارهای شبیه سازی شده با استفاده از این نرم افزار می توان به موارد زیر اشاره نمود:

  • سیستم های پریودیک (کریستال ها)
  • ذرات درشت دانه
  • مولکول های ارگانیک
  • فلزات
  • پلیمرها
  • DNA
  • پروتئین
  • ذرات کروی و بیضی گون با اندازه ی معین
  • ...

 

ویژگی های فنی نرم افزار:

زبان برنامه نویسی: C++

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

لایسنس: تحت پروانه GPL که از زیر مجموعه پروانه های فرهنگ گنو/لینوکس منتشر شده است به این معنی که دسترسی به کدها رایگان بوده و امکان تغییر کدها و انتشار دوباره آن مجاز و قانونی می باشد.

 

 

نقاط مثبت نرم افزار:

1- قابلیت اجرا به صورت موازی و سریال (روش معمولی).

2- قابلیت اجرا بر روی GPU ها: GPU به معنی هسته پردازش گرافیکی سیستم می باشد و انجام محاسبات گرافیکی بر عهده ی آن می باشد که این قابلیت موجب کم شدن بار محاسباتی CPU شده و محاسبات سریع تر صورت می پذیرد.

3- اجرای شبیه سازی ها با فایل های Input: این قابلیت به گونه ای موجب کارآمدی و انعطاف نرم افزار گردیده است.

4- متن باز.

5- قابلیت اجرای چند شبیه سازی به وسیله ی یک فایل Input.

6- قابلیت توسعه پذیری بالا.

7- امکان جفت شدن با سایر نرم افزارها.

8- پیش بینی حالت های مختلف شبیه سازی و پختگی کتابخانه های ویژه.

9- مستندات آموزشی و توسعه نرم افزاری کامل و به روز.

10- کاربرد پذیری بالا و خروجی های قابل قبول در جایگاههای مختلف.

 

 

نقاط منفی نرم افزار:

1- نداشتن واسط کاربری گرافیکی: برای اجرای نرم افزار نیاز به کار در محیط های متنی و دستورهای متنی داریم.

2- ناتوانی در تولید تصاویر گرافیکی متحرک در شبیه سازی های دینامیک مولکولی: نرم افزار لمپس در حقیقت فقط فایل های مختصات و اطلاعات خروجی را تولید کرده و برای ایجاد تصاویر گرافیکی متحرک به نرم افزارهای کمکی از قبیل VMD نیاز داریم که در ادامه این نرم افزار معرفی و توضیح داده خواهد شد.

3- ناتوانی در تولید نمودارهای اطلاعات خروجی.

4- ناتوانی در تعیین خودکار نیروهای اتمی و مولکولی: در شبیه سازی ها نیاز است که نیروها توسط کاربر تعیین شوند. البته این مسئله به نوعی موجب انعطاف در شبیه سازی شده و موجب آزاد گذاشتن شبیه ساز در انتخاب نیروها و بررسی اثر گذاری خاص آن نیرو شده است.

 

نمونه های زیر با نرم افزارهای Visualation به حالت گرافیکی در آمده اند:

 

 

 

خروجی های نرم افزار:

با استفاده از شبیه سازی های انجام شده توسط این بسته ی محاسباتی می توان بسیاری از ویژگی های ترمودینامیکی و کلاسیکی سیستم های مورد بررسی را بدست آورد. تعدادی از مهمترین خروجی های حاصل از اجرای بسته ی محاسباتی لمپس که با استفاده از آن می توان خواص مکانیکی و ترمودینامیکی مختلفی از سیستم شبیه سازی شده را محاسبه نمود را در زیر فهرست کرده ایم:

1- Log file شامل اطلاعات ترمودینامیکی سیستم شبیه سازی شده.

2- خروجی از مکان و سرعت هریک از اتم های شبیه سازی شده در هر لحظه دلخواه از زمان شبیه سازی شده.

3- نمایش مقادیر انرژی، دما، فشار و ... سیستم شبیه سازی شده.

4- میانگین گیری فضایی و زمانی از مشخصات تک تک اتم ها.

5- ارائه خروجی قابل نمایش گرافیکی از رفتار سیستم در بازه های زمانی شبیه سازی در فرمت هایی مختلف از قبیل XYZ, XTC, DCD, CFG.

و ...

 

 

قواعد کلی کدنویسی لمپس

چند نکته اساسی در مورد کلیه کدهای لمپس:

- هر خط غیر خالی به عنوان یک خط کد با معنا توسط لمپس شناخته می شود.

- دستورهای لمپس Case Sensitive هستند، بدین معنی که به بزرگ و کوچکی حروف حساس اند.

- حروف بزرگ (Upper-Case) برای نوشتن نام ها و آی دی ها استفاده می شوند.

- خط هایی از کد که با کاراکتر # شروع می شوند به عنوان توضیحات فرض می شوند و اجرا نخواهند شد و فقط به شبیه ساز در مورد کدها کمک می کنند.

 

 

ساختمان کدهای ورودی:

کدهای ورودی لمپس به صورت عمومی(پیشفرض) دارای 4 قسمت است:

1- قالب بندی (Initialization)

2- معرفی اتم ها و مولکول ها (Atom Definition)

3- تنظیمات و پیکربندی ها (Settings)

4- کدهای اجرایی (Run a Simulation)

 

دو بخش پایانی می توانند در یک کد به طور مکرر تکرار شوند. یعنی می توان با پیکربندی خاصی یک بار کد را اجرا نمود و سپس در ادامه ی کد پس از اعمال تغییرات موردنظر دوباره کدها را اجرا کرد و این روند می تواند به طور متوالی تکرار شده و نتایج خروجی با هم مقایسه شوند. در ادامه به طور خلاصه به تشریح هر کدام از 4 بخش فوق خواهیم پرداخت.

 

قالب بندی:

در این بخش پارامترهایی تنظیم خواهد شد که نیاز است قبل از تعریف اتم ها و مولکول ها یا خواندن فایل های ورودی، برای سیستم تعریف شده باشند. مهمترین دستورهای مرتبط با این بخش عبارتند از:

 

 

 

 معرفی اتم ها و مولکول ها:

برای معرفی اتم ها و مولکول ها در لمپس 3 روش در دسترس است:

1- خواندن اطلاعات ورودی از فایل های دیتا و ریستارت با دستورهای read_data و read_restart. در این فایل ها می توان ترکیب های مولکولی و ساختارهای مختلف را در شبیه سازی ها وارد نمود.

2- تعریف مستقیم اتم ها و شبکه های اتمی (بدون پیوندهای اتمی پیشفرض) با استفاده از دستورهای create_atom, create_box, region, lattice.

3- ترکیبی از دو روش بالا برای شبیه سازی های بزرگ و پیچیده (به کمک تکرار دستورهای دو شیوه ی فوق).

 

 

تنظیمات و پیکربندی ها:

پس از تعریف اتم ها و ساختارهای مولکولی حال سیستم آماده است تا پیکربندی های مختلفی بر آن اعمال شود. مانند حوزه و ضریب نیروهای بین مولکولی، پارامترهای اجرایی شبیه سازی، قواعد خروجی های شبیه سازی و ... . در ادامه به بخشی از تنظیمات قابل تعریف برای سیستم های شبیه سازی اشاره می کنیم:

- ضریب و حوزه تاثیر نیروهای بین اتمی و مولکولی با دستورهای زیر قابل تنظیم اند.

 

 

- پارامترهای مختلف شبیه سازی با دستورهای زیر تنظیم می شوند:

استفاده از دستورهای fix برای اعمال کردن ویژگی های مختلف اعم از حالت ها و شرایط مرزی، یکپارچگی زمان و ... .

 

 

- ویژگی های خروجی نیز با دستورهای زیر قابل تنظیم هستند:

 

 

کدهای اجرایی:

شبیه سازی مولکولی با استفاده از دستور run در لمپس اجرا می شود و دیگر کدهای مربوط به اجرای موازی(Parallel)  در این بخش قرار می گیرند.

- دستورهای ذکر شده ی بالا تنها بخش کوچکی از کل دستورهای قابل اعمال و اجرا در لمپس هستند به همین دلیل نیاز است که برای آشنا شدن کامل با دستورهای لمپس به Manual این نرم افزار رجوع شود.

 

نحوه نوشتن یک فایل ورودی:

در حالت کلی input file ورودی در لمپس باید دارای بخش های کلی زیر باشد:

 

 

تحلیل نمونه کد شبیه سازی دینامیک مولکولی در لمپس:

قالب بندی:

 

 

معرفی اتم ها و مولکول ها:

 

 

تنظیمات و پیکربندی ها:

 

 

 

نمایش خروجی ها:

 

 

 ----------------------------------------------

منبع : lammps.ir

 

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

 

سایت مرتبط : " بنیاد توسعه رایانش سریع و ابری "

 

 

آخرین مقالات

کامپایل و نصب mfix-2016.1

درک عملکرد دستگاه های انرژی، محیط زیست و فرایندها...

Unravelling Earthquake Dy...

Your browser does not support the video tag. In t...

اصطلاحات علمی در حوزه تحل...

اصطلاحات علمی تحلیل شبکه های اجتماعی: ظهور و شناس...

چگونه پوشه‌ها و فایل‌هایی...

مراحل لیست نمودن فولدرها و فایل های دارای بیشترین...

دستور نمایش حجم پوشه و فا...

دو مورد از کاربردی ترین دستورات لینوکس که دانستن آ...

Paradigm and DDN: Achievi...

The pressure to reduce both operating and capital...

How to Handle the Big Dat...

In this special guest feature, Larry Skowronek, V...

تحلیل انتشار اطلاعات یا D...

یکی از مهم‌ترین فرایندهای دینامیکی در شبکه‌های اج...

کدهای اساسی و الگو مورد ا...

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

آموزش کد محاسباتی wien2k

بسته‌ی محاسباتی WIEN2k شامل مجموعه­ ای از برنامه‌...

ماشین هوشمند بدون کمک انس...

یک ماشین هوشمند با حل معمای مکعب روبیک بدون هیچ آم...

آموزش lammps

اصطلاح شناسی شبیه ساز: فراهم کننده ی بستری برای ش...

آموزش نرم افزار amber (زب...

در اینجا تعدادی از آموزش های آماده شده توسط توسعه...

HPC Moves to the Cloud –...

While some domains that rely on computing systems...

یکسان سازی یا نرمال سازی...

در متن کاوی منظور از پردازش زبان طبیعی (NLP)، قابل...

پردازش متن با Jhazm نسخه...

jHazm نسخه جاوایی هضم از کتابخانه پایتون برای پردا...

Why Demand for In-Memory...

The demand for in-memory computing (IMC) and new...

آموزش عملی گراف کاوی و تح...

networkx یک بسته پایتون برای ایجاد، دستکاری و مطا...

معرفی مختصر مدل اقلیمی CW...

CWRF نسخه توسعه یافته اقلیمی مدل WRF می باشد که د...

بالاخره بعد از سالها یکه...

از سال 2013، ماشین های چینی در رتبه قدرتمندترین اب...

کاربردها و خطرات کلان داد...

داده شامل اطلاعات است؛ اما این همه‌ي ماجرا نیست....

Case Study: Supercomputin...

Hyperion Research has published a new case study...

داده کاوی بزرگ مقرون به ص...

چکیده : کاوش داده ی بزرگ، اغلب نیازمند منابع محاس...

Python: Unlocking the Pow...

The programming language Python is being used to...

Opportunities Abound: HPC...

The is the first entry in a five-part insideHPC s...

آموزش کد محاسباتی سیستا (...

در این آموزش سعی داریم انرژی کل و طول پیوند مولکو...

درمورد مدل‌های آب و هوایی...

دو اصطلاح اقلیم‌شناسی و هوا‌شناسی بیشتر مواقع به‌ج...

الگوریتم تجزیه بندرز خودک...

در نسخه‌ی ۱۲٫۷ نرم‌افزار CPLEX رویه‌ی جدیدی جایگز...

نرم افزار tecplot

معرفی : Tecplot در واقع یک ابزار تجسمی و رسم نمودا...

تجزیه گر یا پارسر متون و...

آپاچی تیکا: آپاچی تیکا یکی از پروژه‌های متن باز A...

گالری تصاویر