{"id":303,"date":"2016-06-20T01:13:15","date_gmt":"2016-06-19T22:13:15","guid":{"rendered":"http:\/\/grechka.family\/dmitry\/blog\/?p=303"},"modified":"2016-06-20T01:13:15","modified_gmt":"2016-06-19T22:13:15","slug":"solar-wind-particle-bursts-engine","status":"publish","type":"post","link":"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/","title":{"rendered":"Solar wind simulation: particle bursts engine"},"content":{"rendered":"<h2>Intro<\/h2>\n<p>The Solar Wind Particle Burst Engine models the solar wind by simulating bursts of particles emitted by coronal holes. The idea is to simulate continuous flow of particles using discrete representation of the world. We can represent the wind as a finite number of particle bursts. The world space is one dimensional. It is represented with finite number of bins. The bins are enumerated with index. Greater the index, greater the distance of the bin from the Sun. Therefore the bin with index 0 corresponds to the Sun surface. Each bin at every particular time moment can &#8220;contain&#8221; zero or more particle bursts. At every world time tick (the time is modelled in a discrete way in form of integer ticks) the particle bursts move out of the Sun by leaving one bin and getting into another.<br \/>\n<!--more--><\/p>\n<p>Since we can characterise each burst with some emergence time (tick) and some velocity, each simulation run can be entirely described as a set of bursts. The velocity of every burst is constant, we consider it as a function of coronal holes at the burst emergence time moment.<\/p>\n<h2>Demo<\/h2>\n<p>Here you can see the demo run of burst engine:<\/p>\n<div class=\"jetpack-video-wrapper\"><iframe loading=\"lazy\" title=\"Particle Bursts Engine Demo: 3 standalone bursts\" width=\"840\" height=\"630\" src=\"https:\/\/www.youtube.com\/embed\/K1jof_wimBw?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/div>\n<p>Three standalone bursts are emitted at 0, 10 and 20 simulation ticks with corresponding velocities of 0.2, 0.5 and 1.0 bin\/tick.<br \/>\nThe Y axis shows the average velocity of all the bursts in the bin.<\/p>\n<p>In addition, this simulation can also be represented as burst &#8220;traces&#8221;:<br \/>\n<a href=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_3_pulses.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_3_pulses.png\" alt=\"swbe_3_pulses\" width=\"551\" height=\"580\" class=\"aligncenter size-full wp-image-308\" srcset=\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_3_pulses.png 551w, https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_3_pulses-285x300.png 285w\" sizes=\"auto, (max-width: 551px) 85vw, 551px\" \/><\/a><br \/>\nThe colour of this colormap reflects the average velocity of all bursts at space-time point.<\/p>\n<p>Furthermore, if we emit a burst at every simulation tick we can model the continuous flow of the solar wind. The only requirement here is not to have velocity exceeding 1.0 bin\/tick. To emit the burst at every tick we can interpolate the properties of closest bursts. Hence, for the example above we can get the following &#8220;continuous&#8221; solar wind flow (20 bursts acquired from linear interpolation of 3 standalone bursts).<\/p>\n<div class=\"jetpack-video-wrapper\"><iframe loading=\"lazy\" title=\"Particle Bursts Engine Demo: 20 bursts expanded from 3 standalone bursts\" width=\"840\" height=\"630\" src=\"https:\/\/www.youtube.com\/embed\/p4Bv9LJq6ZY?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/div>\n<p>The traces for this configuration now look like this:<br \/>\n<a href=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_3_pulses_expanded.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_3_pulses_expanded.png\" alt=\"sumulated particle bursts visual representation\" width=\"509\" height=\"543\" class=\"aligncenter size-full wp-image-306\" srcset=\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_3_pulses_expanded.png 509w, https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_3_pulses_expanded-281x300.png 281w\" sizes=\"auto, (max-width: 509px) 85vw, 509px\" \/><\/a><\/p>\n<p>We can see that discrete nature of the model is exposed in the late steps (50 and greater). This happens because there are nor more bursts are emitted after final burst at tick 20.<br \/>\nLooking at ticks interval 0 to 20 we can see that the simulated wind is &#8220;continuous&#8221; (e.g. without sudden drops of average velocity to zero)<br \/>\n<a href=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_3_pulses_expanded_zoomed.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_3_pulses_expanded_zoomed.png\" alt=\"swbe_3_pulses_expanded_zoomed\" width=\"509\" height=\"543\" class=\"aligncenter size-full wp-image-314\" srcset=\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_3_pulses_expanded_zoomed.png 509w, https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_3_pulses_expanded_zoomed-281x300.png 281w\" sizes=\"auto, (max-width: 509px) 85vw, 509px\" \/><\/a><\/p>\n<h2>Feeding simulator with real data<\/h2>\n<p>As a result, we can construct the simulation run by advancing the model world induced by evaluation of real coronal holes. For example, for year 2015 the wind can be modelled like:<\/p>\n<div class=\"jetpack-video-wrapper\"><iframe loading=\"lazy\" title=\"Particle Bursts Engine Demo: wind induced by real coronal holes data\" width=\"840\" height=\"630\" src=\"https:\/\/www.youtube.com\/embed\/elnCo92I5gk?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/div>\n<p>Trace view in this case transforms from &#8220;traces&#8221; into a velocity magnitude &#8220;field&#8221;:<br \/>\n<a href=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_real-simulation.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_real-simulation.png\" alt=\"swbe_real simulation\" width=\"509\" height=\"543\" class=\"aligncenter size-full wp-image-317\" srcset=\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_real-simulation.png 509w, https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_real-simulation-281x300.png 281w\" sizes=\"auto, (max-width: 509px) 85vw, 509px\" \/><\/a><\/p>\n<p>You can notice that most of the time the flow indeed looks like continuous. Sometimes the flow scrambles (e.g. see time moment around tick 9150) which indicates that the way in which I design the engine can be not well suited for modelling real world.<\/p>\n<p>I will discuss the burst velocity function of coronal holes, space bin sizes, model tick length as well as converting velocity units from real world to model and vise versa in additional post where I perform inference of most of these parameters.<\/p>\n<p>This is a <a href=\"http:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-prediction\/\">part of large solar wind prediction experiment, which I describe in a separate post<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Intro The Solar Wind Particle Burst Engine models the solar wind by simulating bursts of particles emitted by coronal holes. The idea is to simulate continuous flow of particles using discrete representation of the world. We can represent the wind as a finite number of particle bursts. The world space is one dimensional. It is &hellip; <a href=\"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Solar wind simulation: particle bursts engine&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":320,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[46,5],"tags":[47],"class_list":["post-303","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-modelling","category-study-research","tag-solar-wind"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Solar wind simulation: particle bursts engine - Dmitry A. Grechka<\/title>\n<meta name=\"description\" content=\"Description of a computer model of the solar wind. The model simulate the world in a discrete way. The wind is simulated as a set of particle bursts.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Solar wind simulation: particle bursts engine - Dmitry A. Grechka\" \/>\n<meta property=\"og:description\" content=\"Description of a computer model of the solar wind. The model simulate the world in a discrete way. The wind is simulated as a set of particle bursts.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/\" \/>\n<meta property=\"og:site_name\" content=\"Dmitry A. Grechka\" \/>\n<meta property=\"article:published_time\" content=\"2016-06-19T22:13:15+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_featured.png\" \/>\n\t<meta property=\"og:image:width\" content=\"861\" \/>\n\t<meta property=\"og:image:height\" content=\"692\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"dmitry\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"dmitry\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/\",\"url\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/\",\"name\":\"Solar wind simulation: particle bursts engine - Dmitry A. Grechka\",\"isPartOf\":{\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_featured.png\",\"datePublished\":\"2016-06-19T22:13:15+00:00\",\"author\":{\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/#\/schema\/person\/63485104fdec6dbe258ea67c2e053a6f\"},\"description\":\"Description of a computer model of the solar wind. The model simulate the world in a discrete way. The wind is simulated as a set of particle bursts.\",\"breadcrumb\":{\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/#primaryimage\",\"url\":\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_featured.png\",\"contentUrl\":\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_featured.png\",\"width\":861,\"height\":692,\"caption\":\"visualisation of particle bursts simulated with burst engine\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/grechka.family\/dmitry\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Solar wind simulation: particle bursts engine\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/#website\",\"url\":\"https:\/\/grechka.family\/dmitry\/blog\/\",\"name\":\"Dmitry A. Grechka\",\"description\":\"Personal blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/grechka.family\/dmitry\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/#\/schema\/person\/63485104fdec6dbe258ea67c2e053a6f\",\"name\":\"dmitry\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ce55dc1fed08e9a15667f56e3285826aa634c717d9c0e34809d717f699bb7b0b?s=96&d=identicon&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ce55dc1fed08e9a15667f56e3285826aa634c717d9c0e34809d717f699bb7b0b?s=96&d=identicon&r=g\",\"caption\":\"dmitry\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Solar wind simulation: particle bursts engine - Dmitry A. Grechka","description":"Description of a computer model of the solar wind. The model simulate the world in a discrete way. The wind is simulated as a set of particle bursts.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/","og_locale":"en_GB","og_type":"article","og_title":"Solar wind simulation: particle bursts engine - Dmitry A. Grechka","og_description":"Description of a computer model of the solar wind. The model simulate the world in a discrete way. The wind is simulated as a set of particle bursts.","og_url":"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/","og_site_name":"Dmitry A. Grechka","article_published_time":"2016-06-19T22:13:15+00:00","og_image":[{"width":861,"height":692,"url":"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_featured.png","type":"image\/png"}],"author":"dmitry","twitter_misc":{"Written by":"dmitry","Estimated reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/","url":"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/","name":"Solar wind simulation: particle bursts engine - Dmitry A. Grechka","isPartOf":{"@id":"https:\/\/grechka.family\/dmitry\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/#primaryimage"},"image":{"@id":"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/#primaryimage"},"thumbnailUrl":"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_featured.png","datePublished":"2016-06-19T22:13:15+00:00","author":{"@id":"https:\/\/grechka.family\/dmitry\/blog\/#\/schema\/person\/63485104fdec6dbe258ea67c2e053a6f"},"description":"Description of a computer model of the solar wind. The model simulate the world in a discrete way. The wind is simulated as a set of particle bursts.","breadcrumb":{"@id":"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/#primaryimage","url":"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_featured.png","contentUrl":"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_featured.png","width":861,"height":692,"caption":"visualisation of particle bursts simulated with burst engine"},{"@type":"BreadcrumbList","@id":"https:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/grechka.family\/dmitry\/blog\/"},{"@type":"ListItem","position":2,"name":"Solar wind simulation: particle bursts engine"}]},{"@type":"WebSite","@id":"https:\/\/grechka.family\/dmitry\/blog\/#website","url":"https:\/\/grechka.family\/dmitry\/blog\/","name":"Dmitry A. Grechka","description":"Personal blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/grechka.family\/dmitry\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Person","@id":"https:\/\/grechka.family\/dmitry\/blog\/#\/schema\/person\/63485104fdec6dbe258ea67c2e053a6f","name":"dmitry","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/grechka.family\/dmitry\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ce55dc1fed08e9a15667f56e3285826aa634c717d9c0e34809d717f699bb7b0b?s=96&d=identicon&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ce55dc1fed08e9a15667f56e3285826aa634c717d9c0e34809d717f699bb7b0b?s=96&d=identicon&r=g","caption":"dmitry"}}]}},"jetpack_featured_media_url":"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/06\/swbe_featured.png","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/posts\/303","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/comments?post=303"}],"version-history":[{"count":13,"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/posts\/303\/revisions"}],"predecessor-version":[{"id":323,"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/posts\/303\/revisions\/323"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/media\/320"}],"wp:attachment":[{"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/media?parent=303"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/categories?post=303"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/tags?post=303"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}