{"id":5069,"date":"2013-08-06T16:52:53","date_gmt":"2013-08-06T15:52:53","guid":{"rendered":"http:\/\/www.walkingrandomly.com\/?p=5069"},"modified":"2013-08-06T16:52:53","modified_gmt":"2013-08-06T15:52:53","slug":"krypy-a-python-module-for-krylov-subspace-methods-for-the-solution-of-linear-algebraic-systems","status":"publish","type":"post","link":"https:\/\/walkingrandomly.com\/?p=5069","title":{"rendered":"KryPy &#8211; A Python module for Krylov subspace methods for the solution of linear algebraic systems."},"content":{"rendered":"<p>The first stable version of <a href=\"https:\/\/github.com\/andrenarchy\/krypy\">KryPy<\/a> was released in late July. \u00a0KryPy is\u00a0<em>&#8220;a\u00a0Python \u00a0module for <a href=\"http:\/\/en.wikipedia.org\/wiki\/Krylov_subspace\">Krylov subspace<\/a> methods for the solution of linear algebraic systems. This includes enhanced versions of CG, MINRES and GMRES as well as methods for the efficient solution of sequences of linear systems.&#8221;<\/em><\/p>\n<p>Here&#8217;s a toy example taken from <a href=\"https:\/\/github.com\/andrenarchy\/krypy\">KryPy&#8217;s website<\/a> that shows how easy it is to use.<\/p>\n<pre>from numpy import ones\r\nfrom scipy.sparse import spdiags\r\nfrom krypy.linsys import gmres\r\n\r\nN = 10\r\nA = spdiags(range(1,N+1), [0], N, N)\r\nb = ones((N,1))\r\n\r\nsol = gmres(A, b)\r\nprint (sol['relresvec'])<\/pre>\n<p>Thanks to KryPy&#8217;s author, Andr\u00e9 Gaul, for the news.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The first stable version of KryPy was released in late July. \u00a0KryPy is\u00a0&#8220;a\u00a0Python \u00a0module for Krylov subspace methods for the solution of linear algebraic systems. This includes enhanced versions of CG, MINRES and GMRES as well as methods for the efficient solution of sequences of linear systems.&#8221; Here&#8217;s a toy example taken from KryPy&#8217;s website [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[4,31],"tags":[],"class_list":["post-5069","post","type-post","status-publish","format-standard","hentry","category-math-software","category-python"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p3swhs-1jL","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=\/wp\/v2\/posts\/5069","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5069"}],"version-history":[{"count":3,"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=\/wp\/v2\/posts\/5069\/revisions"}],"predecessor-version":[{"id":5075,"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=\/wp\/v2\/posts\/5069\/revisions\/5075"}],"wp:attachment":[{"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5069"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5069"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5069"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}