© حقوق الطبع والنشر لعام 2021 محفوظة لتوم هيرشبيرج وكايل بيفر وإيليني باناجيوتو
إذا كنت تستخدم هذا الرمز يجب عليك الرجوع إلى الورقة التالية:
Herschberg, T., Pifer, K. and Panagiotou, E., 2022، حزمة حسابية لقياس التشابك الطوبولوجي في البوليمرات والبروتينات والأنظمة الدورية (TEPPP)، شركات. فيز. مشترك. 286108639
تفضل بزيارة www.elenipanagiotou.com للحصول على معلومات محدثة
ما هو TEPPP؟
ابدء
مبنى
الاستخدام
أمثلة
غاوس ربط متكامل
تتلوى الدورية
جونز متعدد الحدود
مسح جونز متعدد الحدود
رخصة
المساهمين
TEPPP عبارة عن حزمة برامج مصممة للمساعدة في حساب العديد من قيم التشابك الطوبولوجي في الأنظمة الجزيئية. لقد تم تصميمه للعمل بشكل تسلسلي وبالتوازي عندما يقترن بتثبيت MPI فعال.
يتطلب TEPPP مترجمًا يدعم بشكل كامل C++ 17 (GCC 10 وما فوق). إذا كان التنفيذ المتوازي مطلوبًا، فيجب أن يكون تثبيت MPI فعالًا موجودًا في متغير PATH.
لإنشاء الإصدار التسلسلي فقط من البرنامج، قم بتشغيل الأمر التالي:
جعل المسلسل
لإنشاء الإصدار الموازي فقط من البرنامج، قم بتشغيل الأمر التالي:
جعل mpi
لإنشاء كلا الإصدارين من البرنامج، اكتب الأمر التالي:
جعل كل شيء
يدعم الإصدار الحالي من TEPPP فقط تشغيل الأوامر الفردية من خلال سطر الأوامر للحصول على النتائج المرجوة. إذا كانت إحداثيات النظام المراد تحليله موجودة في ملف بامتداد غير .teppp، فيجب تحويلها إلى ملف يمكن قراءته بواسطة TEPPP. للقيام بذلك، قم بتشغيل الأمر التالي في دليل التثبيت ذي المستوى الأعلى:
./convertor "/path/to/filename.ext" CHAIN_LENGTH NUM_CHAINS BOX_DIM
حيث CHAIN_LENGTH
هو عدد الذرات في كل سلسلة، و NUM_CHAINS
هو عدد السلاسل في النظام، و BOX_DIM
هو طول جانب واحد من المربع الدوري إذا كان النظام يستخدم شروط الحدود الدورية. إذا كان النظام لا يستخدم شروط الحدود الدورية، فأدخل 0 لـ BOX_DIM
.
؟ لاحظ أن ملفات .teppp فقط هي المدعومة. يجب تحويل كافة ملفات البيانات الأخرى إلى .teppp إما بواسطة المستخدم أو باستخدام الأداة المساعدة للمحول. يتم دعم ملفات .read_data فقط (مع كافة الإحداثيات في شكل غير ملفوف) بواسطة أداة المحول المساعدة في هذا الوقت. بمجرد تشغيل أمر المحول، سيتم وضع الملف الذي يحتوي على البيانات المحولة في الدليل
TEPPP/converted
لمزيد من الاستخدام.
بمجرد إنشاء ملف .teppp بالإحداثيات المطلوبة، يمكن استخدام أي من أوامر البرنامج بالتزامن مع الملف لتوليد النتائج. الأوامر base
المتوفرة حاليًا هي:
جونز | يحسب متعدد حدود جونز لكل سلسلة في النظام
لك | حساب رقم الربط بين كل زوج من السلاسل في أرقام ربط النظام
ص | يحسب Writhe من كل سلسلة في النظام
يتم استدعاء كافة الأوامر base
باستخدام نفس بناء الجملة:
اسم الملف (بما في ذلك المسار) لملف البيانات الذي يحتوي على إحداثيات النظام المراد تحليله متبوعًا بـ CHAIN_LENGTH NUM_CHAINS ARCHITECTURE (NUM_PROJECTIONS) BOX_DIM، حيث CHAIN_LENGTH: طول السلاسل في النظام (على افتراض أن جميعها لها نفس الطول) NUM_CHAINS: عدد السلاسل الموجودة في بنية النظام: حاليا تدعم الحلقة أو الخطية، ويرمز لها 0، 1 على التوالي. NUM_PROJECTIONS: ينطبق فقط على جونز - وهو عدد الإسقاطات المستخدمة لحساب كثيرة حدود جونز. إذا كنت تعمل مع سلاسل حلقية، استخدم 1. BOX_DIM: أبعاد الصندوق الدورية، بافتراض وجود صندوق مكعب
بالإضافة إلى هذه الأوامر base
، هناك عدة أنواع من الأوامر المتنوعة المضمنة أيضًا في TEPPP. تقوم الأوامر periodic
بتحليل التشابك الطوبولوجي لنظام معين مع مراعاة شروط الحدود الدورية. الأوامر periodic
المتوفرة حاليًا هي:
الدورية_ور | يحسب Writhe الدوري لكل سلسلة في النظام
الدورية_لك | حساب رقم الربط الدوري بين كل زوج من السلاسل في النظام
بناء جملة استدعاء الأوامر periodic
هو نفس بناء جملة استدعاء الأوامر base
.
تُستخدم أوامر scan
لتحليل التشابك الطوبولوجي لأجزاء معينة من السلاسل بدلاً من السلسلة بأكملها. على سبيل المثال، إذا أراد المستخدم الحصول على جزء من سلسلة واحدة يساهم بأكبر قدر في إجمالي تلك السلسلة، فسيستخدم أمر scan
. أوامر scan
المتوفرة حاليًا هي:
jones_scan | حساب كثيرة حدود جونز على طول كل سلسلة بأطوال مسح محددة
lk_scan | يحسب رقم الارتباط على طول كل زوج من السلاسل بأطوال مسح محددة
wr_scan | يحسب التموج على طول كل سلسلة بأطوال مسح محددة
يتطلب استدعاء أوامر scan
4 معلمات، والتي يجب توفيرها في سطر الأوامر بالترتيب الموضح أدناه:
اسم الملف (بما في ذلك المسار) لملف البيانات الذي يحتوي على إحداثيات النظام المطلوب تحليله، متبوعًا بـ CHAIN_LENGTH NUM_CHAINS ARCHITECTURE (NUM_PROJECTIONS)
طول الفاصل الزمني الأولي للمسح الضوئي.
طول الفاصل الزمني النهائي للمسح.
مقدار زيادة الفاصل الزمني بعد اكتمال الفحص.
BOX_DIM (اختياري)
أوامر mpi
هي إصدارات متوازية من الأوامر base
periodic
وأوامر scan
التي تمت مناقشتها أعلاه. إنهم يستفيدون من MPI لتقسيم عبء العمل بين عدد معين من المعالجات بدلاً من أداء العمل بشكل تسلسلي. أوامر mpi
المتوفرة حاليًا هي:
jones_mpi | يحسب متعدد حدود جونز لكل سلسلة في النظام بالتوازي
lk_mpi | حساب رقم الربط بين كل زوج من السلاسل في النظام على التوازي
wr_mpi | يحسب متموج كل سلسلة في النظام بالتوازي
الدورية_wr_mpi | يحسب المتموج الدوري لكل سلسلة في النظام بالتوازي
الدورية_lk_mpi | حساب رقم الربط الدوري بين كل زوج من السلاسل في النظام على التوازي
jones_scan_mpi | حساب كثيرة حدود جونز على طول كل سلسلة على فترات زمنية معينة بالتوازي
lk_scan_mpi | يحسب رقم الربط على طول كل زوج من السلاسل على فترات زمنية معينة بالتوازي
wr_scan_mpi | يحسب التموج على طول كل سلسلة على فترات زمنية معينة بالتوازي
scan
mpi
لها نفس بناء الجملة مثل نظيراتها base
periodic
ولكن يجب استدعاؤها باستخدام mpirun
بدلاً من تشغيل الأمر نفسه.
لحساب تكامل ربط غاوس بين كل زوج من السلاسل في نظام موجود في "../data/systemA.teppp" مع 100 سلسلة خطية طول كل منها 20 في مربع دوري مكعب طوله 13.35315:
./lk "../data/systemA.teppp" 20 100 1 13.35315
باستخدام MPI لتقسيم العمل بين 4 عمليات مختلفة:
mpirun -np 4 ./lk_mpi "../data/systemA.teppp" 20 100 1 13.35315
لحساب الخط الدوري لكل سلسلة في نظام موجود في "../data/systemA.teppp" مع 100 سلسلة طول كل منها 20 في مربع دوري مكعب طوله 13.35315:
./periodic_wr "../data/systemA.teppp" 20 100 1 13.35315
لحساب متعدد حدود جونز لكل سلسلة في نظام موجود في "../data/systemA.teppp" مع 100 سلسلة طول كل منها 20 في مربع دوري مكعب بطول 13.35315:
./جونز "../data/systemA.teppp" 20 100 1 100 13.35315
للمسح على طول كل سلسلة وحساب متعدد حدود جونز لكل سلسلة فرعية في نظام موجود في "../data/systemA.teppp" مع 100 سلسلة طول كل منها 20 بدءًا من طول المسح 5 حتى طول المسح 10 بخطوة 5 :
./jones_scan "../data/systemC.teppp" 20 100 1 100 5 10 5
حقوق الطبع والنشر (ج) 2021، توم هيرشبيرج، كايل بيفر وإيليني باناجيوتو
جميع الحقوق محفوظة.