تم تطويره بواسطة فيكتور ماتفيف، قسم العلوم الرياضية، NJIT (2003-2023)
التطوير الأولي (2001-2003): مختبر النمذجة البيولوجية، NIDDK، NIH
يوجد إصدار للمخازن المؤقتة المعقدة (موقعان لربط الكالسيوم) في هذا المستودع
أرسل أي تقارير أخطاء بالبريد الإلكتروني (تأكد من تضمين البرنامج النصي الخاص بك) إلى: [email protected]
CalC ("حاسبة الكالسيوم") هي أداة نمذجة لمحاكاة انتشار الكالسيوم داخل الخلايا وتخزينه مؤقتًا. يحل CalC تفاعلات PDE ذات التفاعل المستمر التي تصف دخول الكالسيوم إلى الحجم من خلال قنوات تشبه النقطة، وانتشاره وتخزينه المؤقت وارتباطه بمستقبلات الكالسيوم. يستخدم CalC شكلاً مختلفًا من طريقة الفرق المحدودة للاتجاه المتناوب (ADI)، والتي تعتبر فعالة جدًا في استهلاك وقت وحدة المعالجة المركزية (CPU)، ودقيقة حتى المرتبة الثانية في الزمان والمكان. تتنوع الخطوة الزمنية بشكل تكيفي أثناء المحاكاة. الميزات الرئيسية الأخرى هي:
CalC مستقل عن النظام الأساسي (Windows وOS X وLinux وcygwin وما إلى ذلك)
يتم تشغيل CalC بواسطة لغة نصية بسيطة (مع وظيفة التحكم في التدفق الاختيارية).
يتم دمج CalC بسهولة مع MATLAB دون أي تعديلات خاصة (انظر أدناه).
يتيح CalC إجراء عمليات محاكاة في أي شكل هندسي: الديكارتي ثلاثي الأبعاد، أو ثنائي الأبعاد، أو أحادي الأبعاد، أو القطبي، أو الكروي، أو الأسطواني، أو المخروطي، وما إلى ذلك.
يسمح CalC بعدد عشوائي من مخازن الكالسيوم، مع موقع ربط واحد أو موقعين للكالسيوم لكل جزيء
يمكن لنصوص CalC أن تدمج المعادلات التفاضلية العادية أيضًا، على سبيل المثال لنموذج خروج الخلايا المعتمد على الكالسيوم.
يمكن عرض نتائج CalC في الوقت الفعلي باستخدام مكتبات xmgrace أو freeglut (انظر أدناه)
إذا كنت تستخدم CalC في عملك المنشور، فيرجى الاستشهاد بمقالة Biophys J لعام 2002، ومن فضلك أرسل لي مرجعًا لتضمينه في قائمة منشورات CalC عند النشر. يتم توفير CalC كما هو، ولكنني سأرد على أي تقارير أخطاء أو أسئلة فنية.
CalC هو برنامج مجاني: يمكنك إعادة توزيعه و/أو تعديله بموجب شروط رخصة GNU العامة كما نشرتها مؤسسة البرمجيات الحرة، إما الإصدار 3 من الترخيص، أو (حسب اختيارك) أي إصدار لاحق.
يتم توزيع CalC على أمل أن يكون مفيدًا، ولكن دون أي ضمانات؛ دون حتى الضمان الضمني لقابلية التسويق أو الملاءمة لغرض معين. راجع رخصة جنو العامة لمزيد من التفاصيل.
يجب أن تشاهد نسخة من رخصة جنو العامة في هذا المستودع. إذا لم يكن الأمر كذلك، فاتبع عنوان URL هذا
توجد الملفات التنفيذية لأحدث إصدارات Windows و macOS في مجلد الملفات التنفيذية في هذا المستودع. لاحظ أن اسم الملف القابل للتنفيذ يختلف بين الأنظمة المختلفة (يمكنك إعادة تسميته كما تريد، بالطبع). في هذا المستند، تتم الإشارة إلى الملف القابل للتنفيذ بالاسم calc . إذا كان الملف القابل للتنفيذ لا يعمل على نظام التشغيل لديك، فاتبع تعليمات التجميع أدناه. بخلاف ذلك، تابع إلى قسم التنفيذ الخاص بملف README هذا.
استخدم MSDN Visual Studio لتجميع التعليمات البرمجية. يحتوي ملف Visual Studio "Project" CalC.vcxproj على كافة التبعيات الضرورية (وهو موجود داخل المجلد المصدر). وبدلاً من ذلك، يمكنك تثبيت محاكي Linux cygwin على جهازك الذي يعمل بنظام Windows، واتباع تعليمات تثبيت UNIX أدناه.
قم بتثبيت XQuartz وXcode. سيحتوي الأخير على مترجم C++ مثل g++، ونوع من الأدوات المساعدة لتجميع التعليمات البرمجية. ثم قم بتشغيل make . هذا كل شيء.
إذا لم يكن برنامج freeglut مثبتًا لديك، فقم بالتجميع عن طريق تنفيذ make noGraphs . سيؤدي هذا إلى تجميع نسخة من البرنامج بدون رسومات OpenGl/GLUT/FreeGlut في وقت التشغيل.
وبدلاً من ذلك، قم بتثبيت freeglut ثم قم بتشغيل "make" كالمعتاد.
نظام التشغيل Windows فقط، إصدارات CalC x.10.1 أو أعلى: تأكد من وجود freeglut.dll المقدم في المجلد الذي يحتوي على ملف Calc القابل للتنفيذ.
إذا كان البرنامج النصي النموذجي لا يستخدم معلمات سطر الأوامر، فما عليك سوى النقر فوق الملف القابل للتنفيذ وإدخال اسم ملف البرنامج النصي عندما يُطلب منك ذلك (يجب أن يكون ملف البرنامج النصي موجودًا في نفس الدليل). بدلاً من ذلك، قم بتسمية البرنامج النصي CalC الخاص بك DefaultScripts.txt ، وسيتم تنفيذه تلقائيًا بعد تشغيل الملف القابل للتنفيذ.
إذا كان البرنامج النصي الخاص بك يستخدم معلمات سطر الأوامر، فافتح Shell (في نظام Windows، قم بتشغيل قائمة ابدأ -> تشغيل -> cmd)، وانتقل إلى الدليل الذي يوجد به الحساب القابل للتنفيذ، واكتب
calc filename parList
حيث calc هو اسم الملف القابل للتنفيذ (استبدله بالاسم القابل للتنفيذ الصحيح - راجع مجلد الملفات التنفيذية أو تعليمات التجميع أعلاه)، و fileName هو اسم ملف البرنامج النصي الذي يصف المحاكاة، و parList هي قائمة اختيارية مفصولة بمسافات من سطر الأوامر المعلمات (انظر الدليل).
من أجل مراقبة مخرجات البرنامج ورسائل الخطأ، قم بتضمين العبارة مطولة = 4 (أو مستوى إسهاب أعلى) في البرنامج النصي الخاص بك: سيؤدي هذا إلى منع CalC من الإنهاء التلقائي عند إكمال المحاكاة.
يمكن حفظ نتائج المحاكاة في الملفات في الوقت الفعلي باستخدام عبارات مؤامرة صامتة، ويتم إنتاج ملفات ASCII يمكن قراءتها بواسطة أي لغة قادرة على الرسومات مثل MATLAB (Mathworks, Inc). راجع البرامج النصية التجريبية وارجع إلى الدليل للحصول على التفاصيل.
يسمح نوع الرسم الثنائي بحفظ حقل تركيز كامل في عدة نقاط زمنية أثناء المحاكاة، ويمكن قراءته وعرضه باستخدام MATLAB عبر البرامج النصية المتوفرة في دليل الأمثلة وفي صفحة البرنامج النصي التجريبي
قم بتضمين أمرplot.method gl في البرنامج النصي الخاص بك لإنشاء مخططات متغيرة في الوقت الفعلي (أو مخططات تركيز أحادية وثنائية الأبعاد) في نافذة نظام التشغيل لديك. في نظام التشغيل Windows، تأكد من وجود المكتبة الديناميكية freeglut.dll في نفس المجلد الذي يوجد به الملف القابل للتنفيذ (يتم توفيره في المستودع). في نظام التشغيل macOS، يتم تثبيت GLUT مسبقًا (ولكنه مهمل). على الأنظمة الأساسية الأخرى، يجب أن يكون لديك GLUT/freeglut مثبتًا على جهاز الكمبيوتر الخاص بك، وتغيير توجيه الرابط في Makefile بشكل مناسب.
ملاحظة: يبدو مسح المخزن المؤقت للرسومات غير مستقر مع التخمة الحرة، وفي بعض الأحيان لا يتم تحديث الرسوم البيانية حتى يتم تشغيل البرنامج النصي بأكمله حتى الاكتمال. علاوة على ذلك، قد يؤدي تضمين مخططات gl إلى إبطاء تنفيذ البرنامج النصي بشكل كبير. لذلك، تعد مخططات gl مفيدة في الغالب لتصحيح أخطاء البرنامج النصي الأولي.
يمكنك استخدام تطبيق الرسومات xmgrace بدلاً من freeglut ، والذي يسمح أيضًا بعرض نتائج المحاكاة في الوقت الفعلي. يتضمن ذلك توصيل مخرجات البرنامج إلى xmgrace، عن طريق تنفيذ الأمر التالي:
calc scriptFileName | xmgrace -pipe
حيث calc هو اسم برنامج CalC القابل للتنفيذ، وscriptfileName هو اسم البرنامج النصي للمحاكاة. في هذه الحالة، يجب أن يحتوي ملف البرنامج النصي على تعليمات plot.method xmgr .
من السهل جدًا إجراء تثبيت البيرة المنزلية لـ xmgrace.
مثل أي برنامج نظام، يمكن تشغيل CalC من MATLAB (Mathworks, Inc) ببساطة عن طريق تنفيذ الأمر
system('.calc ScriptFileName')
يمكنك بعد ذلك جمع البيانات عن طريق قراءة مخطط كتم الصوت أو الملفات الثنائية (انظر أعلاه حول إخراج البيانات). راجع مستودع البرنامج النصي التجريبي لـ CalC لمزيد من التفاصيل.
يمكن العثور على دليل بناء جملة البرنامج النصي CalC للنص التشعبي على عنوان URL هذا أيضًا، قم بفحص ملفات البرامج النصية النموذجية المضمنة (امتداد الملف ".par"): فهي موجودة في مجلد الأمثلة . تتوفر أيضًا أمثلة لملفات البرامج النصية على http://web.njit.edu/~matveev/calc/scripts.html