فهرست مطالب:
- مرحله 1: تنظیمات اولیه
- مرحله 2: تنظیم کد برای جمعیت حساس
- مرحله 3: تنظیم کد برای Sprite آلوده و حذف شده
- مرحله 4: تکمیل کد جمعیت حساس
- مرحله 5: تکمیل کد آلوده/حذف شده
تصویری: (بسیار ساده) مدل سازی بیماری (با استفاده از خراش): 5 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:51
امروز ، ما شیوع بیماری را شبیه سازی می کنیم ، که هر بیماری است ، نه لزوما COVID-19. این شبیه سازی از یک ویدیو توسط 3blue1brown الهام گرفته شده است ، که من به آن پیوند می دهم. از آنجا که این کار کشیدن و رها کردن است ، ما نمی توانیم تا آنجا که می توانیم با JS یا Python انجام دهیم ، اما استفاده از scratch نیز مزایایی دارد ، بنابراین ، اگر می خواهید نحوه مدلسازی شیوع با JS را ببینید ، می توانید من را مشاهده کنید مقاله ای که در مورد مدل سازی شیوع بیماری در اینجا نوشتم. حالا ، بیایید شروع کنیم!
توجه: تصویر بالا از شبیه سازی quantum9inovation (نه کاربر Instructables) است که می توانید در اینجا مشاهده کنید.
تدارکات:
شما نیاز دارید:
- یک حساب خراش (می توانید در اینجا ثبت نام کنید
- دانش اولیه کشیدن و رها کردن (اما من هنوز کد را مرور می کنم)
- رایانه یا دستگاهی که می توانید با آن برنامه ریزی کنید (که احتمالاً آن را دارید ، زیرا این مطلب را می خوانید)
- اختیاری - فیلم 3b1b را تماشا کنید ، به شما ایده ای می دهد که ما در حال برنامه نویسی هستیم.
مرحله 1: تنظیمات اولیه
ابتدا بیایید یک پروژه ایجاد کنیم ، عنوان آن را هرچه می خواهید بگذارید ، و سپس اسپریت موجود روی بوم را حذف کنید. می توانید این کار را با کلیک روی دکمه حذف سطل زباله در اسپریت انجام دهید. اکنون یک بوم خالی داریم و می توانید رنگ پس زمینه را به هر چیزی که می خواهید تغییر دهید.
در مرحله بعد ، یک اسپریت جدید ایجاد کنید و به جای استفاده از اسپریت موجود ، خود را رنگ آمیزی کنید. آن را یک نقطه آبی کنید. این اسپریت نشان دهنده جمعیت مستعد جامعه است ، و همچنین جمعیت بهبود یافته/حذف شده و آلوده خواهیم داشت ، جایی که نام مدل SIR (حساس ، آلوده ، بازیابی/حذف) از آنجا آمده است. حتما نام Sprite را "بدون عفونت" بگذارید.
حالا ، یک Sprite جدید ایجاد کنید (دوباره) ، و عنوان آن را Sprite1 بگذارید ، که ما نیز خودمان آن را رنگ آمیزی می کنیم. عنوان آن را "Sprite1" بگذارید و 2 لباس ایجاد کنید ، یکی باید نقطه قرمز و دیگری نقطه خاکستری باشد. آنها را به ترتیب لباس 1 و لباس 2 بسازید. این دو نشان دهنده جمعیت آلوده (نقطه قرمز) و بهبود یافته/حذف شده (نقطه خاکستری) هستند.
مرحله 2: تنظیم کد برای جمعیت حساس
ما اکنون کد جمعیت حساس را تنظیم کرده ایم. ما ابتدا 2 متغیر ایجاد می کنیم: افراد و افراد آلوده. متغیر "مردم" جمعیت را نشان می دهد و می تواند با توجه به تعداد افرادی که در شبیه سازی ما می خواهیم تغییر کند و شبیه سازی نیز بر این اساس تغییر می کند. ما همچنین یک متغیر آلوده ایجاد می کنیم و این نشان دهنده جمعیت مبتلا/مبتلا به این بیماری است. هر دوی این متغیرها باید متغیرهای جهانی باشند ، به این معنی که می توان آنها را در همه sprit ها استفاده کرد.
در مرحله بعد ، کد بالا را در اسپریت آلوده کپی کنید. بیایید در مورد آنچه انجام می دهد قدم بگذاریم. وقتی برنامه شروع می شود ، sprite پنهان می شود ، و این بدان معناست که ما مجبور نیستیم کد مشابهی را برای کلون ها در خود sprite قرار دهیم ، که کمک می کند. سپس ، ما دو متغیر (آلوده و افراد) را بر اساس آنچه که می خواهیم تنظیم کنیم ، در این حالت ، افراد آلوده را روی 1 و افراد را روی 100 قرار می دهیم. این بدان معناست که ما با یک نفر آلوده و 100 نفر در کل شروع می کنیم ، بدون احتساب فرد آلوده سپس یک حلقه را اجرا می کنیم که مقدار متغیر مردم در آن 100 است. در یک حالت تصادفی می رویم و سپس یک کلون از اسپریت ایجاد می کنیم. ما به یک موقعیت تصادفی می رویم زیرا به این ترتیب ما یک خط نقطه نداریم که در یک جهت حرکت می کند و در عوض در موقعیت های تصادفی تخم ریزی می کنیم.
مرحله 3: تنظیم کد برای Sprite آلوده و حذف شده
اکنون ، به Sprite "Sprite1" بروید و سپس کد بالا را کپی کنید. بیایید از آن عبور کنیم. هنگامی که برنامه شروع می شود ، Sprite مخفی می شود و سپس یک حلقه برای مقدار تعیین شده برای عفونت اجرا می کند. به موقعیتی تصادفی می رود و کلونی از خود ایجاد می کند.
مرحله 4: تکمیل کد جمعیت حساس
بیایید مواردی را که باید انجام دهیم مرور کنیم:
- آلوده کردن
- حرکت
به Sprite Uninfected بروید ، کد بالا را کپی کنید ، و بیایید ببینیم چگونه عفونت و حرکت را تکمیل می کند. ابتدا ، لباس یک را انتخاب می کنیم ، و این واقعاً ضروری نیست ، اما ما آن را در آنجا داریم ، بنابراین اگر تصمیم به افزودن موارد بیشتری داریم ، نگران نباشید که لباس های جدید را تغییر دهیم. بعد ، خودش را نشان می دهد. اگر به خاطر دارید ، ما اسپریت اصلی را مخفی کردیم ، بنابراین کلون ها نیز پنهان می شوند ، که ما نمی خواهیم. سپس یک حلقه برای همیشه اجرا می کنیم ، که کل برنامه را اجرا می کند تا زمانی که شخصی علامت توقف را در ابتدا کلیک کند. ما به مدت 1 ثانیه به یک موقعیت تصادفی سرازیر می شویم و سپس بررسی می کنیم که آیا در لبه هستیم یا نه ، در این صورت از آن باز می گردیم. بعد ، اگر رنگ قرمز را لمس می کنیم ، Sprite1 (جمعیت آلوده/حذف شده) را کلون می کنیم و متغیر آلوده را 1 افزایش می دهیم ، و سپس اسپریت خود را حذف می کنیم.
مرحله 5: تکمیل کد آلوده/حذف شده
با رفتن به Sprite1 ، یک لیست جدید ، تایمر ایجاد می کنیم. این لیست مدت زمانی را که یک نقطه آلوده است ، ثبت می کند و پس از مدت زمان معینی ، یا می میرد یا بهبود می یابد ، بخشی از جمعیت حذف شده/بازیابی شده می شود و با یک نقطه خاکستری نشان داده می شود ، که نمی تواند دوباره آلوده شود.
کد بالا را کپی کرده و اجازه دهید از طریق آن مرور کنیم. هنگامی که ما به عنوان یک کلون شروع می کنیم ، تعداد کل ثانیه هایی را که برنامه در حال اجرا بود در لیست تایمر قرار می دهیم ، و این را بررسی می کنیم تا ببینیم چه مدت زمان آلوده شده است و بر اساس آن تغییر می دهیم تا بازیابی شود. ما لیست تایمر را مخفی می کنیم و سپس لباس کلون را در هر صورت به لباس آلوده تغییر می دهیم و سپس اسپریت خود را نشان می دهیم. ما اکنون یک حلقه برای همیشه اجرا می کنیم ، که در آن چندین اتفاق می افتد: ما به کلون می گوییم که هر ثانیه به یک موقعیت تصادفی برسد ، بررسی می کنیم که آیا متغیر آلوده از خود جمعیت بیشتر است یا خیر ، در این صورت آن را بر روی جمعیت تنظیم می کنیم و در نهایت ، ما می رویم و اولین مورد لیست تایمر را بررسی می کنیم تا ببینیم آیا بیش از 5 ثانیه گذشته است یا خیر ، و اگر درست است ، لباس را به لباس بازیابی شده تغییر می دهیم تا نتوانیم آلوده کنیم ، و سپس مورد را از تایمر حذف می کنیم.
توصیه شده:
مدل راه آهن مدل خودکار با حلقه های معکوس: 14 مرحله
طرح خودکار مدل راه آهن با حلقه های معکوس: در یکی از دستورالعمل های قبلی من ، نحوه ساخت یک راه آهن ساده نقطه ای به نقطه مدل ساده را نشان دادم. یکی از معایب اصلی آن پروژه این بود که قطار برای برگشت به نقطه شروع باید در جهت معکوس حرکت کند. آر
یک راه بسیار ساده برای شروع کار با اتوماسیون خانگی با استفاده از ماژول های DIY: 6 مرحله
یک راه بسیار ساده برای شروع کار با اتوماسیون خانگی با استفاده از ماژول های DIY: وقتی تصمیم گرفتم تعدادی سنسور DIY را به دستیار خانه اضافه کنم ، بسیار شگفت زده شدم. استفاده از ESPHome بسیار ساده است و در این پست ، ما نحوه کنترل یک پین GPIO و همچنین به دست آوردن دما را یاد می گیریم. داده های رطوبت از یک بی سیم
منبع تغذیه متغیر ساده 30 ولت 2 آمپر از خراش: 4 مرحله
منبع تغذیه متغیر ساده 30v 2A از Scratch: این منبع تغذیه ساده قادر خواهد بود 30V را در 2A تأمین کند. از LM317 برای تغییر خروجی با کارایی استفاده می کند. می توان از آن برای تغذیه هر چیزی از مدارها تا موتورها استفاده کرد. کمتر از دو ساعت طول می کشد تا آن را جمع آوری کنید ، با این فرض که کار را انجام داده اید
واکسینه شدن یا نه؟ پروژه مشاهده ایمنی گله از طریق شبیه سازی بیماری: 15 مرحله
واکسینه شدن یا نه؟ پروژه ای برای مشاهده مصونیت گله از طریق شبیه سازی بیماری: نمای کلی پروژه: پروژه ما ایمنی گله را بررسی می کند و امیدوار است مردم را تشویق به واکسیناسیون کند تا میزان عفونت در جوامع ما کاهش یابد. برنامه ما نحوه آلودگی یک بیماری به جمعیت با درصدهای مختلف واکسن را شبیه سازی می کند
بسیار ساده شوخی بسیار م (ثر (شوخی کامپیوتری): 3 مرحله
بسیار ساده … شوخی بسیار م (ثر (شوخی رایانه ای): این دستورالعمل بسیار ساده است ، اما بسیار م effectiveثر است! آنچه اتفاق می افتد این است: شما همه نمادها را روی میز کار قربانی مخفی می کنید. بعد از اینکه شما شوخی کردید ، وقتی کامپیوتر را می بینید ، قربانی وحشت زده می شود. این به هیچ وجه نمی تواند به کامپیوتر آسیب برساند