{"id":346785,"date":"2023-03-15T15:37:36","date_gmt":"2023-03-15T15:37:36","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=346785"},"modified":"-0001-11-30T00:00:00","modified_gmt":"2023-03-15T15:37:36","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=346785","title":{"rendered":"<span>\u0427\u0438\u0441\u043b\u0435\u043d\u043d\u043e \u0440\u0435\u0448\u0430\u0435\u043c \u0432\u043e\u043b\u043d\u043e\u0432\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u043d\u043e\u0441\u0442\u043d\u043e\u0439 \u0441\u0445\u0435\u043c\u043e\u0439<\/span>"},"content":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/getpro\/habr\/upload_files\/cae\/4ee\/490\/cae4ee49046d04fc4618b9c17ea6f99d.jpg\" alt=\"https:\/\/www.osirisguitar.com\/wp-content\/uploads\/2013\/04\/3.-a-string-fret-close-750x509.jpg\" title=\"https:\/\/www.osirisguitar.com\/wp-content\/uploads\/2013\/04\/3.-a-string-fret-close-750x509.jpg\" width=\"750\" height=\"509\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/cae\/4ee\/490\/cae4ee49046d04fc4618b9c17ea6f99d.jpg\" data-blurred=\"true\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/www.osirisguitar.com\/wp-content\/uploads\/2013\/04\/3.-a-string-fret-close-750x509.jpg\" rel=\"noopener noreferrer nofollow\">https:\/\/www.osirisguitar.com\/wp-content\/uploads\/2013\/04\/3.-a-string-fret-close-750&#215;509.jpg<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u0414\u043b\u044f \u043c\u0435\u043d\u044f \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0432 \u0447\u0430\u0441\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0445 &#8212; \u044d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043a\u0440\u0430\u0441\u0438\u0432\u0430\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f \u0438\u0437 \u0441\u0442\u0443\u0434\u0435\u043d\u0447\u0435\u0441\u0442\u0432\u0430.  \u041f\u043e\u0447\u0435\u043c\u0443? \u042d\u0442\u043e \u043d\u0435\u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u043a\u0440\u0430\u0441\u0438\u0432\u043e. \u041d\u043e \u0447\u0442\u043e \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0441\u0442\u0430\u043b\u043e \u0434\u043b\u044f \u043c\u0435\u043d\u044f \u0437\u0430\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u044e\u0449\u0438\u043c, \u0442\u0430\u043a \u044d\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u0434\u0438\u0444\u0443\u0440\u044b \u0432 \u0448\u0438\u0440\u043e\u043a\u043e\u043c \u0441\u043c\u044b\u0441\u043b\u0435 \u043f\u0440\u0438\u043a\u043b\u0430\u0434\u043d\u043e\u0439 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0438 &#8212; \u044d\u0442\u043e \u0442\u043e\u0442 \u0441\u0430\u043c\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u043e\u0433\u0434\u0430 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0430 \u0438 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u0435, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c \u0432\u043f\u043e\u043b\u043d\u0435 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432. \u041a\u0430\u043a \u0432\u044b \u0443\u0436\u0435, \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435, \u0434\u043e\u0433\u0430\u0434\u0430\u043b\u0438\u0441\u044c, \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0451\u0442 \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u0432\u043e\u043e\u0431\u0449\u0435 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0448\u0430\u0442\u044c \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0432 \u0447\u0430\u0441\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0445 \u043d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0435. \u041c\u044b \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0432\u043e\u043b\u043d\u043e\u0432\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0438 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0443\u0436\u0435 \u0441\u0442\u0430\u0432\u0448\u0438\u0445 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u043c\u0438 python, scipy \u0438 numpy. \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u043f\u043e\u043c\u043d\u0438\u0442\u0435 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0443, \u043d\u043e \u043f\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u0438 \u0431\u043e\u044f\u043b\u0438\u0441\u044c \u0434\u0438\u0444\u0443\u0440\u043e\u0432 \u0438\u043b\u0438 \u043e\u043d\u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u0430\u043a-\u0442\u043e \u043e\u0431\u043e\u0448\u043b\u0438 \u0432\u0430\u0441 \u0441\u0442\u043e\u0440\u043e\u043d\u043e\u0439, \u0442\u043e \u0434\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c.<\/p>\n<h2>\u0412\u043e\u043b\u043d\u043e\u0432\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435<\/h2>\n<p>\u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u0441\u0442\u043e, \u0442\u043e \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 &#8212; \u044d\u0442\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0445\u043e\u0434\u044f\u0442 \u0442\u0430\u043a\u0436\u0435 \u0435\u0451 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0435. \u041c\u043d\u043e\u0433\u043e \u0443\u0436\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043f\u0440\u043e <em>\u043e\u0431\u044b\u043a\u043d\u043e\u0432\u0435\u043d\u043d\u044b\u0435<\/em> \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f, \u0433\u0434\u0435 \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043e\u0434\u043d\u043e\u0433\u043e \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u043c. <a href=\"https:\/\/habr.com\/ru\/post\/405587\/\" rel=\"noopener noreferrer nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a> \u0438 <a href=\"https:\/\/habr.com\/ru\/post\/349426\/\" rel=\"noopener noreferrer nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a>). \u041a\u043e\u0433\u0434\u0430 \u043c\u044b \u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e\u0431 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f\u0445 \u0432 <em>\u0447\u0430\u0441\u0442\u043d\u044b\u0445<\/em> \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0445, \u0442\u043e \u0432 \u043d\u0438\u0445, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0432\u0445\u043e\u0434\u044f\u0442 <em>\u0447\u0430\u0441\u0442\u043d\u044b\u0435<\/em> \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0435, \u0442\u0430\u043a\u0436\u0435 \u043d\u0435 \u043e\u0431\u043e\u0439\u0434\u0451\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c\u0438 \u0425\u0430\u0431\u0440\u0430 (\u0437\u0440\u0435\u043b\u0438\u0449\u043d\u043e <a href=\"https:\/\/habr.com\/ru\/post\/470742\/\" rel=\"noopener noreferrer nofollow\">\u0442\u0443\u0442<\/a> \u0438 <a href=\"https:\/\/habr.com\/ru\/post\/321734\/\" rel=\"noopener noreferrer nofollow\">\u0442\u0443\u0442<\/a>). \u0412\u043f\u043e\u043b\u043d\u0435 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0447\u0442\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0442\u0430\u043a\u0438\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442, \u0430 \u0435\u0441\u043b\u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442, \u0442\u043e \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435, \u0430 \u0434\u043b\u044f \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u044b \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f.<\/p>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c \u0432\u043e\u043b\u043d\u043e\u0432\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"u(t,x)\" alt=\"u(t,x)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/846\/122\/83a\/84612283a816edee3e20e3b66af7eb61.svg\" width=\"53\" height=\"22\"\/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\partial^2_t u = c^2 \\partial^2_x u, \\quad u: [0,T] \\times [a,b] \\to \\mathbb{R}.\" alt=\"\\partial^2_t u = c^2 \\partial^2_x u, \\quad u: [0,T] \\times [a,b] \\to \\mathbb{R}.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/275\/659\/662\/2756596629d41fd0b7c0500430b00940.svg\" width=\"313\" height=\"26\"\/><\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u0447\u0435\u043c\u0443 \u0438\u043c\u0435\u043d\u043d\u043e \u0442\u0430\u043a\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435?<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043c, \u0447\u0442\u043e \u043c\u044b \u0438\u043c\u0435\u0435\u043c \u043d\u0435 \u0441\u0442\u0440\u0443\u043d\u0443, \u0430 \u043d\u0430\u0431\u043e\u0440 \u0438\u0437 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"N\" alt=\"N\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9d9\/c9e\/1bd\/9d9c9e1bdcc3e2a8993ad11a6fec918a.svg\" width=\"17\" height=\"17\"\/>\u0433\u0440\u0443\u0437\u0438\u043a\u043e\u0432, \u0441\u043e\u0435\u0434\u0438\u043d\u0451\u043d\u043d\u044b\u0445 \u043f\u0440\u0443\u0436\u0438\u043d\u0430\u043c\u0438 \u0432 \u043b\u0438\u043d\u0438\u044e; \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"X\" alt=\"X\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/005\/622\/212\/005622212076d1c7be04e060b03b4ba5.svg\" width=\"16\" height=\"17\"\/>\u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0433\u0440\u0443\u0437\u0438\u043a\u0430 \u0437\u0430\u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0438 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0441\u0435\u0434\u044f\u043c\u0438 \u0440\u0430\u0432\u043d\u043e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"h\" alt=\"h\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2fc\/0ee\/0a3\/2fc0ee0a3e1eab9734eaded3851ccdb6.svg\" width=\"11\" height=\"17\"\/>. \u041f\u0440\u0435\u043d\u0435\u0431\u0440\u0435\u0433\u0430\u044f \u0441\u0438\u043b\u043e\u0439 \u0442\u044f\u0436\u0435\u0441\u0442\u0438 (\u0445\u043e\u0442\u044f \u0435\u0451 \u043f\u0440\u0438 \u0436\u0435\u043b\u0430\u043d\u0438\u0438 \u043b\u0435\u0433\u043a\u043e \u0432\u043d\u0435\u0441\u0442\u0438 \u043f\u043e\u0437\u0436\u0435 \u0432 \u0432\u0438\u0434\u0435 \u043f\u0440\u0430\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438), \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432\u0442\u043e\u0440\u043e\u0439 \u0437\u0430\u043a\u043e\u043d \u041d\u044c\u044e\u0442\u043e\u043d\u0430 \u0434\u043b\u044f <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"Y\" alt=\"Y\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/06e\/de4\/b8a\/06ede4b8a3eac2a4256dc48d7c4845cc.svg\" width=\"15\" height=\"16\"\/>-\u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b \u0433\u0440\u0443\u0437\u0438\u043a\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"i\" alt=\"i\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/515\/000\/072\/5150000729bbf94f7fe2fd8e32a2a53a.svg\" width=\"7\" height=\"16\"\/>, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u044b \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0438\u043c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"u_i\" alt=\"u_i\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ea9\/914\/cd3\/ea9914cd319b0d55e873e06f6c1c7b4f.svg\" width=\"18\" height=\"15\"\/>:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"m\\ddot{u}_i = k (u_{i+1}-u_i) + k (u_{i-1}-u_{i}),\" alt=\"m\\ddot{u}_i = k (u_{i+1}-u_i) + k (u_{i-1}-u_{i}),\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9c1\/1c3\/f85\/9c11c3f8578eb4d1e10721c5e256afcf.svg\" width=\"292\" height=\"22\"\/><\/p>\n<p>\u0433\u0434\u0435 \u0432 \u043f\u0440\u0430\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b \u0437\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0441\u0438\u043b\u0443 \u0443\u043f\u0440\u0443\u0433\u043e\u0441\u0442\u0438 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0437\u0430\u043a\u043e\u043d\u043e\u043c \u0413\u0443\u043a\u0430. \u0422\u0435\u043f\u0435\u0440\u044c \u0437\u0430\u043c\u0435\u0442\u0438\u043c, \u0447\u0442\u043e \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u0436\u0451\u0441\u0442\u043a\u043e\u0441\u0442\u0438 \u0432\u0441\u0435\u0439 \u043b\u0438\u043d\u0438\u0438 \u0433\u0440\u0443\u0437\u0438\u043a\u043e\u0432 (\u044d\u0442\u043e \u0436\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043f\u0440\u0443\u0436\u0438\u043d) \u0440\u0430\u0432\u0435\u043d <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"K=k\/N\" alt=\"K=k\/N\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/026\/129\/af3\/026129af38e4f14c915ac36b3e8cd00d.svg\" width=\"80\" height=\"22\"\/>, \u0430 \u043c\u0430\u0441\u0441\u0430 \u0433\u0440\u0443\u0437\u0438\u043a\u0430 \u0440\u0430\u0432\u043d\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"m=M\/N\" alt=\"m=M\/N\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f0a\/30a\/bcb\/f0a30abcbf703106e689ec9fd85a11a7.svg\" width=\"90\" height=\"22\"\/>, \u0437\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"M\" alt=\"M\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/80c\/30e\/c84\/80c30ec84b49c8816b89b6b472d51bc9.svg\" width=\"20\" height=\"17\"\/>\u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0430 \u043c\u0430\u0441\u0441\u0430 \u0432\u0441\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u041f\u043e\u0434\u0441\u0442\u0430\u0432\u0438\u043c \u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u043f\u0438\u0448\u0435\u043c:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\ddot{u}_i = \\frac{KN^2}{M} (u_{i+1}-2u_i + u_{i-1}).\" alt=\"\\ddot{u}_i = \\frac{KN^2}{M} (u_{i+1}-2u_i + u_{i-1}).\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/015\/7d5\/507\/0157d55073af73fcbda6d3ab8dc8e738.svg\" width=\"259\" height=\"46\"\/><\/p>\n<p>\u0427\u0442\u043e \u0435\u0449\u0451 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e? \u0414\u043b\u0438\u043d\u0430 \u043c\u0435\u0436\u0434\u0443 \u0437\u0430\u043a\u0440\u0435\u043f\u043b\u0451\u043d\u043d\u044b\u043c\u0438 \u043a\u043e\u043d\u0446\u0430\u043c\u0438, \u0442\u0430\u043a \u0447\u0442\u043e \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0441\u0435\u0434\u044f\u043c\u0438 \u0440\u0430\u0432\u043d\u043e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"h=L\/N\" alt=\"h=L\/N\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ea0\/904\/3e1\/ea09043e10ecc967708089223e6c9384.svg\" width=\"77\" height=\"22\"\/>. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0442\u0435\u043f\u0435\u0440\u044c \u0443\u043c\u043d\u043e\u0436\u0438\u043c \u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u043c \u043f\u0440\u0430\u0432\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u043d\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L^2\" alt=\"L^2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/893\/ef5\/852\/893ef5852f94b969c0db0e08b6160e13.svg\" width=\"22\" height=\"21\"\/>\u0438&#8230;<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\ddot{u}_i = \\frac{KL^2}{M} \\frac{1}{h^2}(u_{i+1}-2u_i + u_{i-1}).\" alt=\"\\ddot{u}_i = \\frac{KL^2}{M} \\frac{1}{h^2}(u_{i+1}-2u_i + u_{i-1}).\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b42\/1ed\/afe\/b421edafeb27fef13a6d590b3fc86c3c.svg\" width=\"281\" height=\"47\"\/><\/p>\n<p>\u0417\u043d\u0430\u043a\u043e\u043c\u043e\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441\u043f\u0440\u0430\u0432\u0430? \u0414\u0430, \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u0435\u043c \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u043f\u0440\u0435\u0434\u0435\u043b\u0443 \u043f\u0440\u0438 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"h \\to 0\" alt=\"h \\to 0\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ead\/c0e\/22c\/eadc0e22cafa4741b01823d6c75c065c.svg\" width=\"51\" height=\"17\"\/> \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0443\u0436\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u0435<\/p>\n<p><img class=\"formula\" source=\"\\partial^2_t u = c^2 \\partial^2_x u, \\quad c^2=KL^2\/M.\" alt=\"\\partial^2_t u = c^2 \\partial^2_x u, \\quad c^2=KL^2\/M.\" width=\"250\" height=\"26\"\/><\/p>\n<\/div>\n<\/details>\n<p>\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u044f\u0442\u0441\u044f \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"u(0,x)=u_0(x), ~ \\partial_t u\\vert_{(0,x)}=p(x)\" alt=\"u(0,x)=u_0(x), ~ \\partial_t u\\vert_{(0,x)}=p(x)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/977\/093\/d90\/977093d905ef78ffc207f78667bf483b.svg\" width=\"266\" height=\"25\"\/><\/p>\n<p>\u0438 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043a\u0440\u0430\u0435\u0432\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u0440\u0430\u0435\u0432\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u0414\u0438\u0440\u0438\u0445\u043b\u0435 (\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043a\u0430\u043a \u0431\u044b \u0437\u0430\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0430 \u0432 \u043d\u0443\u043b\u0435 \u043d\u0430 \u043a\u0440\u0430\u044f\u0445)<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\forall t \\in \\mathbb{R}_+ ~ u(t,a)=0,~u(t,b)=0.\" alt=\"\\forall t \\in \\mathbb{R}_+ ~ u(t,a)=0,~u(t,b)=0.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2ec\/973\/d5c\/2ec973d5c719f4a7dad9ea982fa86967.svg\" width=\"264\" height=\"22\"\/><\/p>\n<p>\u0420\u0435\u0448\u0435\u043d\u0438\u0435\u043c \u0442\u0430\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0431\u0443\u0434\u0435\u0442 \u0434\u0438\u043d\u0430\u043c\u0438\u043a\u0430 \u043f\u0440\u043e\u0444\u0438\u043b\u044f \u043d\u0430\u0442\u044f\u043d\u0443\u0442\u043e\u0439 c\u0442\u0440\u0443\u043d\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u043b \u043a\u0430\u043a <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"u_0(x)\" alt=\"u_0(x)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ac2\/a17\/c47\/ac2a17c47b673ada8d6f35834f29523b.svg\" width=\"46\" height=\"22\"\/>, \u043d\u043e \u043f\u043e\u0434 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u043c \u0441\u0438\u043b \u0443\u043f\u0440\u0443\u0433\u043e\u0441\u0442\u0438 \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0438 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"t\" alt=\"t\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/7f2\/4fc\/a9e\/7f24fca9e3398ad6f2b7ec709e95aaff.svg\" width=\"7\" height=\"16\"\/> \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043a\u0430\u043a <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"u(t,x)\" alt=\"u(t,x)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/14b\/6db\/f2a\/14b6dbf2a4e67b7585184a87014461fc.svg\" width=\"53\" height=\"22\"\/>.<\/p>\n<h2>\u041a\u043e\u043d\u0435\u0447\u043d\u043e-\u0440\u0430\u0437\u043d\u043e\u0441\u0442\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430<\/h2>\n<p>\u0412\u043e\u043e\u0431\u0449\u0435, \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0434\u0430\u0451\u0442\u0441\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <a href=\"https:\/\/en.wikipedia.org\/wiki\/D%27Alembert%27s_formula\" rel=\"noopener noreferrer nofollow\">\u0444\u043e\u0440\u043c\u0443\u043b\u043e\u0439 \u0414&#8217;\u0410\u043b\u0430\u043c\u0431\u0435\u0440\u0430<\/a>, \u043d\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u043c, \u0447\u0442\u043e \u043c\u044b \u043d\u0435 \u0438\u0437\u0443\u0447\u0430\u043b\u0438 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0432 \u0447\u0430\u0441\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0445 \u0438 \u0441\u0435\u0439\u0447\u0430\u0441 \u044d\u0442\u043e\u0433\u043e \u043d\u0435 \u0437\u043d\u0430\u0435\u043c. \u041a\u0430\u043a\u043e\u0439 \u0440\u0430\u0437\u0443\u043c\u043d\u044b\u0439 \u0440\u0435\u0446\u0435\u043f\u0442 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0439\u0442\u0438 \u0432 \u0433\u043e\u043b\u043e\u0432\u0443? \u0412\u0440\u043e\u0434\u0435 \u043c\u044b \u043f\u043e\u043c\u043d\u0438\u043c \u043a\u0430\u043a \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u0443\u044e \u0441\u043e \u0432\u0440\u0435\u043c\u0451\u043d \u043c\u0430\u0442\u0430\u043d\u0430-1&#8230;<\/p>\n<p>\u041f\u043e\u0447\u0435\u043c\u0443 \u0431\u044b \u0438 \u043d\u0435\u0442, \u043d\u043e \u043f\u043e\u0434\u043e\u0439\u0434\u0451\u043c \u043a \u0432\u043e\u043f\u0440\u043e\u0441\u0443 \u0441\u0442\u0440\u043e\u0433\u043e. \u041f\u043e \u0441\u0443\u0442\u0438 \u043c\u044b \u043f\u043e\u0439\u0434\u0451\u043c \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u0443\u044e \u0441\u0442\u043e\u0440\u043e\u043d\u0443, \u043f\u044b\u0442\u0430\u044f\u0441\u044c \u0432\u043e\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c \u0441\u0442\u0440\u0443\u043d\u0443 \u043d\u0430\u0431\u043e\u0440\u043e\u043c \u0433\u0440\u0443\u0437\u0438\u043a\u043e\u0432, \u0441\u043e\u0435\u0434\u0438\u043d\u0451\u043d\u043d\u044b\u0445 \u043f\u0440\u0443\u0436\u0438\u043d\u043e\u0439. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0434\u0435\u043b\u0438\u043c \u0441\u0442\u0440\u0443\u043d\u0443 \u043d\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"N_x\" alt=\"N_x\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f98\/eb2\/ff3\/f98eb2ff300651cc3301d6e26623eef6.svg\" width=\"25\" height=\"20\"\/>\u0440\u0430\u0432\u043d\u044b\u0445 \u0441\u0435\u0433\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043c \u0435\u0451 \u043a\u0430\u043a \u043d\u0430\u0431\u043e\u0440 \u0442\u043e\u0447\u0435\u043a.\u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043f\u043e\u0441\u0442\u0443\u043f\u0438\u043c \u0441\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c, \u043f\u043e\u0434\u0435\u043b\u0438\u0432 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0449\u0438\u0439 \u043d\u0430\u0441 \u043e\u0442\u0440\u0435\u0437\u043e\u043a <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"[0,T]\" alt=\"[0,T]\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e7d\/b7b\/080\/e7db7b080f6edbadbb20bc331dd5b0f8.svg\" width=\"43\" height=\"22\"\/>\u043d\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"N_t\" alt=\"N_t\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f1a\/cbb\/f19\/f1acbbf19ffd6f223433e9c45142551c.svg\" width=\"22\" height=\"20\"\/>\u0440\u0430\u0432\u043d\u044b\u0445 \u043a\u0443\u0441\u043a\u043e\u0432; \u0438\u0442\u043e\u0433\u043e \u0438\u043c\u0435\u0435\u043c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"N_x+1\" alt=\"N_x+1\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/09a\/fe4\/64b\/09afe464b01546d15fafb5bbf47529c6.svg\" width=\"58\" height=\"20\"\/>\u0442\u043e\u0447\u0435\u043a <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"x_j\" alt=\"x_j\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/33f\/5fd\/93c\/33f5fd93cc5049bda07ee2188f74fb3d.svg\" width=\"19\" height=\"17\"\/>\u043f\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0443, <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"N_t+1\" alt=\"N_t+1\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/213\/f9e\/9f2\/213f9e9f292402fed2667068461cdf58.svg\" width=\"56\" height=\"20\"\/>\u0442\u043e\u0447\u0435\u043a <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"t_i\" alt=\"t_i\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/97d\/2d1\/07d\/97d2d107dd093b0935d5c7205a086560.svg\" width=\"14\" height=\"19\"\/>\u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0432\u0441\u0435\u0433\u043e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"(N_x+1)(N_t+1)\" alt=\"(N_x+1)(N_t+1)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/eb3\/a63\/e84\/eb3a63e8424814a5146fc6598dab764f.svg\" width=\"144\" height=\"22\"\/>\u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0442\u043e\u0447\u0435\u043a, \u043e\u0431\u0440\u0430\u0437\u0443\u044e\u0449\u0438\u0445 \u0441\u0435\u0442\u043a\u0443 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"G_{N_x,N_t}\" alt=\"G_{N_x,N_t}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b03\/b23\/d02\/b03b23d02dd93c0a14e06b723f34fe23.svg\" width=\"55\" height=\"22\"\/>. \u041d\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u0442\u044c \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0442\u0430\u043a\u0443\u044e <em>\u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u0443\u044e<\/em> (\u043a\u0430\u043a \u0435\u0449\u0451 \u0433\u043e\u0432\u043e\u0440\u044f\u0442, <em>\u0441\u0435\u0442\u043e\u0447\u043d\u0443\u044e<\/em>) \u0444\u0443\u043d\u043a\u0446\u0438\u044e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}(t_i,x_j)\" alt=\"\\tilde{u}(t_i,x_j)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ad0\/b7d\/d54\/ad0b7dd5411169192a0d854cd32ae0a1.svg\" width=\"67\" height=\"23\"\/>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u044b \u0445\u043e\u0440\u043e\u0448\u043e \u043f\u0440\u0438\u0431\u043b\u0438\u0436\u0430\u043b\u0430 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0443\u044e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"u(t,x)\" alt=\"u(t,x)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/949\/5ee\/a49\/9495eea498ee7101e1d621c8eeb1fc1c.svg\" width=\"53\" height=\"22\"\/>. \u041a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0435\u0435, \u043d\u0430\u043c \u0431\u044b \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c, \u0447\u0442\u043e\u0431\u044b<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\max_{t_i,x_j \\in G_{N_x,N_t}} \\left\\vert u(t_i,x_j) - \\tilde{u}(t_i,x_j) \\right\\vert \\to 0 \\text{ \u043f\u0440\u0438 } N_x, N_t \\to \\infty.\" alt=\"\\max_{t_i,x_j \\in G_{N_x,N_t}} \\left\\vert u(t_i,x_j) - \\tilde{u}(t_i,x_j) \\right\\vert \\to 0 \\text{ \u043f\u0440\u0438 } N_x, N_t \\to \\infty.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/142\/721\/776\/14272177695135c05a0dd10203467dd9.svg\" width=\"433\" height=\"37\"\/><\/p>\n<p>\u0420\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0443\u0437\u043b\u0430\u043c\u0438 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u0441\u0435\u0442\u043a\u0438 \u043f\u043e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"x\" alt=\"x\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/1b0\/b5d\/f38\/1b0b5df38fd6cbb4c56c9c7a8500ae21.svg\" width=\"11\" height=\"12\"\/>\u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0438\u043c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"h_x=(b-a)\/N_x\" alt=\"h_x=(b-a)\/N_x\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/09e\/891\/e17\/09e891e17a26bc32cda558bd1d0b41b8.svg\" width=\"139\" height=\"22\"\/>, \u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"h_t=T\/N_t\" alt=\"h_t=T\/N_t\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/827\/84e\/adf\/82784eadfcad06454cd8e3bfa8fa3d45.svg\" width=\"89\" height=\"22\"\/>.\u0422\u0430\u043a, \u043f\u0440\u0438 \u0431\u043e\u043b\u0435\u0435 \u0433\u0443\u0441\u0442\u043e\u0439 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u0431\u043b\u0438\u0436\u0451\u043d\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0431\u043b\u0438\u0436\u0435 \u043a \u0438\u0441\u0442\u0438\u043d\u043d\u043e\u043c\u0443.<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0440\u0430\u0437\u0431\u0435\u0440\u0451\u043c\u0441\u044f \u0441 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u043c \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435\u043c<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\partial^2_t u = c^2 \\partial^2_x u.\" alt=\"\\partial^2_t u = c^2 \\partial^2_x u.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ea7\/318\/cc5\/ea7318cc5eaaeb8db251c974c007cae3.svg\" width=\"110\" height=\"26\"\/><\/p>\n<p>\u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u043d\u0443\u043c\u0435\u0440\u0443\u0435\u043c \u0442\u043e\u0447\u043a\u0438 \u043f\u043e \u043a\u0430\u0436\u0434\u043e\u0439 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u0435 \u043e\u0442 \u043d\u0443\u043b\u044f, \u0442\u043e \u0443 \u043d\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u0441\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u044b <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"i=0,..,N_t\" alt=\"i=0,..,N_t\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/584\/0f8\/544\/5840f8544ec96e8188888a8a761c065d.svg\" width=\"99\" height=\"20\"\/>\u0438 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"j=0,..,N_x\" alt=\"j=0,..,N_x\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/dc9\/5de\/140\/dc95de140ba03f56d32653bbc6377b53.svg\" width=\"103\" height=\"20\"\/>. \u0417\u0430\u043c\u0435\u043d\u0438\u043c \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u043e\u0445\u043e\u0436\u0435\u0435 \u0434\u043b\u044f \u043d\u0430\u0448\u0435\u0439 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043e\u0446\u0435\u043d\u0438\u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u0443\u044e \u0432 \u0442\u043e\u0447\u043a\u0435 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"(t_i,x_j)\" alt=\"(t_i,x_j)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/772\/1ab\/8ae\/7721ab8ae742babf08380b06bc62f4af.svg\" width=\"56\" height=\"23\"\/>. \u0412\u0441\u043f\u043e\u043c\u043d\u0438\u043c, \u0447\u0442\u043e \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u0438 \u043a\u0440\u0430\u0435\u0432\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u043e\u0432\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043c\u044b \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043d\u0435 \u0432\u043e \u0432\u0441\u0435\u0445 \u0442\u043e\u0447\u043a\u0430\u0445:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\forall i\\geq 1, 1\\leq j \\leq N_x-1 \\\\ \\frac{\\tilde{u}(t_{i+1},x_j) - 2\\tilde{u}(t_i,x_j) + \\tilde{u}(t_{i-1},x_j)}{h_t^2} = c^2 \\frac{\\tilde{u}(t_{i},x_{j+1}) - 2\\tilde{u}(t_i,x_j) + \\tilde{u}(t_{i},x_{j-1})}{h_x^2}.\" alt=\"\\forall i\\geq 1, 1\\leq j \\leq N_x-1 \\\\ \\frac{\\tilde{u}(t_{i+1},x_j) - 2\\tilde{u}(t_i,x_j) + \\tilde{u}(t_{i-1},x_j)}{h_t^2} = c^2 \\frac{\\tilde{u}(t_{i},x_{j+1}) - 2\\tilde{u}(t_i,x_j) + \\tilde{u}(t_{i},x_{j-1})}{h_x^2}.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5bf\/c91\/6f5\/5bfc916f574a67c61d4dc623ad0f6aa2.svg\" width=\"697\" height=\"79\"\/><\/p>\n<p>\u041c\u044b \u0437\u043d\u0430\u0435\u043c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}(t_0,x_j)\" alt=\"\\tilde{u}(t_0,x_j)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/00d\/ccf\/95a\/00dccf95a6f51c3b4401c3d23160731c.svg\" width=\"69\" height=\"23\"\/>\u0442.\u043a. \u0432 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"t_0=0\" alt=\"t_0=0\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b7d\/452\/891\/b7d452891d43d0a3655cfac2bc0676a0.svg\" width=\"51\" height=\"19\"\/>\u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u0435, \u0442\u0430\u043a\u0438\u043c \u0436\u0435 \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043d\u0430\u043c \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}(t_i,x_{N_x})\" alt=\"\\tilde{u}(t_i,x_{N_x})\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c1a\/bc5\/79b\/c1abc579b3c232c1a2952ac290155f37.svg\" width=\"79\" height=\"23\"\/>\u0438 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}(t_i,x_0)\" alt=\"\\tilde{u}(t_i,x_0)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e72\/62c\/377\/e7262c3779d779a1b15248a63f9d586c.svg\" width=\"68\" height=\"22\"\/>\u0438\u0437 \u043a\u0440\u0430\u0435\u0432\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u0414\u0438\u0440\u0438\u0445\u043b\u0435. \u0415\u0441\u0442\u044c, \u043f\u0440\u0430\u0432\u0434\u0430, \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430: \u043d\u0430\u043c \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}(t_1,x_j)\" alt=\"\\tilde{u}(t_1,x_j)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/67f\/268\/5f3\/67f2685f33c4e44df4295aa118861975.svg\" width=\"69\" height=\"23\"\/>, &#8212; \u043d\u043e \u0435\u0451 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0440\u0435\u0448\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0432\u0442\u043e\u0440\u043e\u0435 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u0435. \u041f\u043e\u043c\u043d\u0438\u0442\u0435, \u0431\u044b\u043b\u0430 \u043f\u0435\u0440\u0432\u0430\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u0430\u044f \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"t=0\" alt=\"t=0\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b61\/92a\/d6d\/b6192ad6d0430c47d53d0a0b009787df.svg\" width=\"42\" height=\"16\"\/>? \u0412\u0441\u043f\u043e\u043c\u043d\u0438\u043c \u0441\u0442\u0430\u0440\u044b\u0439 \u0434\u043e\u0431\u0440\u044b\u0439 \u0440\u044f\u0434 \u0422\u044d\u0439\u043b\u043e\u0440\u0430 \u0438 \u0430\u043f\u043f\u0440\u043e\u043a\u0441\u0438\u043c\u0438\u0440\u0443\u0435\u043c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"u(t_1,x_j)\" alt=\"u(t_1,x_j)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5aa\/84a\/67b\/5aa84a67b99e02e0c88e1617d3f26040.svg\" width=\"69\" height=\"23\"\/>:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\tilde{u}(t_1,x_j) = \\tilde{u}(0,x_j) + h_t \\partial_t u \\vert_{(0,x_j)}.\" alt=\"\\tilde{u}(t_1,x_j) = \\tilde{u}(0,x_j) + h_t \\partial_t u \\vert_{(0,x_j)}.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/41e\/0fd\/280\/41e0fd2808128257c05d5294a6f5347c.svg\" width=\"274\" height=\"25\"\/><\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u044b\u0440\u0430\u0437\u0438\u0442\u044c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}(t_{i+1},x_{j})\" alt=\"\\tilde{u}(t_{i+1},x_{j})\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/713\/fec\/f7a\/713fecf7a4e6bf074ca0ce42f3c2bbe9.svg\" width=\"84\" height=\"23\"\/>\u0438\u0437 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0432\u044b\u0448\u0435 \u0438 voil\u00e0, \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c <em>\u044f\u0432\u043d\u0443\u044e \u0441\u0445\u0435\u043c\u0443<\/em> (\u0432 \u0442\u043e\u043c \u0441\u043c\u044b\u0441\u043b\u0435, \u0447\u0442\u043e \u0435\u0441\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u0430\u044f \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0444\u043e\u0440\u043c\u0443\u043b\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"u(t_{i+1},\\cdot)\" alt=\"u(t_{i+1},\\cdot)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5fb\/db3\/fc5\/5fbdb3fc5194d6e8f32dc3e8a516f478.svg\" width=\"71\" height=\"22\"\/>\u043f\u0440\u0438 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u043c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"u(t_{i},\\cdot)\" alt=\"u(t_{i},\\cdot)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/32a\/d15\/2f9\/32ad152f9c94be640da8d92571ae3545.svg\" width=\"54\" height=\"22\"\/>). \u041d\u0430\u0448 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u043c \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0438 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}(t_2, \\cdot),\\tilde{u}(t_3, \\cdot),...\" alt=\"\\tilde{u}(t_2, \\cdot),\\tilde{u}(t_3, \\cdot),...\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/05e\/837\/f8d\/05e837f8d9b5ee6e26939ceaaf948b11.svg\" width=\"151\" height=\"22\"\/>\u0434\u043e \u0441\u0430\u043c\u043e\u0433\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0441\u043b\u043e\u044f \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}(t_{N_t}, \\cdot)\" alt=\"\\tilde{u}(t_{N_t}, \\cdot)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/4fb\/ddf\/853\/4fbddf853919edf43f42be56820f543c.svg\" width=\"65\" height=\"23\"\/>.<\/p>\n<p>\u041f\u043e\u0434\u044b\u0442\u043e\u0436\u0438\u043c, \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0438\u0432 \u0432\u0435\u043a\u0442\u043e\u0440 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}_i:=\\tilde{u}(t_i, \\cdot)\" alt=\"\\tilde{u}_i:=\\tilde{u}(t_i, \\cdot)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/438\/7fa\/51b\/4387fa51b7cdb87960af903e4881c6f2.svg\" width=\"102\" height=\"22\"\/>\u0438 \u0432\u0432\u0435\u0434\u044f \u043c\u0430\u0442\u0440\u0438\u0446\u0443 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"C\" alt=\"C\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/0f3\/33d\/654\/0f333d654ad8e949255f554436bc6623.svg\" width=\"15\" height=\"17\"\/>\u0440\u0430\u0437\u043c\u0435\u0440\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"(N_x-1) \\times (N_x-1)\" alt=\"(N_x-1) \\times (N_x-1)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/caa\/27a\/108\/caa27a10843ca5f4a74e0b77d9da6e15.svg\" width=\"171\" height=\"22\"\/> \u043a\u0430\u043a \u043c\u0430\u0442\u0440\u0438\u0446\u0443 \u0441 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c\u0438<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\frac{2}{h_t^2} - \\frac{2c^2}{h_x^2}\" alt=\"\\frac{2}{h_t^2} - \\frac{2c^2}{h_x^2}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/635\/60c\/b1b\/63560cb1b38c768031ba30cf472e4ee4.svg\" width=\"84\" height=\"53\"\/><\/p>\n<p>\u043d\u0430 \u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u0438 \u0438 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"c^2\/h_x^2\" alt=\"c^2\/h_x^2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a2d\/074\/e6b\/a2d074e6b372d96722bac4ff4fc1ad67.svg\" width=\"48\" height=\"25\"\/>\u043d\u0430\u0434 \u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u044c\u044e \u0438 \u043f\u043e\u0434 \u043d\u0435\u0439. \u0422\u0430\u043a\u0430\u044f \u043c\u0430\u0442\u0440\u0438\u0446\u0430 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u0440\u0451\u0445\u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439. \u041d\u0430\u0448 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043a\u0430\u043a-\u0442\u043e \u0442\u0430\u043a:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\textbf{\u0412\u0445\u043e\u0434:}~ u_0(x), \\partial_t u \\vert_{0,x}, N_x, N_t\\\\   \\tilde{u}(0,x_j)\\leftarrow u_0(x_j)\\\\  \\tilde{u}(t_1,x_j) = \\tilde{u}(0,x_j) + h_t \\partial_t u \\vert_{(0,x_j)} \\;\\\\  for~ i \\in \\lbrace 2,...,N_t \\rbrace ~~ \\tilde{u}_i = h_t^2 C\\tilde{u}_{i-1} - \\tilde{u}_{i-2}\" alt=\"\\textbf{\u0412\u0445\u043e\u0434:}~ u_0(x), \\partial_t u \\vert_{0,x}, N_x, N_t\\\\   \\tilde{u}(0,x_j)\\leftarrow u_0(x_j)\\\\  \\tilde{u}(t_1,x_j) = \\tilde{u}(0,x_j) + h_t \\partial_t u \\vert_{(0,x_j)} \\;\\\\  for~ i \\in \\lbrace 2,...,N_t \\rbrace ~~ \\tilde{u}_i = h_t^2 C\\tilde{u}_{i-1} - \\tilde{u}_{i-2}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c4d\/e2b\/c5e\/c4de2bc5e1c4e3245dcc7f6d9e94f73f.svg\" width=\"697\" height=\"112\"\/><\/p>\n<p>\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0432\u0441\u0435\u0433\u043e \u043b\u0438\u0448\u044c \u043f\u043e\u0440\u044f\u0434\u043a\u0430 <img class=\"formula inline\" source=\"N_xN_t\" alt=\"N_xN_t\" width=\"48\" height=\"20\"\/>. \u041d\u0430\u043f\u0438\u0448\u0435\u043c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043a\u043b\u0430\u0441\u0441, \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u044e\u0449\u0438\u0439 \u044f\u0432\u043d\u0443\u044e \u0441\u0445\u0435\u043c\u0443 \u0441 \u0442\u0430\u043a\u0438\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c. \u0414\u043b\u044f \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c scipy.sparse, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u043c \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0437\u0440\u0435\u0436\u0435\u043d\u043d\u044b\u0435 \u043c\u0430\u0442\u0440\u0438\u0446\u044b, \u0441\u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0432 \u043c\u043d\u043e\u0433\u043e \u043f\u0430\u043c\u044f\u0442\u0438 \u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0430 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f. \u042d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0432\u0430\u0436\u043d\u043e, \u0435\u0441\u043b\u0438 \u043c\u044b \u043f\u043e\u0442\u043e\u043c \u0437\u0430\u0445\u043e\u0442\u0438\u043c \u0440\u0435\u0448\u0430\u0442\u044c \u0432\u043e\u043b\u043d\u043e\u0432\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0432 \u0440\u0430\u0437\u043c\u0435\u0440\u043d\u043e\u0441\u0442\u0438 <img class=\"formula inline\" source=\"d>1&#8243; alt=&#187;d>1&#8243; src=&#187;https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/57c\/785\/3dc\/57c7853dc2642558a9712fa6f35af6ff.svg&#187; width=&#187;45&#8243; height=&#187;17&#8243;\/>.<\/p>\n<pre><code class=\"python\">import numpy as np import scipy.sparse as sps import scipy.sparse.linalg as splin   class ExplicitEulerSolver:      def __init__(self, hs, cCoef):         '''         Input         float[] hs -- the steps of the discretization, [d+1], the first is the time         '''         super(ExplicitEulerSolver,self).__init__()          self.hs = hs         self.cCoef = cCoef         self.dim = hs.shape[0]-1         print(self.dim)       def solveBVProblem1D(self, uInits, numSteps, rightPart=None, spaceGrid=None):         '''             Solves Dirichlet Boundary-Value Problem             Input             float[] uInits -- two initial layers of shape [2,...dims...]             int numSteps -- number of time steps             funcHandler rightPart -- right part depending on time and space (t,x)             float[][] spaceGrid -- space grid of points         '''          #trim inits         uSol = [ (uInits[0,...])[None,...], (uInits[1,...])[None,...] ]         shape= np.array(list(uSol[0].shape)[1:])-2#-2 for dirichlet, trimmed shape for later restoration         uSol[0] = np.take(uSol[0],np.arange(1,uSol[0].shape[1]-1),axis=1)         uSol[1] = np.take(uSol[1],np.arange(1,uSol[1].shape[1]-1),axis=1)         uSol[0] = np.reshape(uSol[0], newshape=(-1,), order='C')[None,:]         uSol[1] = np.reshape(uSol[1], newshape=(-1,), order='C')[None,:]          #assembling iteration matrix         diags = self.hs[0]**2 *np.concatenate([self.cCoef**2 \/(self.hs[1]**2) * np.ones([1,shape[0]]),                     (2\/(self.hs[0]**2) - 2*self.cCoef**2 \/(self.hs[1]**2) ) * np.ones([1,shape[0]]),                      self.cCoef**2  \/(self.hs[1]**2) * np.ones([1,shape[0]])],axis=0)         offsets = np.array([-1,0,1])                      C = sps.spdiags(diags,offsets, m=len(diags[1]),n=len(diags[1]), format=\"csr\")          for i in np.arange(numSteps-1):             if(rightPart is None):                 toAdd = C@uSol[-1][0,:] - uSol[-2][0,:]             else:                 toAdd = C@uSol[-1][0,:] - uSol[-2][0,:] + np.reshape(rightPart(self.hs[0]*(i+2),spaceGrid),newshape=(-1,))             uSol.append(toAdd[None,:])          uSol=np.concatenate(uSol, axis=0)         toShape= tuple([uSol.shape[0]] + [shape[j] for j in np.arange(len(shape))])         return np.pad(np.reshape(uSol, newshape=toShape), pad_width=[(0,0)]+[(1,1) for _ in np.arange(self.dim)])    <\/code><\/pre>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c! \u041f\u0443\u0441\u0442\u044c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"a=0,b=2, T=4, c=2\" alt=\"a=0,b=2, T=4, c=2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a95\/bc3\/086\/a95bc3086794fd2f861ad32280eb6dd1.svg\" width=\"208\" height=\"20\"\/>, \u0437\u0430\u0434\u0430\u0434\u0438\u043c \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f <\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"u_0(x)=  \\begin{cases}  2x, &amp; x &lt;0.5,\\\\ -\\frac{2}{3}x + \\frac{4}{3}, &amp; x\\geq 0.5, \\end{cases} ~~\\partial_t u\\vert_{0,x}=0.\" alt=\"u_0(x)=  \\begin{cases}  2x, &amp; x &lt;0.5,\\\\ -\\frac{2}{3}x + \\frac{4}{3}, &amp; x\\geq 0.5, \\end{cases} ~~\\partial_t u\\vert_{0,x}=0.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/191\/591\/ae9\/191591ae9d290d6c9b9187c37331c7f8.svg\" width=\"368\" height=\"51\"\/><\/p>\n<figure class=\"bordered full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/c5e\/d90\/7bc\/c5ed907bc261b82a4951feba226e2d42.png\" alt=\"\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043e\u0442\u0442\u044f\u043d\u0443\u043b\u0438 \u0441\u0442\u0440\u0443\u043d\u0443\" title=\"\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043e\u0442\u0442\u044f\u043d\u0443\u043b\u0438 \u0441\u0442\u0440\u0443\u043d\u0443\" width=\"700\" height=\"700\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c5e\/d90\/7bc\/c5ed907bc261b82a4951feba226e2d42.png\"\/><\/p>\n<div><figcaption>\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043e\u0442\u0442\u044f\u043d\u0443\u043b\u0438 \u0441\u0442\u0440\u0443\u043d\u0443<\/figcaption><\/div>\n<\/figure>\n<p>\u0412\u043e\u0437\u044c\u043c\u0451\u043c, \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443, <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"N_x=20,N_t=40\" alt=\"N_x=20,N_t=40\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d12\/b63\/c71\/d12b63c71e1e3c7a964c700807aa106e.svg\" width=\"146\" height=\"20\"\/> \u0438 \u043d\u0430\u0440\u0438\u0441\u0443\u0435\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0441\u043a\u0440\u0438\u043f\u0442:<\/p>\n<pre><code class=\"python\">import numpy as np import pickle  import matplotlib.pyplot as plt from matplotlib.animation import FuncAnimation   import LinearPDESolvers as linPDEs   import time #solve wave eq  T=4 xLeft=0 xRight=2 c=2  #Nx = 510 #Nt = 1000 Nx=20 Nt=200 hx = (xRight-xLeft)\/Nx ht = T\/Nt   solver = linPDEs.ExplicitEulerSolver(np.array([ht,hx]), cCoef=c)   xs = np.arange(xLeft,xRight+hx\/2,hx) ts = np.arange(0,T+ht\/2,ht)  #assume u'(0,x)=0 def initFunc(xx):     return ((2*xx)*(xx&lt;0.5) + (xx>=0.5)*(-2\/3*xx + 4\/3)) def dtFunc(xx):     return 0 uInits = np.zeros([2,len(xs)]) uInits[0,:] = initFunc(xs) duts = dtFunc(xs) uInits[1,:] = uInits[0,:] + duts*ht  #SOLVE! res=solver.solveBVProblem1D(uInits, Nt)   # initializing a figure in  # which the graph will be plotted fig = plt.figure()      # marking the x-axis and y-axis axis = plt.axes(xlim =(xLeft, xRight),                  ylim =(-1.5, 1.5))     # initializing a line variable line, = axis.plot([], [], lw = 3)   cross = axis.scatter([xLeft,xRight],[0,0], marker=\"x\", s=90, color=\"red\")  txt = axis.text(xLeft+1e-1,-1,\"t=\"+str(ht*0)) # data which the line will  # contain (x, y) def init():      line.set_data(xs, res[0,:])     txt.set_text(\"t=\"+str(ht*0))     return line,txt,     def animate(i):     line.set_data(xs, res[i,:])     txt.set_text(\"t={:.2f}\".format(ht*i) )     return line,txt,     anim = FuncAnimation(fig, animate, init_func = init,                      frames = np.arange(0,res.shape[0],1), interval = ht*1000, blit = False, repeat=False)#ms scale  anim.save('explEuler.mp4',fps=30)  with open(\".\/solveTempOut.pkl\", \"wb\") as f:     pickle.dump({\"res\": res},f)<\/code><\/pre>\n<div class=\"tm-iframe_temp\" data-src=\"https:\/\/embedd.srv.habr.com\/iframe\/6409fa3ea9cdfde042456a09\" data-style=\"\" id=\"6409fa3ea9cdfde042456a09\" width=\"\"><\/div>\n<p>\u0422\u0430\u043a \u0441\u0442\u043e\u043f. \u041c\u043e\u0436\u0435\u0442, \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u0436\u0435\u0441\u0442\u043a\u0443\u044e \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u0438\u0437\u0430\u0446\u0438\u044e, \u0441\u0434\u0435\u043b\u0430\u0435\u043c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"N_x=100\" alt=\"N_x=100\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/1d5\/b22\/9d2\/1d5b229d24200bd20e06e9508ab42ec9.svg\" width=\"80\" height=\"20\"\/>.<\/p>\n<div class=\"tm-iframe_temp\" data-src=\"https:\/\/embedd.srv.habr.com\/iframe\/6409fae09f1c6be050c5d7cd\" data-style=\"\" id=\"6409fae09f1c6be050c5d7cd\" width=\"\"><\/div>\n<p>\u0412 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0433\u0438\u0442\u0430\u0440\u043d\u044b\u0435 \u0441\u0442\u0440\u0443\u043d\u044b \u043d\u0435 \u0440\u0430\u0437\u043b\u0435\u0442\u0430\u044e\u0442\u0441\u044f \u043f\u043e \u0412\u0441\u0435\u043b\u0435\u043d\u043d\u043e\u0439. \u0412 \u0447\u0451\u043c \u0436\u0435 \u0434\u0435\u043b\u043e? \u041c\u043e\u0436\u0435\u0442, \u0441\u043b\u0438\u0448\u043a\u043e\u043c, \u0433\u0440\u0443\u0431\u0430\u044f \u0441\u0435\u0442\u043a\u0430, \u0432\u043e\u0437\u044c\u043c\u0451\u043c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"N_t=200\" alt=\"N_t=200\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/545\/66b\/536\/54566b5368fb86b852705611c32fc430.svg\" width=\"77\" height=\"20\"\/>\u0438&#8230; <\/p>\n<div class=\"tm-iframe_temp\" data-src=\"https:\/\/embedd.srv.habr.com\/iframe\/6409fc767a8d27e0261e5b19\" data-style=\"\" id=\"6409fc767a8d27e0261e5b19\" width=\"\"><\/div>\n<p>\u0432\u0440\u043e\u0434\u0435 \u0440\u0430\u0437\u0443\u043c\u043d\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442. \u041d\u043e \u043f\u043e\u0447\u0435\u043c\u0443 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0442\u0430\u043a \u043f\u0430\u0440\u0430\u043d\u043e\u0438\u0434\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u0448\u0430\u0433 \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0445\u043e\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u0430\u0434\u0435\u043a\u0432\u0430\u0442\u043d\u043e\u0435?<\/p>\n<h2>\u0423\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442\u044c \u0440\u0430\u0437\u043d\u043e\u0441\u0442\u043d\u043e\u0439 \u0441\u0445\u0435\u043c\u044b<\/h2>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u043c \u043d\u0430\u0448 \u0438\u0442\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434; \u043f\u0440\u0438 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u043c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}_{i-1},\\tilde{u}_{i-2}\" alt=\"\\tilde{u}_{i-1},\\tilde{u}_{i-2}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2b6\/604\/43d\/2b660443d03cd83b93e5812fc5219b00.svg\" width=\"79\" height=\"20\"\/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\tilde{u}_i =  h_t^2 C\\tilde{u}_{i-1} - \\tilde{u}_{i-2}.\" alt=\"\\tilde{u}_i =  h_t^2 C\\tilde{u}_{i-1} - \\tilde{u}_{i-2}.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/dc8\/ea9\/c63\/dc8ea9c6349c9774ddf827e04a03e6e6.svg\" width=\"177\" height=\"24\"\/><\/p>\n<p>\u041d\u0430\u0448 \u0432\u0437\u0433\u043b\u044f\u0434 \u043d\u0435\u0438\u0437\u0431\u0435\u0436\u043d\u043e \u043e\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432\u043e\u043e\u0431\u0449\u0435-\u0442\u043e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}_i\" alt=\"\\tilde{u}_i\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/414\/584\/cd3\/414584cd329526154d6e01b8d6a01832.svg\" width=\"18\" height=\"19\"\/>\u043b\u0438\u043d\u0435\u0439\u043d\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}_{i-1},\\tilde{u}_{i-2}\" alt=\"\\tilde{u}_{i-1},\\tilde{u}_{i-2}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/608\/355\/b06\/608355b0625a7a0e6c107871279ed553.svg\" width=\"79\" height=\"20\"\/>. \u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u0432 \u0431\u043b\u043e\u0447\u043d\u043e\u043c \u0432\u0438\u0434\u0435<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\begin{bmatrix} \\tilde{u}_{i}\\\\ \\tilde{u}_{i-2} \\end{bmatrix}  = \\begin{bmatrix} h_t^2 C &amp; -I\\\\ 0 &amp; I \\end{bmatrix} \\begin{bmatrix} \\tilde{u}_{i-1}\\\\ \\tilde{u}_{i-2} \\end{bmatrix},\" alt=\"\\begin{bmatrix} \\tilde{u}_{i}\\\\ \\tilde{u}_{i-2} \\end{bmatrix}  = \\begin{bmatrix} h_t^2 C &amp; -I\\\\ 0 &amp; I \\end{bmatrix} \\begin{bmatrix} \\tilde{u}_{i-1}\\\\ \\tilde{u}_{i-2} \\end{bmatrix},\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a41\/058\/167\/a410581674c6505111293695d9f48df8.svg\" width=\"266\" height=\"51\"\/><\/p>\n<p>\u0433\u0434\u0435 \u0432\u043d\u0438\u0437\u0443 \u043c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0437\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e\u0435 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}_{i-2}=\\tilde{u}_{i-2}\" alt=\"\\tilde{u}_{i-2}=\\tilde{u}_{i-2}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2cd\/bf7\/316\/2cdbf7316f0e2fb1774626e6ad488525.svg\" width=\"96\" height=\"20\"\/>. \u041c\u044b \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u043c, \u0447\u0442\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0447\u0435\u043d\u044c \u0431\u044b\u0441\u0442\u0440\u043e \u0440\u0430\u0441\u0442\u0451\u0442 \u043f\u043e \u043c\u043e\u0434\u0443\u043b\u044e, \u0437\u043d\u0430\u0447\u0438\u0442, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e, \u0443 \u044d\u0442\u043e\u0439 \u043c\u0430\u0442\u0440\u0438\u0446\u044b \u043f\u043e\u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0435 \u0435\u0441\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u0432\u0435\u043a\u0442\u043e\u0440\u0430 \u0441 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c \u043f\u043e \u043c\u043e\u0434\u0443\u043b\u044e \u0431\u043e\u043b\u044c\u0448\u0435 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"1\" alt=\"1\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e9f\/80f\/4a0\/e9f80f4a05301f593de9713c145670d3.svg\" width=\"10\" height=\"16\"\/>. \u041a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u043f\u0440\u043e\u0441\u0442\u043e \u0432\u0437\u0440\u044b\u0432\u0430\u044e\u0442\u0441\u044f. \u042d\u0442\u043e \u0432 \u0447\u0438\u0441\u0442\u043e\u043c \u0432\u0438\u0434\u0435 \u0430\u0440\u0442\u0435\u0444\u0430\u043a\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430, \u0441 \u0444\u0438\u0437\u0438\u043a\u043e\u0439 \u0432\u0441\u0451 \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435.<\/p>\n<p>\u041d\u043e \u043a\u0430\u043a \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c? \u0415\u0441\u0442\u044c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440,<a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9A%D1%80%D1%83%D0%B3%D0%B8_%D0%93%D0%B5%D1%80%D1%88%D0%B3%D0%BE%D1%80%D0%B8%D0%BD%D0%B0\" rel=\"noopener noreferrer nofollow\"> \u0442\u0435\u043e\u0440\u0435\u043c\u0430 \u0413\u0435\u0440\u0448\u0433\u043e\u0440\u0438\u043d\u0430<\/a>, \u043e\u0434\u043d\u0430\u043a\u043e \u043e\u043d\u0430 \u0434\u0430\u0451\u0442 \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u0447\u0435\u043d\u044c \u0433\u0440\u0443\u0431\u0443\u044e \u043e\u0446\u0435\u043d\u043a\u0443 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b. \u0421\u0447\u0438\u0442\u0430\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430? \u041d\u043e \u044d\u0442\u043e \u0434\u043e\u0440\u043e\u0433\u043e \u0438 \u043d\u0435 \u0431\u0443\u0434\u0435\u043c \u0436\u0435 \u043c\u044b \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"N_x,N_t\" alt=\"N_x,N_t\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e11\/574\/05e\/e1157405ea3b8e5914838004d5506110.svg\" width=\"56\" height=\"20\"\/>\u0442\u0430\u043a \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u0430\u0434\u0435\u043a\u0432\u0430\u0442\u043d\u043e\u0441\u0442\u044c \u0441\u0445\u0435\u043c\u044b. \u0425\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u043a\u0440\u0438\u0442\u0435\u0440\u0438\u0439, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u043c\u043e\u0433\u043b\u0438 \u0431\u044b \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"N_x,N_t\" alt=\"N_x,N_t\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c9f\/118\/ee6\/c9f118ee646a6dffe3d17f80606ba5b6.svg\" width=\"56\" height=\"20\"\/>\u0438 \u0441\u043a\u0430\u0437\u0430\u0442\u044c \u0441\u0440\u0430\u0437\u0443, \u0431\u0443\u0434\u0435\u0442 \u043b\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c <em>\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u043c<\/em>.<\/p>\n<p>\u0418\u043c\u0435\u043d\u043d\u043e \u0442\u0430\u043a \u0438 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u044d\u0442\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0443\u043f\u0440\u043e\u0449\u0451\u043d\u043d\u043e \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u0440\u0438 \u043c\u0430\u043b\u044b\u0445 \u0432\u043e\u0437\u043c\u0443\u0449\u0435\u043d\u0438\u044f\u0445 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}_{i-1}+\\delta_1,\\tilde{u}_{i-2}+\\delta_2\" alt=\"\\tilde{u}_{i-1}+\\delta_1,\\tilde{u}_{i-2}+\\delta_2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2f2\/d1f\/abf\/2f2d1fabf864b06f0f635b5edaa282b5.svg\" width=\"161\" height=\"21\"\/>\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0439 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}_i\" alt=\"\\tilde{u}_i\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/46d\/857\/5b0\/46d8575b05dc033808e940de75d797b1.svg\" width=\"18\" height=\"19\"\/>\u0442\u0430\u043a\u0436\u0435 \u043c\u0430\u043b\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}_i\" alt=\"\\tilde{u}_i\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/eeb\/77f\/fd2\/eeb77ffd2fbe3a833b4cd77a388b7a4e.svg\" width=\"18\" height=\"19\"\/>, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0431\u0435\u0437 \u0432\u043e\u0437\u043c\u0443\u0449\u0435\u043d\u0438\u0439. \u0412\u043e\u0437\u043c\u0443\u0449\u0435\u043d\u0438\u044f <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\delta_1,\\delta_2\" alt=\"\\delta_1,\\delta_2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/281\/c4e\/934\/281c4e934d9a847b67b50c8013730201.svg\" width=\"43\" height=\"20\"\/>\u0436\u0435 \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u0432\u0435\u043a\u0442\u043e\u0440\u0430? \u0415\u0441\u043b\u0438 \u0442\u0430\u043c \u0431\u0443\u0434\u0435\u0442 \u0434\u0430\u0436\u0435 \u0441 \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442\u043e\u043c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"10^{-12}\" alt=\"10^{-12}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/36a\/a5b\/d01\/36aa5bd019f6a098ff7f5f2cb2cd6e7e.svg\" width=\"45\" height=\"21\"\/>\u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0432\u0435\u043a\u0442\u043e\u0440 \u0441 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c, \u0441\u043a\u0430\u0436\u0435\u043c, <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\lambda=2\" alt=\"\\lambda=2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f9c\/1fc\/fbc\/f9c1fcfbcc3c99ec58724620be1fde0e.svg\" width=\"47\" height=\"17\"\/>, \u0442\u043e \u0443\u0436\u0435 \u0433\u0434\u0435-\u0442\u043e \u043f\u043e\u0441\u043b\u0435 \u0448\u0430\u0433\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"i=25\" alt=\"i=25\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/520\/632\/df6\/520632df60e62a5f73867dcbd1db45b8.svg\" width=\"52\" height=\"16\"\/>\u0433\u0438\u0442\u0430\u0440\u043d\u0430\u044f \u0441\u0442\u0440\u0443\u043d\u0430 \u0443\u043b\u0435\u0442\u0438\u0442 \u0432 \u043d\u0435\u0431\u043e.<\/p>\n<p>\u0417\u043d\u0430\u043c\u0435\u043d\u0438\u0442\u0430\u044f <a href=\"https:\/\/doi.org\/10.1002\/cpa.3160090206\" rel=\"noopener noreferrer nofollow\">\u0442\u0435\u043e\u0440\u0435\u043c\u0430 \u041b\u0430\u043a\u0441\u0430<\/a> (\u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u0440\u0435\u0430\u043b\u044c\u043d\u043e \u0445\u043e\u0440\u043e\u0448\u0430\u044f \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438, \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0432\u0438\u0434\u0435\u043b\u0438) \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442, \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u0447\u0438\u0441\u043b\u0435\u043d\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u0430, \u0442\u043e \u0435\u0441\u0442\u044c, \u0438 \u0430\u043f\u043f\u0440\u043e\u043a\u0441\u0438\u043c\u0438\u0440\u0443\u0435\u0442 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 (\u0432 \u0442\u043e\u043c \u0441\u043c\u044b\u0441\u043b\u0435, \u0447\u0442\u043e \u0434\u043b\u044f \u043f\u043e\u043b\u0438\u043d\u043e\u043c\u043e\u0432 \u043e\u0442 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"x,t\" alt=\"x,t\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/430\/925\/78f\/43092578fb03851896a029c6f5780334.svg\" width=\"27\" height=\"19\"\/> \u0441\u0442\u0435\u043f\u0435\u043d\u0438 \u043d\u0435 \u0432\u044b\u0448\u0435 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"k\" alt=\"k\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/185\/d00\/bf2\/185d00bf2e9ff68394c5f06bed4dd45a.svg\" width=\"10\" height=\"17\"\/> \u043f\u0440\u0438\u0431\u043b\u0438\u0436\u0451\u043d\u043d\u0430\u044f \u0444\u043e\u0440\u043c\u0443\u043b\u0430 \u0434\u043b\u044f \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0442\u043e\u0447\u043d\u0430), \u0442\u043e \u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u043e \u043f\u043e \u0441\u0435\u0442\u043a\u0435 \u0441\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u043a \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u043c\u0443 \u0438 \u043e\u0448\u0438\u0431\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0440\u044f\u0434\u043a\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"max(h_t,h_k)^k\" alt=\"max(h_t,h_k)^k\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/887\/0ed\/669\/8870ed66951dc3ef1d6771af607995a8.svg\" width=\"109\" height=\"25\"\/>. \u041c\u043e\u0436\u043d\u043e \u043f\u043e-\u0440\u0430\u0437\u043d\u043e\u043c\u0443 \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043a\u0440\u0438\u0442\u0435\u0440\u0438\u0439 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442\u0438 \u0440\u0430\u0437\u043d\u043e\u0441\u0442\u043d\u043e\u0439 \u0441\u0445\u0435\u043c\u044b, \u043d\u043e \u0432 \u043b\u044e\u0431\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0430\u043c \u043d\u0430\u0434\u043e \u043a\u0430\u043a-\u0442\u043e \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u0441\u043f\u0435\u043a\u0442\u0440 \u043c\u0430\u0442\u0440\u0438\u0446\u044b<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\begin{bmatrix} h_t^2 C &amp; -I\\\\ 0 &amp; I \\end{bmatrix}.\" alt=\"\\begin{bmatrix} h_t^2 C &amp; -I\\\\ 0 &amp; I \\end{bmatrix}.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/de3\/448\/8f0\/de34488f0281367e3945ed79cb631a34.svg\" width=\"114\" height=\"51\"\/><\/p>\n<p>\u041c\u0430\u0442\u0440\u0438\u0446\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"h_t^2 C\" alt=\"h_t^2 C\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/441\/1c9\/e6d\/4411c9e6d9c356c499a318b85a16ccac.svg\" width=\"35\" height=\"24\"\/>\u0441\u0438\u043c\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u0430\u044f \u0438 \u0442\u0440\u0451\u0445\u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0441 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u044e\u0449\u0435\u0439\u0441\u044f \u0442\u0440\u043e\u0439\u043a\u043e\u0439 \u0447\u0438\u0441\u0435\u043b. \u041f\u043e\u044d\u0442\u043e\u043c\u0443, \u0432\u0432\u0435\u0434\u044f \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbb{X}= h_x\\lbrace -N_x,..,N_x\\rbrace\" alt=\"\\mathbb{X}= h_x\\lbrace -N_x,..,N_x\\rbrace\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/722\/2ab\/bb5\/7222abbb5cf14ab09cb11b3e894f03a9.svg\" width=\"180\" height=\"22\"\/>, \u0432\u0435\u043a\u0442\u043e\u0440\u044b <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}\" alt=\"\\tilde{u}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ee5\/5e6\/cb2\/ee55e6cb26076bab9402a51ad7326c87.svg\" width=\"11\" height=\"16\"\/> \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043a\u0430\u043a \u0441\u0438\u0433\u043d\u0430\u043b\u044b <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}: \\mathbb{X} \\to \\mathbb{R}\" alt=\"\\tilde{u}: \\mathbb{X} \\to \\mathbb{R}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/0e9\/0f1\/a5b\/0e90f1a5bf697fd6d7c880b2fcd11620.svg\" width=\"85\" height=\"17\"\/>(\u0434\u043e\u0431\u0430\u0432\u0438\u0432 \u043d\u0443\u043b\u0438 \u0438\u0437 \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u0414\u0438\u0440\u0438\u0445\u043b\u0435 \u043f\u043e \u043a\u0440\u0430\u044f\u043c), \u0430 \u0438\u0445 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 \u043c\u0430\u0442\u0440\u0438\u0446\u0443 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"h_t^2 C\" alt=\"h_t^2 C\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f88\/59c\/86c\/f8859c86cfb41deed1fb310591c82595.svg\" width=\"35\" height=\"24\"\/>\u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043a\u0430\u043a \u0441\u0432\u0451\u0440\u0442\u043a\u0443 c \u0444\u0438\u043b\u044c\u0442\u0440\u043e\u043c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"f_C:\\mathbb{X} \\to \\mathbb{R}\" alt=\"f_C:\\mathbb{X} \\to \\mathbb{R}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b1d\/a7f\/7eb\/b1da7f7eb6e305ea265f55407921b5f1.svg\" width=\"96\" height=\"20\"\/> , \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"f_C(y) = \\begin{cases} \\frac{c^2}{h_x^2}, ~~ y=\\pm h_x,\\\\ \\frac{2}{h_t^2}-\\frac{2c^2}{h_x^2}, ~~ y=0,\\\\ 0, ~~ \\text{\u0432 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445}. \\end{cases}\" alt=\"f_C(y) = \\begin{cases} \\frac{c^2}{h_x^2}, ~~ y=\\pm h_x,\\\\ \\frac{2}{h_t^2}-\\frac{2c^2}{h_x^2}, ~~ y=0,\\\\ 0, ~~ \\text{\u0432 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445}. \\end{cases}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/905\/96e\/fac\/90596efacbd4556d06597d59863803f9.svg\" width=\"271\" height=\"96\"\/><\/p>\n<p>\u0422\u0430\u043a \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0432 \u0434\u0440\u0443\u0433\u043e\u043c \u0432\u0438\u0434\u0435<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\tilde{u}_{i} = h_t^2 f_C * \\tilde{u}_{i-1} - \\tilde{u}_{i-2}.\" alt=\"\\tilde{u}_{i} = h_t^2 f_C * \\tilde{u}_{i-1} - \\tilde{u}_{i-2}.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/848\/750\/ecb\/848750ecba944cf89574898b9ac18f9e.svg\" width=\"202\" height=\"24\"\/><\/p>\n<p>\u041c\u044b \u043d\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u043e\u0432\u043e\u0433\u043e, \u0441\u0432\u0451\u0440\u0442\u043a\u0430 &#8212; \u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u043b\u0438\u043d\u0435\u0439\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u0443 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430. \u041d\u043e \u0437\u0430\u0447\u0435\u043c \u0436\u0435 \u043d\u0430\u043c \u0435\u0449\u0451 \u0441\u0432\u0451\u0440\u0442\u043a\u0438, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0434\u043b\u044f \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0424\u0443\u0440\u044c\u0435!<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\mathcal{F}\\left[\\tilde{u}_{i}\\right](\\xi) = h_t^2 \\mathcal{F}\\left[f_C\\right](\\xi) \\mathcal{F}\\left[ \\tilde{u}_{i-1} \\right](\\xi) - \\mathcal{F}\\left[\\tilde{u}_{i-2}\\right](\\xi).\" alt=\"\\mathcal{F}\\left[\\tilde{u}_{i}\\right](\\xi) = h_t^2 \\mathcal{F}\\left[f_C\\right](\\xi) \\mathcal{F}\\left[ \\tilde{u}_{i-1} \\right](\\xi) - \\mathcal{F}\\left[\\tilde{u}_{i-2}\\right](\\xi).\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/7df\/a98\/31d\/7dfa9831d5b565b705b3b37ca92ca2e0.svg\" width=\"411\" height=\"24\"\/><\/p>\n<p>\u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0432\u0437\u044f\u0442\u044c \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0424\u0443\u0440\u044c\u0435, \u0430 \u0435\u0449\u0451 \u043f\u0440\u044f\u043c\u043e\u0435 \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0424\u0443\u0440\u044c\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u044e\u0442 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u044f, \u0442\u0430\u043a \u0447\u0442\u043e \u0441\u043f\u0435\u043a\u0442\u0440 \u043c\u0430\u0442\u0440\u0438\u0446\u044b \u043f\u043e \u043c\u043e\u0434\u0443\u043b\u044e \u043c\u0435\u043d\u044c\u0448\u0435 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"1\" alt=\"1\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/849\/c80\/ab8\/849c80ab8240891d2b210725b012f449.svg\" width=\"10\" height=\"16\"\/>\u0442\u043e\u0433\u0434\u0430 \u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u043a\u0443\u0440\u0440\u0435\u043d\u0442\u043d\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u0442\u0438 \u043f\u043e \u043c\u043e\u0434\u0443\u043b\u044e \u0434\u043b\u044f \u0432\u0441\u0435\u0445 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\xi\" alt=\"\\xi\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/76a\/69b\/127\/76a69b12721f5439d5e2412a0c71c402.svg\" width=\"9\" height=\"20\"\/>. \u041e\u043d\u043e \u043d\u0435 \u0442\u0430\u043a\u043e\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0435, \u043a\u0430\u043a \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u043e\u0436\u0435\u043c \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u044c \u044f\u0432\u043d\u043e<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\mathcal{F}[f_C](\\xi)=  \\frac{2}{h_t^2} - \\frac{2c^2}{h_x^2} + \\frac{c^2}{h_x^2} \\left( e^{ih_x \\xi} - e^{-ih_x \\xi}\\right) =  \\frac{2}{h_t^2} - \\frac{2c^2}{h_x^2}  + \\frac{2c^2}{h_x^2} \\cos(h_x \\xi).\" alt=\"\\mathcal{F}[f_C](\\xi)=  \\frac{2}{h_t^2} - \\frac{2c^2}{h_x^2} + \\frac{c^2}{h_x^2} \\left( e^{ih_x \\xi} - e^{-ih_x \\xi}\\right) =  \\frac{2}{h_t^2} - \\frac{2c^2}{h_x^2}  + \\frac{2c^2}{h_x^2} \\cos(h_x \\xi).\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/02c\/d47\/aa0\/02cd47aa0977eadb500a748fcc0b8a00.svg\" width=\"601\" height=\"53\"\/><\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0432\u0435\u0440\u043d\u0451\u043c\u0441\u044f \u043a \u0437\u0430\u043f\u0438\u0441\u0438 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0438. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0434\u043b\u044f \u043a\u0440\u0430\u0442\u043a\u043e\u0441\u0442\u0438 \u043f\u043e\u043b\u043e\u0436\u0438\u043c<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"F_{i}:=\\mathcal{F}\\left[\\tilde{u}_{i}\\right](\\xi),\" alt=\"F_{i}:=\\mathcal{F}\\left[\\tilde{u}_{i}\\right](\\xi),\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/423\/279\/f2d\/423279f2d15120b9cd9b33e59fe0fb98.svg\" width=\"130\" height=\"22\"\/><\/p>\n<p>\u0442\u043e\u0433\u0434\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u043c<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"F_{i} = h_t^2  \\mathcal{F}[f_C](\\xi) F_{i-1} - F_{i-2}.\" alt=\"F_{i} = h_t^2  \\mathcal{F}[f_C](\\xi) F_{i-1} - F_{i-2}.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b35\/e87\/8bb\/b35e878bb30bb6b6456670aac3fe38c9.svg\" width=\"239\" height=\"24\"\/><\/p>\n<p>\u041d\u0430\u043c, \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043d\u0443\u0436\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u0443 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\lambda^2 - h_t^2  \\mathcal{F}[f_C](\\xi) \\lambda + 1=0\" alt=\"\\lambda^2 - h_t^2  \\mathcal{F}[f_C](\\xi) \\lambda + 1=0\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/434\/663\/533\/43466353330978790e849c43b9eac878.svg\" width=\"215\" height=\"26\"\/><\/p>\n<p>\u043d\u0435 \u0431\u044b\u043b\u043e \u043a\u043e\u0440\u043d\u0435\u0439, \u043f\u043e \u043c\u043e\u0434\u0443\u043b\u044e \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0435\u0434\u0438\u043d\u0438\u0446\u044b. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u043c \u0442\u043e\u0440\u043e\u043f\u0438\u0442\u044c\u0441\u044f \u0440\u0435\u0448\u0430\u0442\u044c \u0435\u0433\u043e; \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0432 \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e<\/p>\n<ol>\n<li>\n<p>\u041f\u043e \u0444\u043e\u0440\u043c\u0443\u043b\u0430\u043c \u0412\u0438\u0435\u0442\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043a\u043e\u0440\u043d\u0435\u0439 \u0440\u0430\u0432\u043d\u043e \u0435\u0434\u0438\u043d\u0438\u0446\u0435;<\/p>\n<\/li>\n<li>\n<p>\u0423\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0438\u043c\u0435\u0435\u0442 \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442\u044b, \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0443 \u043d\u0435\u0433\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043b\u0438\u0431\u043e \u043f\u0430\u0440\u0430 \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439, \u043b\u0438\u0431\u043e \u043f\u0430\u0440\u0430 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0441\u043d\u044b\u0445, \u043d\u043e \u0441\u043e\u043f\u0440\u044f\u0436\u0451\u043d\u043d\u044b\u0445.<\/p>\n<\/li>\n<\/ol>\n<p>\u041f\u0443\u043d\u043a\u0442 1 \u0433\u043e\u0432\u043e\u0440\u0438\u0442, \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u043a\u043e\u0440\u043d\u0438 \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 , \u0442\u043e \u043e\u0434\u0438\u043d \u0438\u0437 \u043d\u0438\u0445 \u0442\u043e\u0447\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0435\u0434\u0438\u043d\u0438\u0446\u044b, \u0430 \u043a\u0440\u0430\u0442\u043d\u0430\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\xi\" alt=\"\\xi\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/3bb\/d49\/732\/3bbd49732bae588397379eef03d8cf2d.svg\" width=\"9\" height=\"20\"\/>\u0442\u043e\u0447\u043d\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c \u0431\u044b\u0442\u044c \u043d\u0435 \u043c\u043e\u0436\u0435\u0442. \u0421 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u0435\u0441\u043b\u0438 \u0438\u043c\u0435\u0435\u043c \u0434\u0432\u0430 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0441\u043d\u043e \u0441\u043e\u043f\u0440\u044f\u0436\u0451\u043d\u043d\u044b\u0445 \u043a\u043e\u0440\u043d\u044f, \u0442\u043e \u043e\u043d\u0438 \u0431\u0443\u0434\u0443\u0442 \u043b\u0435\u0436\u0430\u0442\u044c \u0440\u043e\u0432\u043d\u043e \u043d\u0430 \u0435\u0434\u0438\u043d\u0438\u0447\u043d\u043e\u0439 \u043e\u043a\u0440\u0443\u0436\u043d\u043e\u0441\u0442\u0438. \u041d\u0430\u0448 \u0441\u043b\u0443\u0447\u0430\u0439! \u042d\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0442\u043e\u0433\u0434\u0430 \u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u0434\u0438\u0441\u043a\u0440\u0438\u043c\u0438\u043d\u0430\u043d\u0442 \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u0435\u043d, \u0442\u043e \u0435\u0441\u0442\u044c<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"h_t^4  \\mathcal{F}[f_C](\\xi)^2 -4 &lt;0.\" alt=\"h_t^4  \\mathcal{F}[f_C](\\xi)^2 -4 &lt;0.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/837\/54b\/011\/83754b011d010bab450fe7873917400a.svg\" width=\"175\" height=\"26\"\/><\/p>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u0434\u0435\u043b\u043e \u0442\u0435\u0445\u043d\u0438\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u0441 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"-2 + \\frac{c^2 h_t^2}{h_x^2} (1- \\cos(h_x \\xi)) &lt; 0\" alt=\"-2 + \\frac{c^2 h_t^2}{h_x^2} (1- \\cos(h_x \\xi)) &lt; 0\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e4b\/0ea\/865\/e4b0ea865ffce696ad017b962de7e564.svg\" width=\"246\" height=\"52\"\/><\/p>\n<p>\u0438 \u0434\u0430\u043b\u0435\u0435 \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043d\u0435\u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\xi\" alt=\"\\xi\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b59\/15b\/b8a\/b5915bb8a925515bb1c428ce638114ef.svg\" width=\"9\" height=\"20\"\/> \u043c\u043e\u0436\u0435\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\frac{ch_t}{h_x} &lt;1.\" alt=\"\\frac{ch_t}{h_x} &lt;1.\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/501\/d79\/0ab\/501d790ab14262d13e18232cf354186d.svg\" width=\"74\" height=\"46\"\/><\/p>\n<p>\u0427\u0438\u0441\u043b\u043e \u0441\u043b\u0435\u0432\u0430 \u0438\u043d\u043e\u0433\u0434\u0430 \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u0447\u0438\u0441\u043b\u043e\u043c \u041a\u0443\u0440\u0430\u043d\u0442\u0430; \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442\u0438. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0435\u0441\u043b\u0438 \u043c\u044b \u0437\u0430\u0434\u0430\u0451\u043c \u0432 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0435 \u0442\u0430\u043a\u0438\u0435 \u0448\u0430\u0433\u0438 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"h_t, h_x\" alt=\"h_t, h_x\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ee1\/fa4\/f46\/ee1fa4f4636343708e8020f39ac39344.svg\" width=\"47\" height=\"20\"\/>, \u0447\u0442\u043e<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\frac{ch_t}{h_x} &lt; 1,\" alt=\"\\frac{ch_t}{h_x} &lt; 1,\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/df3\/2bb\/97a\/df32bb97ac34e409deef83ab269a3f88.svg\" width=\"74\" height=\"46\"\/><\/p>\n<p>\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u0431\u0443\u0434\u0435\u0442 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0439 \u0438 \u043c\u044b \u043d\u0435 \u0443\u0432\u0438\u0434\u0438\u043c \u0430\u043d\u043e\u043c\u0430\u043b\u0438\u0439. \u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442, \u0435\u0441\u043b\u0438 \u0434\u043e\u0441\u0442\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e? \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0441\u0445\u0435\u043c\u0430 \u0442\u043e\u0436\u0435 \u0431\u0443\u0434\u0435\u0442 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u0430, \u0442\u0430\u043a \u043a\u0430\u043a \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u0438\u0432<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\frac{ch_t}{h_x}=1\" alt=\"\\frac{ch_t}{h_x}=1\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9c0\/2d7\/b7e\/9c02d7b7eab58e33376ff03e50ca0ff6.svg\" width=\"69\" height=\"46\"\/><\/p>\n<p>\u0432 \u0434\u0438\u0441\u043a\u0440\u0438\u043c\u0438\u043d\u0430\u043d\u0442 \u0438 \u043f\u043e\u0441\u0447\u0438\u0442\u0430\u0432 \u043a\u043e\u0440\u043d\u0438, \u043c\u044b \u0443\u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043e\u043d\u0438 \u043f\u043e \u043c\u043e\u0434\u0443\u043b\u044e \u043c\u0435\u043d\u044c\u0448\u0435 \u0435\u0434\u0438\u043d\u0438\u0446\u044b.<\/p>\n<p>\u041d\u0430\u043a\u043e\u043d\u0435\u0446, \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438 \u044d\u0442\u043e \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u043c? \u0412\u0434\u0440\u0443\u0433 \u0435\u0441\u0442\u044c \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0435 \u0441\u0445\u0435\u043c\u044b, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u044d\u0442\u043e\u0442 \u043a\u0440\u0438\u0442\u0435\u0440\u0438\u0439 \u043d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f&#8230; \u041d\u0435\u0442, \u0442\u0430\u043a\u043e\u0433\u043e \u043d\u0435 \u0431\u044b\u0432\u0430\u0435\u0442. \u0415\u0441\u043b\u0438 \u043c\u044b \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441 \u0434\u0438\u0441\u043a\u0440\u0438\u043c\u0438\u043d\u0430\u043d\u0442\u043e\u043c \u043f\u0440\u0438 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0435 1 , \u0442\u043e \u043c\u044b \u0437\u0430\u043c\u0435\u0442\u0438\u043c, \u0447\u0442\u043e \u0443 \u043d\u0430\u0441 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u0442\u043e\u0447\u043a\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\xi\" alt=\"\\xi\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f27\/3b2\/894\/f273b2894a54e05bffbba0d533334007.svg\" width=\"9\" height=\"20\"\/> , \u0433\u0434\u0435 \u0434\u0438\u0441\u043a\u0440\u0438\u043c\u0438\u043d\u0430\u043d\u0442 \u0440\u0430\u0432\u0435\u043d \u043d\u0443\u043b\u044e \u0438 \u0442\u0430\u043c \u043a\u0440\u0430\u0442\u043d\u044b\u0439 \u043a\u043e\u0440\u0435\u043d\u044c, \u043f\u043e \u043c\u043e\u0434\u0443\u043b\u044e \u043c\u0435\u043d\u044c\u0448\u0435 1, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f. \u041e\u0434\u043d\u0430\u043a\u043e \u043f\u0440\u0438 \u0447\u0438\u0441\u043b\u0435 \u041a\u0443\u0440\u0430\u043d\u0442\u0430 \u0431\u043e\u043b\u044c\u0448\u0435 1 \u0434\u043b\u044f \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\xi\" alt=\"\\xi\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5e6\/ded\/d99\/5e6dedd998212f31e80459860304e992.svg\" width=\"9\" height=\"20\"\/> \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442 \u043d\u0435\u043a\u0440\u0430\u0442\u043d\u044b\u0435 \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043a\u043e\u0440\u043d\u0438 \u0438 \u044d\u0442\u043e \u0443\u0436\u0435 \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e \u043f\u043b\u043e\u0445\u043e\u0439 \u0441\u043b\u0443\u0447\u0430\u0439. \u0412 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u0445 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0424\u0443\u0440\u044c\u0435 \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043e\u0437\u043d\u0430\u0447\u0430\u0442\u044c, \u0447\u0442\u043e \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u0432 \u043e\u0448\u0438\u0431\u043a\u0435 \u0431\u0443\u0434\u0443\u0442 \u044d\u043a\u0441\u043f\u043e\u043d\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0443\u0441\u0438\u043b\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0441 \u043a\u0430\u0436\u0434\u043e\u0439 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0435\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430.<\/p>\n<p>\u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0441\u0445\u0435\u043c\u0443 \u0441 \u0447\u0438\u0441\u043b\u043e\u043c \u041a\u0443\u0440\u0430\u043d\u0442\u0430 \u0440\u0430\u0432\u043d\u044b\u043c 1 \u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0431\u043e\u043b\u044c\u0448\u0435. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043d\u0430\u043b\u0438\u0446\u043e.<\/p>\n<details class=\"spoiler\">\n<summary>\u0410 \u0447\u0442\u043e \u043d\u0430\u0441\u0447\u0451\u0442 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0432 \u0440\u0430\u0437\u043c\u0435\u0440\u043d\u043e\u0441\u0442\u0438 d>1?<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0424\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u0432\u0441\u0451 \u0442\u0430\u043a \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u043d\u043e \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u0443\u044e \u043a\u0440\u0430\u0435\u0432\u0443\u044e \u0437\u0430\u0434\u0430\u0447\u0443<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\partial_t^2 u = c^2 \\Delta u ~~\\forall x \\in \\Omega~ \\forall t \\in [0,T],\\\\ u(t,x)=0  ~~\\forall x \\in \\partial \\Omega ~\\forall t \\in (0,T]~,\\\\ u(0,x)=u_0(x),\" alt=\"\\partial_t^2 u = c^2 \\Delta u ~~\\forall x \\in \\Omega~ \\forall t \\in [0,T],\\\\ u(t,x)=0  ~~\\forall x \\in \\partial \\Omega ~\\forall t \\in (0,T]~,\\\\ u(0,x)=u_0(x),\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/6ab\/872\/34c\/6ab87234c40f785bb274a23fbb42ef63.svg\" width=\"615\" height=\"81\"\/><\/p>\n<p>\u0433\u0434\u0435 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\Delta:= \\sum_{i=1}^d \\partial_{x^i}^2\" alt=\"\\Delta:= \\sum_{i=1}^d \\partial_{x^i}^2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d4f\/2d3\/bea\/d4f2d3bea1e9624a3e8d7a37839dc78c.svg\" width=\"103\" height=\"60\"\/>&#8212; \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u041b\u0430\u043f\u043b\u0430\u0441\u0430, \u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\Omega, \\partial \\Omega\" alt=\"\\Omega, \\partial \\Omega\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/07f\/709\/548\/07f709548862e2b5dca5c5c9f0bf1c6f.svg\" width=\"47\" height=\"20\"\/>&#8212; \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0449\u0438\u0439 \u043d\u0430\u0441 \u0440\u0435\u0433\u0438\u043e\u043d \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0438 \u0435\u0433\u043e \u0433\u0440\u0430\u043d\u0438\u0446\u0430 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u0443\u0431 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"[0,1]^d\" alt=\"[0,1]^d\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/4e2\/b65\/4be\/4e2b654be02a6dc4b2abee6e9b810d99.svg\" width=\"48\" height=\"25\"\/>\u0438 \u0435\u0433\u043e \u0433\u0440\u0430\u043d\u0438\u0446\u0430). \u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u0430\u044f \u043d\u0430\u043c\u0438 \u0441\u0445\u0435\u043c\u0430 \u042d\u0439\u043b\u0435\u0440\u0430 \u0431\u0443\u0434\u0435\u0442 \u0441\u0442\u0440\u043e\u0438\u0442\u044c\u0441\u044f \u0442\u043e\u0447\u043d\u043e \u0442\u0430\u043a \u0436\u0435, \u043d\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e, \u0447\u0442\u043e \u0438 \u0430\u043d\u0430\u043b\u0438\u0437 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442\u0438 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0441\u0442\u0438 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e, \u0437\u0430\u043c\u0435\u043d\u0438\u0432 \u043e\u0434\u043d\u043e\u043c\u0435\u0440\u043d\u0443\u044e \u0441\u0432\u0451\u0440\u0442\u043a\u0443 \u043d\u0430 d-\u043c\u0435\u0440\u043d\u0443\u044e, \u0430 \u043e\u0434\u043d\u043e\u043c\u0435\u0440\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0424\u0443\u0440\u044c\u0435 \u043d\u0430 d-\u043c\u0435\u0440\u043d\u043e\u0435. \u0412 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0439 \u0438\u0442\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0445\u0435\u043c\u0435 \u043d\u0430 \u0441\u043b\u043e\u0435 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"i-1\" alt=\"i-1\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/6a2\/457\/781\/6a2457781b9518336133bed3c12334c9.svg\" width=\"40\" height=\"17\"\/>\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u044c\u043d\u0430\u044f \u0442\u043e\u0447\u043a\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\tilde{u}(t_i,x^1_{j_1},..,x^d_{j_d})\" alt=\"\\tilde{u}(t_i,x^1_{j_1},..,x^d_{j_d})\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/600\/a3a\/963\/600a3a96340a1deed3ca43ca4e2ccec9.svg\" width=\"132\" height=\"29\"\/>\u0431\u0443\u0434\u0435\u0442 \u0438\u043c\u0435\u0442\u044c \u0432\u0435\u0441<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"2 - 2c^2h_t^2\\sum_{i=1}^d\\frac{1}{h_{x^j}^2},\" alt=\"2 - 2c^2h_t^2\\sum_{i=1}^d\\frac{1}{h_{x^j}^2},\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/284\/ee8\/618\/284ee86187f2434a8dfb7d3107c6e325.svg\" width=\"153\" height=\"60\"\/><\/p>\n<p>\u0430 \u0442\u043e\u0447\u043a\u0438, \u043e\u0442\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u043f\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0443 \u043d\u0430 1 \u043a\u043b\u0435\u0442\u043a\u0443, \u043f\u043e\u043b\u0443\u0447\u0430\u0442 \u0432\u0435\u0441 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"c^2\/h_{x^j}^2\" alt=\"c^2\/h_{x^j}^2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/342\/08e\/b26\/34208eb2627a249cfffb746c5f51c557.svg\" width=\"53\" height=\"28\"\/>. \u0418 \u0434\u0430\u0436\u0435 \u0447\u0442\u043e-\u0442\u043e \u0442\u0438\u043f\u0430 \u0447\u0438\u0441\u043b\u0430 \u041a\u0443\u0440\u0430\u043d\u0442\u0430 \u043c\u044b \u0442\u043e\u0436\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043c, \u0432\u044b\u0432\u0435\u0434\u044f \u043a\u0440\u0438\u0442\u0435\u0440\u0438\u0439 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442\u0438, \u0442\u0430\u043a \u0436\u0435 \u0437\u0430\u043f\u0438\u0441\u0430\u0432 \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u0434\u043b\u044f \u0434\u0438\u0441\u043a\u0440\u0438\u043c\u0438\u043d\u0430\u043d\u0442\u0430 (\u043d\u0435 \u0431\u0443\u0434\u0443 \u0443\u0442\u043e\u043c\u043b\u044f\u0442\u044c \u0444\u043e\u0440\u043c\u0443\u043b\u0430\u043c\u0438, \u0434\u0430 \u0438 \u043c\u043d\u0435 \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0448\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c):<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"\\forall i \\in \\lbrace 1,..,d \\rbrace ~~ \\frac{dc^2h_t^2}{h_{x^i}^2} &lt; 1,\" alt=\"\\forall i \\in \\lbrace 1,..,d \\rbrace ~~ \\frac{dc^2h_t^2}{h_{x^i}^2} &lt; 1,\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b55\/b05\/c95\/b55b05c95323670d9c16df9cb208ac8d.svg\" width=\"219\" height=\"56\"\/><\/p>\n<p>\u0447\u0442\u043e \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 d=1 \u0434\u0430\u0451\u0442 \u0442\u043e, \u0447\u0442\u043e \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0440\u0430\u043d\u0435\u0435.<\/p>\n<\/div>\n<\/details>\n<h2>\u0410 \u0447\u0442\u043e \u0434\u0430\u043b\u044c\u0448\u0435?<\/h2>\n<p>\u0415\u0441\u043b\u0438 \u043f\u043e\u0439\u0442\u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0434\u0430\u043b\u044c\u0448\u0435 \u0438 \u043f\u043e\u0434\u0443\u043c\u0430\u0442\u044c \u043f\u0440\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e \u0440\u0430\u0437\u043d\u043e\u0441\u0442\u043d\u043e\u0439 \u0441\u0445\u0435\u043c\u044b, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0442\u0430\u043a\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b \u043f\u0440\u0438 \u043b\u044e\u0431\u043e\u043c \u0432\u044b\u0431\u043e\u0440\u0435 \u0448\u0430\u0433\u0430. \u0412\u043c\u0435\u0441\u0442\u0435 \u0441 \u0442\u0435\u043e\u0440\u0435\u043c\u043e\u0439 \u041b\u0430\u043a\u0441\u0430 \u044d\u0442\u043e \u0434\u0430\u043b\u043e \u0431\u044b \u043d\u0430\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043d\u0435 \u0431\u044b\u0442\u044c \u0442\u0430\u043a\u0438\u043c\u0438 \u043f\u0430\u0440\u0430\u043d\u043e\u0438\u0434\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0432 \u043f\u043b\u0430\u043d\u0435 \u0432\u044b\u0431\u043e\u0440\u0435 \u0448\u0430\u0433\u0430 \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438. \u0421 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u0430\u044f \u044f\u0432\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u042d\u0439\u043b\u0435\u0440\u0430 &#8212; \u044d\u0442\u043e \u0432\u0441\u0435\u0433\u043e \u043b\u0438\u0448\u044c \u0441\u0445\u0435\u043c\u0430 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0430 \u0438 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0443\u0432\u0438\u0434\u0435\u0442\u044c (\u0431\u043e\u043b\u0435\u0435 \u043a\u0440\u0430\u0441\u0438\u0432\u0443\u044e \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443, \u0441\u043c. \u043d\u0438\u0436\u0435) \u043c\u043d\u043e\u0433\u043e \u0434\u0435\u0442\u0430\u043b\u0435\u0439, \u0448\u0430\u0433 \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u043c, \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u044c \u043a \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0437\u0430\u0442\u0440\u0430\u0442\u0430\u043c. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0440\u0430\u0437 \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u043c \u0447\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c \u043f\u043e\u043a\u0440\u0443\u0447\u0435. \u0414\u0430 \u0438 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0432 \u0440\u0430\u0437\u043c\u0435\u0440\u043d\u043e\u0441\u0442\u0438 d>1 \u0442\u043e\u0436\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u0440\u0435\u0448\u0438\u0442\u044c.<\/p>\n<div class=\"tm-iframe_temp\" data-src=\"https:\/\/embedd.srv.habr.com\/iframe\/640a03c661f0ac6fb2706463\" data-style=\"\" id=\"640a03c661f0ac6fb2706463\" width=\"\"><\/div>\n<p>\u0414\u0443\u043c\u0430\u0435\u0442\u0435, \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e? \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u043d\u0430 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u0438\u0434\u0435\u043e:<\/p>\n<div class=\"tm-iframe_temp\" data-src=\"https:\/\/embedd.srv.habr.com\/iframe\/640a040d61f0ac6fb2706485\" data-style=\"\" id=\"640a040d61f0ac6fb2706485\" width=\"\"><\/div>\n<\/p>\n<\/div>\n<\/div>\n<\/div>\n<p> <!----> <!----><\/div>\n<p> <!----> <!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/722518\/\"> https:\/\/habr.com\/ru\/post\/722518\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\">\n<div><figcaption><a href=\"https:\/\/www.osirisguitar.com\/wp-content\/uploads\/2013\/04\/3.-a-string-fret-close-750x509.jpg\" rel=\"noopener noreferrer nofollow\">https:\/\/www.osirisguitar.com\/wp-content\/uploads\/2013\/04\/3.-a-string-fret-close-750&#215;509.jpg<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u0414\u043b\u044f \u043c\u0435\u043d\u044f \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0432 \u0447\u0430\u0441\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0445 &#8212; \u044d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043a\u0440\u0430\u0441\u0438\u0432\u0430\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f \u0438\u0437 \u0441\u0442\u0443\u0434\u0435\u043d\u0447\u0435\u0441\u0442\u0432\u0430.  \u041f\u043e\u0447\u0435\u043c\u0443? \u042d\u0442\u043e \u043d\u0435\u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u043a\u0440\u0430\u0441\u0438\u0432\u043e. \u041d\u043e \u0447\u0442\u043e \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0441\u0442\u0430\u043b\u043e \u0434\u043b\u044f \u043c\u0435\u043d\u044f \u0437\u0430\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u044e\u0449\u0438\u043c, \u0442\u0430\u043a \u044d\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u0434\u0438\u0444\u0443\u0440\u044b \u0432 \u0448\u0438\u0440\u043e\u043a\u043e\u043c \u0441\u043c\u044b\u0441\u043b\u0435 \u043f\u0440\u0438\u043a\u043b\u0430\u0434\u043d\u043e\u0439 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0438 &#8212; \u044d\u0442\u043e \u0442\u043e\u0442 \u0441\u0430\u043c\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u043e\u0433\u0434\u0430 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0430 \u0438 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u0435, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c \u0432\u043f\u043e\u043b\u043d\u0435 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432. \u041a\u0430\u043a \u0432\u044b \u0443\u0436\u0435, \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435, \u0434\u043e\u0433\u0430\u0434\u0430\u043b\u0438\u0441\u044c, \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0451\u0442 \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u0432\u043e\u043e\u0431\u0449\u0435 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0448\u0430\u0442\u044c \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0432 \u0447\u0430\u0441\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0445 \u043d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0435. \u041c\u044b \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0432\u043e\u043b\u043d\u043e\u0432\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0438 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0443\u0436\u0435 \u0441\u0442\u0430\u0432\u0448\u0438\u0445 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u043c\u0438 python, scipy \u0438 numpy. \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u043f\u043e\u043c\u043d\u0438\u0442\u0435 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0443, \u043d\u043e \u043f\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u0438 \u0431\u043e\u044f\u043b\u0438\u0441\u044c \u0434\u0438\u0444\u0443\u0440\u043e\u0432 \u0438\u043b\u0438 \u043e\u043d\u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u0430\u043a-\u0442\u043e \u043e\u0431\u043e\u0448\u043b\u0438 \u0432\u0430\u0441 \u0441\u0442\u043e\u0440\u043e\u043d\u043e\u0439, \u0442\u043e \u0434\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c.<\/p>\n<h2>\u0412\u043e\u043b\u043d\u043e\u0432\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435<\/h2>\n<p>\u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u0441\u0442\u043e, \u0442\u043e \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 &#8212; \u044d\u0442\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0445\u043e\u0434\u044f\u0442 \u0442\u0430\u043a\u0436\u0435 \u0435\u0451 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0435. \u041c\u043d\u043e\u0433\u043e \u0443\u0436\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043f\u0440\u043e <em>\u043e\u0431\u044b\u043a\u043d\u043e\u0432\u0435\u043d\u043d\u044b\u0435<\/em> \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f, \u0433\u0434\u0435 \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043e\u0434\u043d\u043e\u0433\u043e \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u043c. <a href=\"https:\/\/habr.com\/ru\/post\/405587\/\" rel=\"noopener noreferrer nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a> \u0438 <a href=\"https:\/\/habr.com\/ru\/post\/349426\/\" rel=\"noopener noreferrer nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a>). \u041a\u043e\u0433\u0434\u0430 \u043c\u044b \u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e\u0431 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f\u0445 \u0432 <em>\u0447\u0430\u0441\u0442\u043d\u044b\u0445<\/em> \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0445, \u0442\u043e \u0432 \u043d\u0438\u0445, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0432\u0445\u043e\u0434\u044f\u0442 <em>\u0447\u0430\u0441\u0442\u043d\u044b\u0435<\/em> \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0435, \u0442\u0430\u043a\u0436\u0435 \u043d\u0435 \u043e\u0431\u043e\u0439\u0434\u0451\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c\u0438 \u0425\u0430\u0431\u0440\u0430 (\u0437\u0440\u0435\u043b\u0438\u0449\u043d\u043e <a href=\"https:\/\/habr.com\/ru\/post\/470742\/\" rel=\"noopener noreferrer nofollow\">\u0442\u0443\u0442<\/a> \u0438 <a href=\"https:\/\/habr.com\/ru\/post\/321734\/\" rel=\"noopener noreferrer nofollow\">\u0442\u0443\u0442<\/a>). \u0412\u043f\u043e\u043b\u043d\u0435 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0447\u0442\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0442\u0430\u043a\u0438\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442, \u0430 \u0435\u0441\u043b\u0438 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442, \u0442\u043e \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435, \u0430 \u0434\u043b\u044f \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u044b \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f.<\/p>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c \u0432\u043e\u043b\u043d\u043e\u0432\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u0447\u0435\u043c\u0443 \u0438\u043c\u0435\u043d\u043d\u043e \u0442\u0430\u043a\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435?<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043c, \u0447\u0442\u043e \u043c\u044b \u0438\u043c\u0435\u0435\u043c \u043d\u0435 \u0441\u0442\u0440\u0443\u043d\u0443, \u0430 \u043d\u0430\u0431\u043e\u0440 \u0438\u0437 \u0433\u0440\u0443\u0437\u0438\u043a\u043e\u0432, \u0441\u043e\u0435\u0434\u0438\u043d\u0451\u043d\u043d\u044b\u0445 \u043f\u0440\u0443\u0436\u0438\u043d\u0430\u043c\u0438 \u0432 \u043b\u0438\u043d\u0438\u044e; \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u0430 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0433\u0440\u0443\u0437\u0438\u043a\u0430 \u0437\u0430\u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0438 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0441\u0435\u0434\u044f\u043c\u0438 \u0440\u0430\u0432\u043d\u043e . \u041f\u0440\u0435\u043d\u0435\u0431\u0440\u0435\u0433\u0430\u044f \u0441\u0438\u043b\u043e\u0439 \u0442\u044f\u0436\u0435\u0441\u0442\u0438 (\u0445\u043e\u0442\u044f \u0435\u0451 \u043f\u0440\u0438 \u0436\u0435\u043b\u0430\u043d\u0438\u0438 \u043b\u0435\u0433\u043a\u043e \u0432\u043d\u0435\u0441\u0442\u0438 \u043f\u043e\u0437\u0436\u0435 \u0432 \u0432\u0438\u0434\u0435 \u043f\u0440\u0430\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438), \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432\u0442\u043e\u0440\u043e\u0439 \u0437\u0430\u043a\u043e\u043d \u041d\u044c\u044e\u0442\u043e\u043d\u0430 \u0434\u043b\u044f -\u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b \u0433\u0440\u0443\u0437\u0438\u043a\u0430 , \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u044b \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0438\u043c :<\/p>\n<p>\u0433\u0434\u0435 \u0432 \u043f\u0440\u0430\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b \u0437\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0441\u0438\u043b\u0443 \u0443\u043f\u0440\u0443\u0433\u043e\u0441\u0442\u0438 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0437\u0430\u043a\u043e\u043d\u043e\u043c \u0413\u0443\u043a\u0430. \u0422\u0435\u043f\u0435\u0440\u044c \u0437\u0430\u043c\u0435\u0442\u0438\u043c, \u0447\u0442\u043e \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u0436\u0451\u0441\u0442\u043a\u043e\u0441\u0442\u0438 \u0432\u0441\u0435\u0439 \u043b\u0438\u043d\u0438\u0438 \u0433\u0440\u0443\u0437\u0438\u043a\u043e\u0432 (\u044d\u0442\u043e \u0436\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043f\u0440\u0443\u0436\u0438\u043d) \u0440\u0430\u0432\u0435\u043d , \u0430 \u043c\u0430\u0441\u0441\u0430 \u0433\u0440\u0443\u0437\u0438\u043a\u0430 \u0440\u0430\u0432\u043d\u0430 , \u0437\u0430 \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0430 \u043c\u0430\u0441\u0441\u0430 \u0432\u0441\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u041f\u043e\u0434\u0441\u0442\u0430\u0432\u0438\u043c \u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u043f\u0438\u0448\u0435\u043c:<\/p>\n<p>\u0427\u0442\u043e \u0435\u0449\u0451 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e? \u0414\u043b\u0438\u043d\u0430 \u043c\u0435\u0436\u0434\u0443 \u0437\u0430\u043a\u0440\u0435\u043f\u043b\u0451\u043d\u043d\u044b\u043c\u0438 \u043a\u043e\u043d\u0446\u0430\u043c\u0438, \u0442\u0430\u043a \u0447\u0442\u043e \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0441\u0435\u0434\u044f\u043c\u0438 \u0440\u0430\u0432\u043d\u043e . \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0442\u0435\u043f\u0435\u0440\u044c \u0443\u043c\u043d\u043e\u0436\u0438\u043c \u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u043c \u043f\u0440\u0430\u0432\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u043d\u0430 \u0438&#8230;<\/p>\n<p>\u0417\u043d\u0430\u043a\u043e\u043c\u043e\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441\u043f\u0440\u0430\u0432\u0430? \u0414\u0430, \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u0435\u043c \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u043f\u0440\u0435\u0434\u0435\u043b\u0443 \u043f\u0440\u0438  \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0443\u0436\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u0435<\/p>\n<\/p>\n<\/div>\n<\/details>\n<p>\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u044f\u0442\u0441\u044f \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f<\/p>\n<p>\u0438 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043a\u0440\u0430\u0435\u0432\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u0440\u0430\u0435\u0432\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u0414\u0438\u0440\u0438\u0445\u043b\u0435 (\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043a\u0430\u043a \u0431\u044b \u0437\u0430\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0430 \u0432 \u043d\u0443\u043b\u0435 \u043d\u0430 \u043a\u0440\u0430\u044f\u0445)<\/p>\n<p>\u0420\u0435\u0448\u0435\u043d\u0438\u0435\u043c \u0442\u0430\u043a\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0431\u0443\u0434\u0435\u0442 \u0434\u0438\u043d\u0430\u043c\u0438\u043a\u0430 \u043f\u0440\u043e\u0444\u0438\u043b\u044f \u043d\u0430\u0442\u044f\u043d\u0443\u0442\u043e\u0439 c\u0442\u0440\u0443\u043d\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u043b \u043a\u0430\u043a , \u043d\u043e \u043f\u043e\u0434 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u043c \u0441\u0438\u043b \u0443\u043f\u0440\u0443\u0433\u043e\u0441\u0442\u0438 \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0438 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442  \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043a\u0430\u043a .<\/p>\n<h2>\u041a\u043e\u043d\u0435\u0447\u043d\u043e-\u0440\u0430\u0437\u043d\u043e\u0441\u0442\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430<\/h2>\n<p>\u0412\u043e\u043e\u0431\u0449\u0435, \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0434\u0430\u0451\u0442\u0441\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <a href=\"https:\/\/en.wikipedia.org\/wiki\/D%27Alembert%27s_formula\" rel=\"noopener noreferrer nofollow\">\u0444\u043e\u0440\u043c\u0443\u043b\u043e\u0439 \u0414&#8217;\u0410\u043b\u0430\u043c\u0431\u0435\u0440\u0430<\/a>, \u043d\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u043c, \u0447\u0442\u043e \u043c\u044b \u043d\u0435 \u0438\u0437\u0443\u0447\u0430\u043b\u0438 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0432 \u0447\u0430\u0441\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0445 \u0438 \u0441\u0435\u0439\u0447\u0430\u0441 \u044d\u0442\u043e\u0433\u043e \u043d\u0435 \u0437\u043d\u0430\u0435\u043c. \u041a\u0430\u043a\u043e\u0439 \u0440\u0430\u0437\u0443\u043c\u043d\u044b\u0439 \u0440\u0435\u0446\u0435\u043f\u0442 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0439\u0442\u0438 \u0432 \u0433\u043e\u043b\u043e\u0432\u0443? \u0412\u0440\u043e\u0434\u0435 \u043c\u044b \u043f\u043e\u043c\u043d\u0438\u043c \u043a\u0430\u043a \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u0443\u044e \u0441\u043e \u0432\u0440\u0435\u043c\u0451\u043d \u043c\u0430\u0442\u0430\u043d\u0430-1&#8230;<\/p>\n<p>\u041f\u043e\u0447\u0435\u043c\u0443 \u0431\u044b \u0438 \u043d\u0435\u0442, \u043d\u043e \u043f\u043e\u0434\u043e\u0439\u0434\u0451\u043c \u043a \u0432\u043e\u043f\u0440\u043e\u0441\u0443 \u0441\u0442\u0440\u043e\u0433\u043e. \u041f\u043e \u0441\u0443\u0442\u0438 \u043c\u044b \u043f\u043e\u0439\u0434\u0451\u043c \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u0443\u044e \u0441\u0442\u043e\u0440\u043e\u043d\u0443, \u043f\u044b\u0442\u0430\u044f\u0441\u044c \u0432\u043e\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c \u0441\u0442\u0440\u0443\u043d\u0443 \u043d\u0430\u0431\u043e\u0440\u043e\u043c \u0433\u0440\u0443\u0437\u0438\u043a\u043e\u0432, \u0441\u043e\u0435\u0434\u0438\u043d\u0451\u043d\u043d\u044b\u0445 \u043f\u0440\u0443\u0436\u0438\u043d\u043e\u0439. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0434\u0435\u043b\u0438\u043c \u0441\u0442\u0440\u0443\u043d\u0443 \u043d\u0430 \u0440\u0430\u0432\u043d\u044b\u0445 \u0441\u0435\u0433\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043c \u0435\u0451 \u043a\u0430\u043a \u043d\u0430\u0431\u043e\u0440 \u0442\u043e\u0447\u0435\u043a.\u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043f\u043e\u0441\u0442\u0443\u043f\u0438\u043c \u0441\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c, \u043f\u043e\u0434\u0435\u043b\u0438\u0432 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0449\u0438\u0439 \u043d\u0430\u0441 \u043e\u0442\u0440\u0435\u0437\u043e\u043a \u043d\u0430 \u0440\u0430\u0432\u043d\u044b\u0445 \u043a\u0443\u0441\u043a\u043e\u0432; \u0438\u0442\u043e\u0433\u043e \u0438\u043c\u0435\u0435\u043c \u0442\u043e\u0447\u0435\u043a \u043f\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0443, \u0442\u043e\u0447\u0435\u043a \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0432\u0441\u0435\u0433\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0442\u043e\u0447\u0435\u043a, \u043e\u0431\u0440\u0430\u0437\u0443\u044e\u0449\u0438\u0445 \u0441\u0435\u0442\u043a\u0443 . \u041d\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u0442\u044c \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0442\u0430\u043a\u0443\u044e <em>\u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u0443\u044e<\/em> (\u043a\u0430\u043a \u0435\u0449\u0451 \u0433\u043e\u0432\u043e\u0440\u044f\u0442, <em>\u0441\u0435\u0442\u043e\u0447\u043d\u0443\u044e<\/em>) \u0444\u0443\u043d\u043a\u0446\u0438\u044e , \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u044b \u0445\u043e\u0440\u043e\u0448\u043e \u043f\u0440\u0438\u0431\u043b\u0438\u0436\u0430\u043b\u0430 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0443\u044e . \u041a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0435\u0435, \u043d\u0430\u043c \u0431\u044b \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c, \u0447\u0442\u043e\u0431\u044b<\/p>\n<p>\u0420\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0443\u0437\u043b\u0430\u043c\u0438 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u0441\u0435\u0442\u043a\u0438 \u043f\u043e \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0438\u043c , \u0430 .\u0422\u0430\u043a, \u043f\u0440\u0438 \u0431\u043e\u043b\u0435\u0435 \u0433\u0443\u0441\u0442\u043e\u0439 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u0431\u043b\u0438\u0436\u0451\u043d\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0431\u043b\u0438\u0436\u0435 \u043a \u0438\u0441\u0442\u0438\u043d\u043d\u043e\u043c\u0443.<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0440\u0430\u0437\u0431\u0435\u0440\u0451\u043c\u0441\u044f \u0441 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u043c \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435\u043c<\/p>\n<p>\u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u043d\u0443\u043c\u0435\u0440\u0443\u0435\u043c \u0442\u043e\u0447\u043a\u0438 \u043f\u043e \u043a\u0430\u0436\u0434\u043e\u0439 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u0435 \u043e\u0442 \u043d\u0443\u043b\u044f, \u0442\u043e \u0443 \u043d\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u0441\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u044b \u0438 . \u0417\u0430\u043c\u0435\u043d\u0438\u043c \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u043e\u0445\u043e\u0436\u0435\u0435 \u0434\u043b\u044f \u043d\u0430\u0448\u0435\u0439 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043e\u0446\u0435\u043d\u0438\u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u0443\u044e \u0432 \u0442\u043e\u0447\u043a\u0435 . \u0412\u0441\u043f\u043e\u043c\u043d\u0438\u043c, \u0447\u0442\u043e \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u0438 \u043a\u0440\u0430\u0435\u0432\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u043e\u0432\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043c\u044b \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043d\u0435 \u0432\u043e \u0432\u0441\u0435\u0445 \u0442\u043e\u0447\u043a\u0430\u0445:<\/p>\n<p>\u041c\u044b \u0437\u043d\u0430\u0435\u043c \u0442.\u043a. \u0432 \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u0435, \u0442\u0430\u043a\u0438\u043c \u0436\u0435 \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043d\u0430\u043c \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b \u0438 \u0438\u0437 \u043a\u0440\u0430\u0435\u0432\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u0414\u0438\u0440\u0438\u0445\u043b\u0435. \u0415\u0441\u0442\u044c, \u043f\u0440\u0430\u0432\u0434\u0430, \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430: \u043d\u0430\u043c \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e , &#8212; \u043d\u043e \u0435\u0451 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0440\u0435\u0448\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0432\u0442\u043e\u0440\u043e\u0435 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u0435. \u041f\u043e\u043c\u043d\u0438\u0442\u0435, \u0431\u044b\u043b\u0430 \u043f\u0435\u0440\u0432\u0430\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u0430\u044f \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 ? \u0412\u0441\u043f\u043e\u043c\u043d\u0438\u043c \u0441\u0442\u0430\u0440\u044b\u0439 \u0434\u043e\u0431\u0440\u044b\u0439 \u0440\u044f\u0434 \u0422\u044d\u0439\u043b\u043e\u0440\u0430 \u0438 \u0430\u043f\u043f\u0440\u043e\u043a\u0441\u0438\u043c\u0438\u0440\u0443\u0435\u043c :<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u044b\u0440\u0430\u0437\u0438\u0442\u044c \u0438\u0437 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0432\u044b\u0448\u0435 \u0438 voil\u00e0, \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c <em>\u044f\u0432\u043d\u0443\u044e \u0441\u0445\u0435\u043c\u0443<\/em> (\u0432 \u0442\u043e\u043c \u0441\u043c\u044b\u0441\u043b\u0435, \u0447\u0442\u043e \u0435\u0441\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u0430\u044f \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0444\u043e\u0440\u043c\u0443\u043b\u0430 \u043f\u0440\u0438 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u043c ). \u041d\u0430\u0448 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u043c \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0438 \u0434\u043e \u0441\u0430\u043c\u043e\u0433\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0441\u043b\u043e\u044f \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 .<\/p>\n<p>\u041f\u043e\u0434\u044b\u0442\u043e\u0436\u0438\u043c, \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0438\u0432 \u0432\u0435\u043a\u0442\u043e\u0440 \u0438 \u0432\u0432\u0435\u0434\u044f \u043c\u0430\u0442\u0440\u0438\u0446\u0443 \u0440\u0430\u0437\u043c\u0435\u0440\u0430  \u043a\u0430\u043a \u043c\u0430\u0442\u0440\u0438\u0446\u0443 \u0441 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c\u0438<\/p>\n<p>\u043d\u0430 \u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u0438 \u0438 \u043d\u0430\u0434 \u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u044c\u044e \u0438 \u043f\u043e\u0434 \u043d\u0435\u0439. \u0422\u0430\u043a\u0430\u044f \u043c\u0430\u0442\u0440\u0438\u0446\u0430 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u0440\u0451\u0445\u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439. \u041d\u0430\u0448 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043a\u0430\u043a-\u0442\u043e \u0442\u0430\u043a:<\/p>\n<p>\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0432\u0441\u0435\u0433\u043e \u043b\u0438\u0448\u044c \u043f\u043e\u0440\u044f\u0434\u043a\u0430 . \u041d\u0430\u043f\u0438\u0448\u0435\u043c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043a\u043b\u0430\u0441\u0441, \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u044e\u0449\u0438\u0439 \u044f\u0432\u043d\u0443\u044e \u0441\u0445\u0435\u043c\u0443 \u0441 \u0442\u0430\u043a\u0438\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c. \u0414\u043b\u044f \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c scipy.sparse, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u043c \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0437\u0440\u0435\u0436\u0435\u043d\u043d\u044b\u0435 \u043c\u0430\u0442\u0440\u0438\u0446\u044b, \u0441\u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0432 \u043c\u043d\u043e\u0433\u043e \u043f\u0430\u043c\u044f\u0442\u0438 \u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0430 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f. \u042d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0432\u0430\u0436\u043d\u043e, \u0435\u0441\u043b\u0438 \u043c\u044b \u043f\u043e\u0442\u043e\u043c \u0437\u0430\u0445\u043e\u0442\u0438\u043c \u0440\u0435\u0448\u0430\u0442\u044c \u0432\u043e\u043b\u043d\u043e\u0432\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0432 \u0440\u0430\u0437\u043c\u0435\u0440\u043d\u043e\u0441\u0442\u0438 1&#8243; alt=&#187;d>1&#8243; src=&#187;https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/57c\/785\/3dc\/57c7853dc2642558a9712fa6f35af6ff.svg&#187; width=&#187;45&#8243; height=&#187;17&#8243;\/>.<\/p>\n<pre><code class=\"python\">import numpy as np import scipy.sparse as sps import scipy.sparse.linalg as splin   class ExplicitEulerSolver:      def __init__(self, hs, cCoef):         '''         Input         float[] hs -- the steps of the discretization, [d+1], the first is the time         '''         super(ExplicitEulerSolver,self).__init__()          self.hs = hs         self.cCoef = cCoef         self.dim = hs.shape[0]-1         print(self.dim)       def solveBVProblem1D(self, uInits, numSteps, rightPart=None, spaceGrid=None):         '''             Solves Dirichlet Boundary-Value Problem             Input             float[] uInits -- two initial layers of shape [2,...dims...]             int numSteps -- number of time steps             funcHandler rightPart -- right part depending on time and space (t,x)             float[][] spaceGrid -- space grid of points         '''          #trim inits         uSol = [ (uInits[0,...])[None,...], (uInits[1,...])[None,...] ]         shape= np.array(list(uSol[0].shape)[1:])-2#-2 for dirichlet, trimmed shape for later restoration         uSol[0] = np.take(uSol[0],np.arange(1,uSol[0].shape[1]-1),axis=1)         uSol[1] = np.take(uSol[1],np.arange(1,uSol[1].shape[1]-1),axis=1)         uSol[0] = np.reshape(uSol[0], newshape=(-1,), order='C')[None,:]         uSol[1] = np.reshape(uSol[1], newshape=(-1,), order='C')[None,:]          #assembling iteration matrix         diags = self.hs[0]**2 *np.concatenate([self.cCoef**2 \/(self.hs[1]**2) * np.ones([1,shape[0]]),                     (2\/(self.hs[0]**2) - 2*self.cCoef**2 \/(self.hs[1]**2) ) * np.ones([1,shape[0]]),                      self.cCoef**2  \/(self.hs[1]**2) * np.ones([1,shape[0]])],axis=0)         offsets = np.array([-1,0,1])                      C = sps.spdiags(diags,offsets, m=len(diags[1]),n=len(diags[1]), format=\"csr\")          for i in np.arange(numSteps-1):             if(rightPart is None):                 toAdd = C@uSol[-1][0,:] - uSol[-2][0,:]             else:                 toAdd = C@uSol[-1][0,:] - uSol[-2][0,:] + np.reshape(rightPart(self.hs[0]*(i+2),spaceGrid),newshape=(-1,))             uSol.append(toAdd[None,:])          uSol=np.concatenate(uSol, axis=0)         toShape= tuple([uSol.shape[0]] + [shape[j] for j in np.arange(len(shape))])         return np.pad(np.reshape(uSol, newshape=toShape), pad_width=[(0,0)]+[(1,1) for _ in np.arange(self.dim)])    <\/code><\/pre>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c! \u041f\u0443\u0441\u0442\u044c , \u0437\u0430\u0434\u0430\u0434\u0438\u043c \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f <\/p>\n<figure class=\"bordered full-width\">\n<div><figcaption>\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043e\u0442\u0442\u044f\u043d\u0443\u043b\u0438 \u0441\u0442\u0440\u0443\u043d\u0443<\/figcaption><\/div>\n<\/figure>\n<p>\u0412\u043e\u0437\u044c\u043c\u0451\u043c, \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443,  \u0438 \u043d\u0430\u0440\u0438\u0441\u0443\u0435\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0441\u043a\u0440\u0438\u043f\u0442:<\/p>\n<pre><code class=\"python\">import numpy as np import pickle  import matplotlib.pyplot as plt from matplotlib.animation import FuncAnimation   import LinearPDESolvers as linPDEs   import time #solve wave eq  T=4 xLeft=0 xRight=2 c=2  #Nx = 510 #Nt = 1000 Nx=20 Nt=200 hx = (xRight-xLeft)\/Nx ht = T\/Nt   solver = linPDEs.ExplicitEulerSolver(np.array([ht,hx]), cCoef=c)   xs = np.arange(xLeft,xRight+hx\/2,hx) ts = np.arange(0,T+ht\/2,ht)  #assume u'(0,x)=0 def initFunc(xx):     return ((2*xx)*(xx&lt;0.5) + (xx>=0.5)*(-2\/3*xx + 4\/3)) def dtFunc(xx):     return 0 uInits = np.zeros([2,len(xs)]) uInits[0,:] = initFunc(xs) duts = dtFunc(xs) uInits[1,:] = uInits[0,:] + duts*ht  #SOLVE! res=solver.solveBVProblem1D(uInits, Nt)   # initializing a figure in  # which the graph will be plotted fig = plt.figure()      # marking the x-axis and y-axis axis = plt.axes(xlim =(xLeft, xRight),                  ylim =(-1.5, 1.5))     # initializing a line variable line, = axis.plot([], [], lw = 3)   cross = axis.scatter([xLeft,xRight],[0,0], marker=\"x\", s=90, color=\"red\")  txt = axis.text(xLeft+1e-1,-1,\"t=\"+str(ht*0)) # data which the line will  # contain (x, y) def init():      line.set_data(xs, res[0,:])     txt.set_text(\"t=\"+str(ht*0))     return line,txt,     def animate(i):     line.set_data(xs, res[i,:])     txt.set_text(\"t={:.2f}\".format(ht*i) )     return line,txt,     anim = FuncAnimation(fig, animate, init_func = init,                      frames = np.arange(0,res.shape[0],1), interval = ht*1000, blit = False, repeat=False)#ms scale  anim.save('explEuler.mp4',fps=30)  with open(\".\/solveTempOut.pkl\", \"wb\") as f:     pickle.dump({\"res\": res},f)<\/code><\/pre>\n<div class=\"tm-iframe_temp\" data-src=\"https:\/\/embedd.srv.habr.com\/iframe\/6409fa3ea9cdfde042456a09\" data-style=\"\" id=\"6409fa3ea9cdfde042456a09\" width=\"\"><\/div>\n<p>\u0422\u0430\u043a \u0441\u0442\u043e\u043f. \u041c\u043e\u0436\u0435\u0442, \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u0436\u0435\u0441\u0442\u043a\u0443\u044e \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u0438\u0437\u0430\u0446\u0438\u044e, \u0441\u0434\u0435\u043b\u0430\u0435\u043c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, .<\/p>\n<div class=\"tm-iframe_temp\" data-src=\"https:\/\/embedd.srv.habr.com\/iframe\/6409fae09f1c6be050c5d7cd\" data-style=\"\" id=\"6409fae09f1c6be050c5d7cd\" width=\"\"><\/div>\n<p>\u0412 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0433\u0438\u0442\u0430\u0440\u043d\u044b\u0435 \u0441\u0442\u0440\u0443\u043d\u044b \u043d\u0435 \u0440\u0430\u0437\u043b\u0435\u0442\u0430\u044e\u0442\u0441\u044f \u043f\u043e \u0412\u0441\u0435\u043b\u0435\u043d\u043d\u043e\u0439. \u0412 \u0447\u0451\u043c \u0436\u0435 \u0434\u0435\u043b\u043e? \u041c\u043e\u0436\u0435\u0442, \u0441\u043b\u0438\u0448\u043a\u043e\u043c, \u0433\u0440\u0443\u0431\u0430\u044f \u0441\u0435\u0442\u043a\u0430, \u0432\u043e\u0437\u044c\u043c\u0451\u043c \u0438&#8230; <\/p>\n<div class=\"tm-iframe_temp\" data-src=\"https:\/\/embedd.srv.habr.com\/iframe\/6409fc767a8d27e0261e5b19\" data-style=\"\" id=\"6409fc767a8d27e0261e5b19\" width=\"\"><\/div>\n<p>\u0432\u0440\u043e\u0434\u0435 \u0440\u0430\u0437\u0443\u043c\u043d\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442. \u041d\u043e \u043f\u043e\u0447\u0435\u043c\u0443 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0442\u0430\u043a \u043f\u0430\u0440\u0430\u043d\u043e\u0438\u0434\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u0448\u0430\u0433 \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0445\u043e\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u0430\u0434\u0435\u043a\u0432\u0430\u0442\u043d\u043e\u0435?<\/p>\n<h2>\u0423\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442\u044c \u0440\u0430\u0437\u043d\u043e\u0441\u0442\u043d\u043e\u0439 \u0441\u0445\u0435\u043c\u044b<\/h2>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-346785","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/346785","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=346785"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/346785\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=346785"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=346785"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=346785"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}