{"id":327,"date":"2016-07-17T23:56:11","date_gmt":"2016-07-17T20:56:11","guid":{"rendered":"http:\/\/grechka.family\/dmitry\/blog\/?p=327"},"modified":"2016-07-19T10:29:30","modified_gmt":"2016-07-19T07:29:30","slug":"solar-wind-computational-model","status":"publish","type":"post","link":"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/","title":{"rendered":"Solar wind computational model"},"content":{"rendered":"<p>I&#8217;m going to build predictive solar wind computational model using <a href=\"http:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-particle-bursts-engine\/\">Particle burst engine<\/a> and estimate its parameters.<br \/>\n<!--more--><\/p>\n<h2>Model and its parameters<\/h2>\n<p>The model has the following parametres:<\/p>\n<ul>\n<li><em>D<\/em> &#8211; Distance between the Earth and the Sun<\/li>\n<li><em>Vel(a)<\/em> &#8211; function of coronal hole area that calculates burst velocity<\/li>\n<li><em>Den(a)<\/em> &#8211; function of coronal hole area that calculates burst density<\/li>\n<li><em>V<sub>b<\/sub><\/em> &#8211; background wind velocity<\/li>\n<li><em>D<sub>b<\/sub><\/em> &#8211; background wind density<\/li>\n<li><em>Sigma<\/em> &#8211; standard deviation of normally distributed fluctuation around estimated velocity mean<\/li>\n<\/ul>\n<p>The overall average solar wind velocity at arbitrary distance from the Sun (<em>x<\/em>) at arbitrary time moment (<em>t<\/em>) is the following.<\/p>\n<p>[latex]\\displaystyle V(x,t) = \\frac{V_b D_b + \\sum_i V_i D_i I(i,x,t)}{D_b + \\sum_i D_i I(i,x,t)}[\/latex]<\/p>\n<p>Where<br \/>\n$latex V_i=Vel(a_i) $ is velocity of i-th particle burst generated by i-th coronal hole.<br \/>\n$latex D_i=Den(a_i) $ is density of i-th particle burst generated by i-th coronal hole<\/p>\n<p>[latex]<br \/>\nI(i,x,t) = \\begin{cases} 1, &#038; \\mbox{if particle burst } i\\mbox{ is at location }x\\mbox{ at time moment }t \\\\ 0, &#038; \\mbox{otherwise} \\end{cases}<br \/>\n[\/latex]<br \/>\nIndicator function that chooses only particle burst that are at right location at right time moment.<\/p>\n<h2>Computational experiment<\/h2>\n<h3>Assumptions<\/h3>\n<p>For this computational experiment I fitted <strong>2<sup>nd<\/sup> order ascending polynomial functions as <em>Vel(a)<\/em> and <em>Den(a)<\/em><\/strong><\/p>\n<p>The model time resolution is one minute. Thus <strong>1 model time tick is 1 minute of real time<\/strong>.<\/p>\n<p>The model space resolution is 1.0&#215;10<sup>8<\/sup>m. <strong>1 model space step (bin) is 1.0&#215;10<sup>8<\/sup>m<\/strong> which is approximately 10 Earth diameters, and 1 AU is ~ 1500 model space steps.<\/p>\n<p>The maximum coronal hole relative area can be <strong>20%<\/strong> of the visible Sun area.<\/p>\n<p>The maximum solar wind burst velocity considered to be 1 bin per 1 tick which is 1.0&#215;10<sup>8<\/sup>m per minute which is <strong>1666.(6) km\/s<\/strong>.<\/p>\n<h3>Data used<\/h3>\n<p>As coronal hole area data used to emit bursts I used continuous subset of observations of 2015 year (between 40 to 8000 hours from the beginning of 2015 year, which is about <strong>2 January 2015<\/strong> &#8211; <strong>30 November 2015<\/strong>)<\/p>\n<p>Reference observations of solar wind velocity start little bit later to wait until first bursts reach the Earth. Thus references observations are per hour observations of 2015 year (between 150 and 8000 hours from the beginning of the year, which is about <strong>7 January 2015 &#8211; 30 November 2015<\/strong>)<\/p>\n<p>I consider that 5 days since the first bursts are emitted is enough to establish continuous flow of bursts at Earth distance.<\/p>\n<h2>Experiment<\/h2>\n<p>I did several runs of model parameter fitting using <a href=\"https:\/\/github.com\/predictionmachines\/Angara.Statistics\" target=\"_blank\">MCMC fitter<\/a> developed in <a href=\"https:\/\/www.microsoft.com\/en-us\/research\/lab\/microsoft-research-cambridge\/\" target=\"_blank\">MSR Cambridge<\/a> in collaboration with <a href=\"http:\/\/itis.cs.msu.ru\/\" target=\"_blank\">our lab<\/a>.<\/p>\n<p>I will evaluate 5 parameter sets that gave the maximum likelihood of observed values (MLE).<\/p>\n<p>The following figure demonstrates five fitted functions of velocities that give maximum likelihood.<\/p>\n<p><a href=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/velocity_f.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/velocity_f.png\" alt=\"Particle burst velocity as a function of coronal hole area\" width=\"600\" height=\"400\" class=\"size-full wp-image-335\" srcset=\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/velocity_f.png 600w, https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/velocity_f-300x200.png 300w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><\/a><\/p>\n<p>Corresponding fitted burst density function are<\/p>\n<p><a href=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/density_f.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/density_f.png\" alt=\"Particle burst density as a function of coronal hole area\" width=\"600\" height=\"400\" class=\"aligncenter size-full wp-image-337\" srcset=\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/density_f.png 600w, https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/density_f-300x200.png 300w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><\/a><\/p>\n<p>If we draw simulations using the functions above we get<\/p>\n<p><a href=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/Rplot.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/Rplot.png\" alt=\"solar_wind_sim\" width=\"600\" height=\"400\" class=\"aligncenter size-full wp-image-338\" srcset=\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/Rplot.png 600w, https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/Rplot-300x200.png 300w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><\/a><\/p>\n<p>Crosses indicate <a href=\"http:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-observations-epam-ace\/\">real observations<\/a> of the solar wind velocities.<br \/>\nSolid lines of difference colours represent the estimated mean solar wind velocities. Shaded areas represents mean +\/- 1 noise sigma intervals.<\/p>\n<h2>Conclusions<\/h2>\n<p>As a result, even without explicit evaluation of error rates it can be seen that solar wind computational model behaves poorly for now. Simulated solar wind varies significantly less in magnitude than real wind measurements.<\/p>\n<p>It can indicate that the model miss some important features. It stops the fitter to reduce noise and fit the variability better.<\/p>\n<p>I can foresee the following causes of poor fitting:<\/p>\n<ul>\n<li>To strict &#8220;denoise&#8221; of coronal area predictor<\/li>\n<li>Circular approximation of Earth orbit instead of elliptical (parameter D)<\/li>\n<\/ul>\n<p>You can reproduce the experiment using docker: &#8220;docker run -d -e seed=1 dgrechka\/solarwindmodelfitter:0.3&#8221;<br \/>\nIn addition the latest docker image of the fitter is <a href=\"https:\/\/hub.docker.com\/r\/dgrechka\/solarwindmodelfitter\/\" target=\"_blank\">here<\/a>.<\/p>\n<p><a href=\"http:\/\/grechka.family\/dmitry\/R_reports\/SolarWindFitting\" target=\"_blank\">R report for figures generation<\/a>.<\/p>\n<p>This is a part of <a href=\"http:\/\/grechka.family\/dmitry\/blog\/2016\/06\/solar-wind-prediction\/\" target=\"_blank\">large solar wind prediction experiment, which I describe in a separate post<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;m going to build predictive solar wind computational model using Particle burst engine and estimate its parameters.<\/p>\n","protected":false},"author":1,"featured_media":338,"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-327","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 computational model - Dmitry A. Grechka<\/title>\n<meta name=\"description\" content=\"The description of solar wind computational model and fitting of its parameters. The demonstration of 5 parameter sets which give the highest likelihood.\" \/>\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\/07\/solar-wind-computational-model\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Solar wind computational model - Dmitry A. Grechka\" \/>\n<meta property=\"og:description\" content=\"The description of solar wind computational model and fitting of its parameters. The demonstration of 5 parameter sets which give the highest likelihood.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/\" \/>\n<meta property=\"og:site_name\" content=\"Dmitry A. Grechka\" \/>\n<meta property=\"article:published_time\" content=\"2016-07-17T20:56:11+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2016-07-19T07:29:30+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/Rplot.png\" \/>\n\t<meta property=\"og:image:width\" content=\"600\" \/>\n\t<meta property=\"og:image:height\" content=\"400\" \/>\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\/07\/solar-wind-computational-model\/\",\"url\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/\",\"name\":\"Solar wind computational model - Dmitry A. Grechka\",\"isPartOf\":{\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/Rplot.png\",\"datePublished\":\"2016-07-17T20:56:11+00:00\",\"dateModified\":\"2016-07-19T07:29:30+00:00\",\"author\":{\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/#\/schema\/person\/63485104fdec6dbe258ea67c2e053a6f\"},\"description\":\"The description of solar wind computational model and fitting of its parameters. The demonstration of 5 parameter sets which give the highest likelihood.\",\"breadcrumb\":{\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/#primaryimage\",\"url\":\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/Rplot.png\",\"contentUrl\":\"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/Rplot.png\",\"width\":600,\"height\":400},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/grechka.family\/dmitry\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Solar wind computational model\"}]},{\"@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 computational model - Dmitry A. Grechka","description":"The description of solar wind computational model and fitting of its parameters. The demonstration of 5 parameter sets which give the highest likelihood.","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\/07\/solar-wind-computational-model\/","og_locale":"en_GB","og_type":"article","og_title":"Solar wind computational model - Dmitry A. Grechka","og_description":"The description of solar wind computational model and fitting of its parameters. The demonstration of 5 parameter sets which give the highest likelihood.","og_url":"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/","og_site_name":"Dmitry A. Grechka","article_published_time":"2016-07-17T20:56:11+00:00","article_modified_time":"2016-07-19T07:29:30+00:00","og_image":[{"width":600,"height":400,"url":"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/Rplot.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\/07\/solar-wind-computational-model\/","url":"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/","name":"Solar wind computational model - Dmitry A. Grechka","isPartOf":{"@id":"https:\/\/grechka.family\/dmitry\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/#primaryimage"},"image":{"@id":"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/#primaryimage"},"thumbnailUrl":"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/Rplot.png","datePublished":"2016-07-17T20:56:11+00:00","dateModified":"2016-07-19T07:29:30+00:00","author":{"@id":"https:\/\/grechka.family\/dmitry\/blog\/#\/schema\/person\/63485104fdec6dbe258ea67c2e053a6f"},"description":"The description of solar wind computational model and fitting of its parameters. The demonstration of 5 parameter sets which give the highest likelihood.","breadcrumb":{"@id":"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/#primaryimage","url":"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/Rplot.png","contentUrl":"https:\/\/grechka.family\/dmitry\/blog\/wp-content\/uploads\/2016\/07\/Rplot.png","width":600,"height":400},{"@type":"BreadcrumbList","@id":"https:\/\/grechka.family\/dmitry\/blog\/2016\/07\/solar-wind-computational-model\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/grechka.family\/dmitry\/blog\/"},{"@type":"ListItem","position":2,"name":"Solar wind computational model"}]},{"@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\/07\/Rplot.png","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/posts\/327","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=327"}],"version-history":[{"count":13,"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/posts\/327\/revisions"}],"predecessor-version":[{"id":345,"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/posts\/327\/revisions\/345"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/media\/338"}],"wp:attachment":[{"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/media?parent=327"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/categories?post=327"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/grechka.family\/dmitry\/blog\/wp-json\/wp\/v2\/tags?post=327"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}