{"id":290719,"date":"2018-10-13T12:25:02","date_gmt":"2018-10-13T08:25:02","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=290719"},"modified":"-0001-11-30T00:00:00","modified_gmt":"2018-10-13T08:25:02","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=290719","title":{"rendered":"\u0421\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 c \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435\u043c SymPy"},"content":{"rendered":"\n<div class=\"post__text post__text-html js-mediator-article\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/17\/x9\/uw\/17x9uwkvvlnn2gxa0wc3hsonvnk.jpeg\"><\/p>\n<p>  \u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Python \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0441\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u043e\u0447\u0435\u043d\u044c \u0443\u0434\u043e\u0431\u043d\u0430 \u043f\u0440\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0437\u0430\u0434\u0430\u0447 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f\u043c\u0438. \u0414\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0448\u0438\u0440\u043e\u043a\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435, \u0433\u043e\u0432\u043e\u0440\u044f \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u043d\u043e, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u0441\u0432\u0435\u0441\u0442\u0438 \u0437\u0430\u0434\u0430\u0447\u0443 \u043a \u0440\u0435\u0448\u0435\u043d\u0438\u044e \u043f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0445 \u0430\u043b\u0433\u0435\u0431\u0440\u0430\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439.<br \/>  \u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u0440\u044f\u043c\u043e\u0433\u043e \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0438\u0437 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 SymPy, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438 Python.<br \/>  <a name=\"habracut\"><\/a><br \/>  \u0421\u0430\u043c \u043c\u0435\u0442\u043e\u0434 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0438 \u0435\u0433\u043e \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u043f\u0440\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c \u0448\u0438\u0440\u043e\u043a\u043e \u043e\u0441\u0432\u0435\u0449\u0435\u043d\u044b \u0432 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u0435, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u043e\u043c \u0438\u0437\u0434\u0430\u043d\u0438\u0438 [1]. \u0412 \u043a\u043d\u0438\u0433\u0435 \u043c\u0435\u0442\u043e\u0434 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d \u0434\u043b\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0432 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u0430\u0445 Mathematica, Maple \u0438 MATLAB (\u0447\u0442\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0435\u0442 \u043f\u0440\u0438\u043e\u0431\u0440\u0435\u0442\u0435\u043d\u0438\u0435 \u0443\u0447\u0435\u0431\u043d\u044b\u043c \u0437\u0430\u0432\u0435\u0434\u0435\u043d\u0438\u0435\u043c \u044d\u0442\u043e\u0433\u043e \u041f\u041e) \u043d\u0430 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0445 \u0430\u0432\u0442\u043e\u0440\u043e\u043c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445.<br \/>  \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0443\u0447\u0435\u0431\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438 Python, \u0430 \u043e\u0431\u0449\u0438\u0439 \u043c\u0435\u0442\u043e\u0434 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043f\u0440\u044f\u043c\u043e\u0433\u043e \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u043c \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442: \u043b\u0435\u0432\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043b\u0438\u043d\u0435\u0439\u043d\u043e\u0433\u043e \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0441 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u043c\u0438 \u041a\u043e\u0448\u0438 \u0431\u0443\u0434\u0435\u0442 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u0430\u043c\u0438\u043c \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u043c, \u0430 \u0440\u0443\u0442\u0438\u043d\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0437\u0430\u0434\u0430\u0447\u0438, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0430\u044f \u0432 \u043f\u0440\u044f\u043c\u043e\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u043f\u0440\u0430\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f, \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <b>laplace_transform()<\/b>.<\/p>\n<h3>\u0418\u0441\u0442\u043e\u0440\u0438\u044f \u043e\u0431 \u0430\u0432\u0442\u043e\u0440\u0441\u0442\u0432\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u041b\u0430\u043f\u043b\u0430\u0441\u0430<\/h3>\n<p>  \u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430 (\u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043f\u043e \u041b\u0430\u043f\u043b\u0430\u0441\u0443) \u0438\u043c\u0435\u044e\u0442 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0443\u044e \u0438\u0441\u0442\u043e\u0440\u0438\u044e. \u0412\u043f\u0435\u0440\u0432\u044b\u0435 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u043b \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u0432 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0440\u0430\u0431\u043e\u0442 \u041b. \u042d\u0439\u043b\u0435\u0440\u0430. \u041e\u0434\u043d\u0430\u043a\u043e \u0432 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0435 \u043e\u0431\u0449\u0435\u043f\u0440\u0438\u043d\u044f\u0442\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434\u0438\u043a\u0443 \u0438\u043b\u0438 \u0442\u0435\u043e\u0440\u0435\u043c\u0443 \u0438\u043c\u0435\u043d\u0435\u043c \u0442\u043e\u0433\u043e \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0442\u043a\u0440\u044b\u043b \u0435\u0435 \u043f\u043e\u0441\u043b\u0435 \u042d\u0439\u043b\u0435\u0440\u0430. \u0412 \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043b\u043e \u0431\u044b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043e\u0442\u0435\u043d \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0442\u0435\u043e\u0440\u0435\u043c \u042d\u0439\u043b\u0435\u0440\u0430.<br \/>  \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043f\u043e\u0441\u043b\u0435 \u042d\u0439\u043b\u0435\u0440\u0430 \u0431\u044b\u043b \u0444\u0440\u0430\u043d\u0446\u0443\u0437\u0441\u043a\u0438\u0439 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a \u041f\u044c\u0435\u0440 \u0421\u0438\u043c\u043e\u043d \u0434\u0435 \u041b\u0430\u043f\u043b\u0430\u0441 (Pierre Simon de Laplace (1749-1827)). \u0418\u043c\u0435\u043d\u043d\u043e \u043e\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0442\u0430\u043a\u0438\u0435 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u043b\u044b \u0432 \u0441\u0432\u043e\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u0435 \u043f\u043e \u0442\u0435\u043e\u0440\u0438\u0438 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u0435\u0439. \u0421\u0430\u043c\u0438\u043c \u041b\u0430\u043f\u043b\u0430\u0441\u043e\u043c \u043d\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u043b\u0438\u0441\u044c \u0442\u0430\u043a \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0435 \u00ab\u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b\u00bb \u0434\u043b\u044f \u043d\u0430\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439, \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043d\u0430 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u0445 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 (\u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0445 \u043f\u043e \u041b\u0430\u043f\u043b\u0430\u0441\u0443). \u042d\u0442\u0438 \u043c\u0435\u0442\u043e\u0434\u044b \u0432 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0431\u044b\u043b\u0438 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u044b \u0438 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043b\u0438\u0441\u044c \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430\u043c\u0438-\u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430\u043c\u0438, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u043c \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u043c-\u044d\u043b\u0435\u043a\u0442\u0440\u0438\u043a\u043e\u043c \u041e\u043b\u0438\u0432\u0435\u0440\u043e\u043c \u0425\u0435\u0432\u0438\u0441\u0430\u0439\u0434\u043e\u043c (1850-1925). \u0417\u0430\u0434\u043e\u043b\u0433\u043e \u0434\u043e \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0431\u044b\u043b\u0430 \u0441\u0442\u0440\u043e\u0433\u043e \u0434\u043e\u043a\u0430\u0437\u0430\u043d\u0430 \u0441\u043f\u0440\u0430\u0432\u0435\u0434\u043b\u0438\u0432\u043e\u0441\u0442\u044c \u044d\u0442\u0438\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432, \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0435 \u0438\u0441\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0438 \u0448\u0438\u0440\u043e\u043a\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u043b\u043e\u0441\u044c, \u0445\u043e\u0442\u044f \u0435\u0433\u043e \u0437\u0430\u043a\u043e\u043d\u043d\u043e\u0441\u0442\u044c \u0441\u0442\u0430\u0432\u0438\u043b\u043e\u0441\u044c \u0432 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043c\u0435\u0440\u0435 \u043f\u043e\u0434 \u0441\u043e\u043c\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u0436\u0435 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 XX \u0441\u0442\u043e\u043b\u0435\u0442\u0438\u044f, \u0438 \u043f\u043e \u044d\u0442\u043e\u0439 \u0442\u0435\u043c\u0435 \u0432\u0435\u043b\u0438\u0441\u044c \u0432\u0435\u0441\u044c\u043c\u0430 \u043e\u0436\u0435\u0441\u0442\u043e\u0447\u0435\u043d\u043d\u044b\u0435 \u0434\u0435\u0431\u0430\u0442\u044b.<\/p>\n<h3>\u0424\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u0440\u044f\u043c\u043e\u0433\u043e \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430<\/h3>\n<p>  <\/p>\n<ol>\n<li> \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u044f\u043c\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430:<br \/>   sympy.integrals.transforms.<b>laplace_transform<\/b>(t, s, **hints).<br \/>  \u0424\u0443\u043d\u043a\u0446\u0438\u044f <b>laplace_transform()<\/b> \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <i>f(t)<\/i> \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u044e <i>F(s)<\/i> \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0441\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439, \u0442\u0430\u043a \u0447\u0442\u043e:<br \/> \n<\/p>\n<p><math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/57c\/a22\/686\/57ca226869833c3ce9dd408b685f29e8.svg\" alt=\"$F(s)=\\int_{0}^{\u221e}f(t)e^{-st}dt.$\" data-tex=\"display\"><\/math><\/p>\n<p>  \u042d\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 <b>(F, a, cond)<\/b>, \u0433\u0434\u0435 <i>F(s)<\/i> \u0435\u0441\u0442\u044c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <i>f(t)<\/i>, <b>a&lt;Re(s)<\/b> \u2013 \u043f\u043e\u043b\u0443\u043f\u043b\u043e\u0441\u043a\u043e\u0441\u0442\u044c, \u0433\u0434\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0430 <i>F(s)<\/i>, \u0438 <b>cond<\/b>\u2013 \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u0441\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u043b\u0430.<br \/>  \u0415\u0441\u043b\u0438 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u043b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d \u0432 \u0437\u0430\u043a\u0440\u044b\u0442\u043e\u0439 \u0444\u043e\u0440\u043c\u0435, \u044d\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043d\u0435\u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c <b>LaplaceTransform<\/b> \u043e\u0431\u044a\u0435\u043a\u0442\u0430.<br \/>  \u0415\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043e\u043f\u0446\u0438\u044e <b>noconds=True<\/b>, \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e <b><i>F(s)<\/i><\/b>.<\/li>\n<li>\u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430:<br \/>  sympy.integrals.transforms.<b>inverse_laplace_transform<\/b>(F, s, t, plane=None, **hints).<br \/>  \u0424\u0443\u043d\u043a\u0446\u0438\u044f <b>inverse_laplace_transform()<\/b> \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0441\u043d\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0433\u043e <i>F(s)<\/i> \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u044e <i>f(t)<\/i> \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439, \u0442\u0430\u043a \u0447\u0442\u043e:<br \/> \n<\/p>\n<p><math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/38f\/53e\/ed8\/38f53eed854875637fb812899fb6e496.svg\" alt=\"$f(t)=\\frac{1}{2\\pi i}\\int_{c-\u221e\\cdot i}^{c+\u221e\\cdot i}e^{st}F(s)ds.$\" data-tex=\"display\"><\/math><\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u043b \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d \u0432 \u0437\u0430\u043a\u0440\u044b\u0442\u043e\u0439 \u0444\u043e\u0440\u043c\u0435, \u044d\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043d\u0435\u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c <b>InverseLaplaceTransform<\/b> \u043e\u0431\u044a\u0435\u043a\u0442\u0430.   <\/li>\n<\/ol>\n<p>  <\/p>\n<h3>\u041e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u043d\u043e\u0439 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438 \u0440\u0435\u0433\u0443\u043b\u044f\u0442\u043e\u0440\u043e\u0432<\/h3>\n<p>  \u041f\u0435\u0440\u0435\u0434\u0430\u0442\u043e\u0447\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u041f\u0418\u0414-\u0440\u0435\u0433\u0443\u043b\u044f\u0442\u043e\u0440\u0430 \u0438\u043c\u0435\u0435\u0442 \u0432\u0438\u0434 [2]:  <\/p>\n<p><math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/7d5\/401\/85e\/7d540185ea1f5fcc0eccd3c7db038b6a.svg\" alt=\"$W(s)=(1+\\frac{K_{d}\\cdot T_{d}\\cdot s}{1+T_{d}\\cdot s})\\cdot K_{p}\\cdot (1+\\frac{1}{T_{i}\\cdot s})\\cdot \\frac{1}{s}.$\" data-tex=\"display\"><\/math><\/p>\n<p>  \u041d\u0430\u043f\u0438\u0448\u0435\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u043d\u044b\u0445 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a \u041f\u0418\u0414- \u0438 \u041f\u0418-\u0440\u0435\u0433\u0443\u043b\u044f\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u044f \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u043e\u0447\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0432\u0435\u0434\u0435\u043c \u0432\u0440\u0435\u043c\u044f, \u0437\u0430\u0442\u0440\u0430\u0447\u0435\u043d\u043d\u043e\u0435 \u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430.  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0422\u0435\u043a\u0441\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\"># \u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 import time start = time.time() from sympy import * import matplotlib.pyplot as plt import numpy as np var('s Kp Ti Kd Td ') # \u041e\u0431\u044a\u044f\u0432\u043b\u044f\u0435\u043c \u0441\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 var('t ', positive=True) # \u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u0443\u044e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 Kp=2;Ti=2;Kd=4;Td=Rational(1,2) # \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0434\u0440\u043e\u0431\u043d\u043e\u0439 \u0441\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 fp=(1+(Kd*Td*s)\/(1+Td*s))*Kp*(1+1\/(Ti*s))*(1\/s) # \u041f\u0435\u0440\u0435\u0434\u0430\u0442\u043e\u0447\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u041f\u0418\u0414-\u0440\u0435\u0433\u0443\u043b\u044f\u0442\u043e\u0440\u0430 \u0441 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u043c s ht=inverse_laplace_transform(fp,s,t) # \u041f\u0435\u0440\u0435\u0445\u043e\u0434\u043d\u0430\u044f \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0430 \u041f\u0418\u0414-\u0440\u0435\u0433\u0443\u043b\u044f\u0442\u043e\u0440\u0430, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c\u0430\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430 Kd=0 fpp=(1+(Kd*Td*s)\/(1+Td*s))*Kp*(1+1\/(Ti*s))*(1\/s) # \u041f\u0435\u0440\u0435\u0434\u0430\u0442\u043e\u0447\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u041f\u0418-\u0440\u0435\u0433\u0443\u043b\u044f\u0442\u043e\u0440\u0430 (Kd=0) \u0441 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u043c s htt=inverse_laplace_transform(fpp,s,t) # \u041f\u0435\u0440\u0435\u0445\u043e\u0434\u043d\u0430\u044f \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0430 \u041f\u0418-\u0440\u0435\u0433\u0443\u043b\u044f\u0442\u043e\u0440\u0430, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c\u0430\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430 stop = time.time() print('\u0412\u0440\u0435\u043c\u044f \u043d\u0430 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430: %s s ' %N((stop-start),3))  # \u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u0438\u0437 \u0441\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u043e\u0439 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0432 \u0447\u0438\u0441\u043b\u0435\u043d\u043d\u0443\u044e f=lambdify(t, ht, 'numpy') F=lambdify(t, htt, 'numpy') tt = np.arange(0.01,20,0.05) # \u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u0433\u0440\u0430\u0444\u0438\u043a\u0430 plt.title('\u041f\u0435\u0440\u0435\u0445\u043e\u0434\u043d\u044b\u0435 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438 \u0440\u0435\u0433\u0443\u043b\u044f\u0442\u043e\u0440\u043e\u0432 \\n \u0441 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u043e\u0447\u043d\u044b\u043c\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438:\\n \u041f\u0418\u0414 - W(s)=%s \\n \u041f\u0418 - W(s)=%s' %(fp,fpp)) plt.plot(tt,f(tt), color='r', linewidth=2, label='\u041f\u0418\u0414-\u0440\u0435\u0433\u0443\u043b\u044f\u0442\u043e\u0440: h(t)=%s' %ht) plt.plot(tt,F(tt), color='b', linewidth=2, label='\u041f\u0418-\u0440\u0435\u0433\u0443\u043b\u044f\u0442\u043e\u0440: h(t)=%s' %htt) plt.grid(True) plt.legend(loc='best') plt.show() <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <b>\u041f\u043e\u043b\u0443\u0447\u0438\u043c:<\/b><br \/>  \u0412\u0440\u0435\u043c\u044f \u043d\u0430 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430: 2.68 s<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/ei\/mq\/dj\/eimqdjovtna0wpsekvms9mig_xk.png\"><br \/>  \u041e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0447\u0430\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0441\u0438\u043d\u0442\u0435\u0437\u0435 \u0421\u0410\u0423, \u0433\u0434\u0435 Python \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u0434\u043e\u0440\u043e\u0433\u043e\u0441\u0442\u043e\u044f\u0449\u0438\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u201c\u043c\u043e\u043d\u0441\u0442\u0440\u043e\u0432\u201d \u0442\u0438\u043f\u0430 MathCAD, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u043c\u0435\u0435\u0442 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.<\/p>\n<h3>\u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u043e\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0445 \u0432\u044b\u0441\u0448\u0438\u0445 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432 \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447\u0438 \u041a\u043e\u0448\u0438<\/h3>\n<p>  \u0412 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435 \u043d\u0430\u0448\u0435\u0433\u043e \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 (\u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u043f\u043e \u041b\u0430\u043f\u043b\u0430\u0441\u0443) \u043a \u043f\u043e\u0438\u0441\u043a\u0443 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u043b\u0438\u043d\u0435\u0439\u043d\u043e\u0433\u043e \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0441 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u044b\u043c\u0438 \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442\u0430\u043c\u0438 \u0432\u0438\u0434\u0430:  <\/p>\n<p><math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/c05\/fd6\/134\/c05fd6134fa6e39a3713725e5ba0cd34.svg\" alt=\"$a\\cdot x''(t)+b\\cdot x'(t)+c\\cdot x(t)=f(t). (1)$\" data-tex=\"display\"><\/math><\/p>\n<p>  \u0415\u0441\u043b\u0438 <i>a<\/i> \u0438 <i>b<\/i> \u2014 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b, \u0442\u043e  <\/p>\n<p><math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/0dc\/cf7\/010\/0dccf7010e956fa85006ab8c433d122a.svg\" alt=\"$L\\left\\{a\\cdot f(t)+b\\cdot q(t)\\right\\}=a\\cdot L\\left\\{f(t)\\right\\}+b\\cdot L\\left\\{q(t)\\right\\} (2)$\" data-tex=\"display\"><\/math><\/p>\n<p>  \u0434\u043b\u044f \u0432\u0441\u0435\u0445 <i>s<\/i>, \u0442\u0430\u043a\u0438\u0445, \u0447\u0442\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u043e\u0431\u0430 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430 (\u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043f\u043e \u041b\u0430\u043f\u043b\u0430\u0441\u0443) \u0444\u0443\u043d\u043a\u0446\u0438\u0439 <i>f(t)<\/i> \u0438 <i>q(t)<\/i>.<\/p>\n<p>  \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u043c \u043b\u0438\u043d\u0435\u0439\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u044f\u043c\u043e\u0433\u043e \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0440\u0430\u043d\u0435\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 <b>laplace_transform()<\/b> \u0438 <b>inverse_laplace_transform()<\/b>. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u043f\u0440\u0438\u043c\u0435\u043c <i>f(t)=sin(3t)<\/i>, <i>q(t)=cos(7t)<\/i>, <i>a=5<\/i>, <i>b=7<\/i> \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443.  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0422\u0435\u043a\u0441\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">from sympy import* var('s a b') var('t ', positive=True) a=5 f=sin(3*t) b=7 q=cos(7*t) L1=a*laplace_transform(f, t, s, noconds = True) # \u041f\u0440\u044f\u043c\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 a*L{f(t)} L2=b*laplace_transform(q, t, s, noconds = True) # \u041f\u0440\u044f\u043c\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 b*L{q(t)} L=factor(L1+L2) # \u0421\u0443\u043c\u043c\u0430 a*L{f(t)}+b*L{q(t)} print(L) LS=factor(laplace_transform(a*f+b*q, t, s, noconds = True)) # \u041f\u0440\u044f\u043c\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 L{a*f(t)+b*q(t)} print(LS) print(LS==L) L_1=a*inverse_laplace_transform(L1\/a, s, t) # \u041e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 a* L^-1{f(t)} L_2=b*inverse_laplace_transform(L2\/b, s,t) # \u041e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 b* L^-1{q(t)} L_S=L_1+L_2 # a* L^-1{f(t)}+b* L^-1{q(t)} print(L_S) L_1_2=inverse_laplace_transform(L1+L2,s,t) #\u041e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 L^-1{a*f(t)+b*q(t)} print(L_1_2) print(L_1_2==L_S) <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <b>\u041f\u043e\u043b\u0443\u0447\u0438\u043c:<\/b><br \/>  (7*s**3 + 15*s**2 + 63*s + 735)\/((s**2 + 9)*(s**2 + 49))<br \/>  (7*s**3 + 15*s**2 + 63*s + 735)\/((s**2 + 9)*(s**2 + 49))<br \/>  True<br \/>  5*sin(3*t) + 7*cos(7*t)<br \/>  5*sin(3*t) + 7*cos(7*t)<\/p>\n<p>  \u041f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0439 \u043a\u043e\u0434 \u0442\u0430\u043a\u0436\u0435 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u0442 \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e\u0441\u0442\u044c \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c, \u0447\u0442\u043e <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/72f\/565\/933\/72f565933a4a83789a65aa216b3e2694.svg\" alt=\"$q(t)=f'(t)$\" data-tex=\"inline\"><\/math> \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u044f\u0435\u0442 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u043c \u043f\u0435\u0440\u0432\u043e\u0439 \u0442\u0435\u043e\u0440\u0435\u043c\u044b, \u0442\u043e \u0438\u0437 \u044d\u0442\u043e\u0439 \u0442\u0435\u043e\u0440\u0435\u043c\u044b \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c, \u0447\u0442\u043e:  <\/p>\n<p><math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/7cd\/9a5\/10a\/7cd9a510ae70347e0d8916b9a2cc3674.svg\" alt=\"$L\\left\\{f''(t)\\right\\}=L\\left\\{q'(t)\\right\\}=sL\\left\\{q(t)\\right\\}-q(0)=sL\\left\\{f'(t)\\right\\}-f'(0)=s\\left[sL\\left\\{f(t)-f(0)\\right\\}\\right],$\" data-tex=\"display\"><\/math><\/p>\n<p>  \u0438, \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c,  <\/p>\n<p><math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/a6b\/8f8\/79e\/a6b8f879eb4cd4a078b42c79bfed26b8.svg\" alt=\"$L\\left\\{f''(t)\\right\\}=s^{2}\\cdot F(s)-s\\cdot f(0)-f'(0).$\" data-tex=\"display\"><\/math><\/p>\n<p>  \u041f\u043e\u0432\u0442\u043e\u0440\u0435\u043d\u0438\u0435 \u044d\u0442\u043e\u0433\u043e \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u0435\u0442  <\/p>\n<p><math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/7e6\/5e4\/7cd\/7e65e47cd57a922641fbc71912098693.svg\" alt=\"$L\\left\\{f'''(t)\\right\\}=sL\\left\\{f''(t)\\right\\}-f''(0)=s^{3}F(s)-s^{2}f(0)-sf'(0)-f''(0).$\" data-tex=\"display\"><\/math><\/p>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 \u0442\u0430\u043a\u0438\u0445 \u0448\u0430\u0433\u043e\u0432 \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u043e\u0431\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0432\u043e\u0439 \u0442\u0435\u043e\u0440\u0435\u043c\u044b:  <\/p>\n<p><math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/f2b\/1a6\/0d2\/f2b1a60d2ae16bb081dc01810b422f1c.svg\" alt=\"$L\\left\\{f^{(n)}(t)\\right\\}=s^{n}L\\left\\{f(t)\\right\\}-s^{n-1}f(0)-s^{n-2}f'(0)-\\cdot\\cdot\\cdot -f^{(n-1)}(0)=$\" data-tex=\"display\"><\/math><\/p>\n<p>  <\/p>\n<p><math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/029\/e19\/f2a\/029e19f2a172a608ba186c50be3cf19c.svg\" alt=\"$=s^{n}F(s)-s^{n-1}f(0)-\\cdot\\cdot\\cdot -sf^{(n-2)}(0)-f^{(n-1)}(0). (3)$\" data-tex=\"display\"><\/math><\/p>\n<p>  \u041f\u0440\u0438\u043c\u0435\u043d\u044f\u044f \u0441\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435 (3), \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u041b\u0430\u043f\u043b\u0430\u0441\u0443 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0435 \u0438\u0441\u043a\u043e\u043c\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0441 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u043c\u0438, \u043a \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044e (1), \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0435\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u043e \u043c\u0435\u0442\u043e\u0434\u0443, \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u043c\u0443 \u043d\u0430 \u043d\u0430\u0448\u0435\u0439 \u043a\u0430\u0444\u0435\u0434\u0440\u0435 \u043f\u0440\u0438 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0435 <a href=\"https:\/\/habr.com\/users\/scorobey\/\" class=\"user_link\">Scorobey<\/a> \u0434\u043b\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 SymPy.<\/p>\n<h3>\u041c\u0435\u0442\u043e\u0434 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439, \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u0445 \u041b\u0430\u043f\u043b\u0430\u0441\u0430, \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 SymPy<\/h3>\n<p>  \u0414\u043b\u044f \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043c\u0435\u0442\u043e\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043f\u0440\u043e\u0441\u0442\u043e\u0435 \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, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0435\u0435 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0435\u0439 \u0438\u0437 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u044b, \u0437\u0430\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u043d\u043e\u0439 \u043d\u0430 \u043f\u0440\u0443\u0436\u0438\u043d\u0435, \u043a \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0430 \u0432\u043d\u0435\u0448\u043d\u044f\u044f \u0441\u0438\u043b\u0430. \u0414\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0438 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u0434\u043b\u044f \u0442\u0430\u043a\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438\u043c\u0435\u044e\u0442 \u0432\u0438\u0434:  <\/p>\n<p><math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/c3d\/594\/f0c\/c3d594f0c8df127c58bbfcecd7a251b3.svg\" alt=\"$x''+4x=\\sin(3t); x(0)=1.2; x'(0)=1, (4)$\" data-tex=\"display\"><\/math><\/p>\n<p>  \u0433\u0434\u0435 <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/33e\/ab6\/e6c\/33eab6e6c24ff8a7d26cf7488c1c56fb.svg\" alt=\"$x(0)$\" data-tex=\"inline\"><\/math> \u2014 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u043e\u0435 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u044b, <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/225\/ac4\/f21\/225ac4f216de5bd3d319cedf58617c24.svg\" alt=\"$x'(0)$\" data-tex=\"inline\"><\/math> \u2014 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u0430\u044f \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043c\u0430\u0441\u0441\u044b.<\/p>\n<p>  \u0423\u043f\u0440\u043e\u0449\u0451\u043d\u043d\u0430\u044f \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c, \u0437\u0430\u0434\u0430\u043d\u043d\u0430\u044f \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435\u043c (4) \u043f\u0440\u0438 \u043d\u0435\u043d\u0443\u043b\u0435\u0432\u044b\u0445 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u0445 [1]:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/st\/f-\/v7\/stf-v71tfn2unhr7393cpmfw0oc.jpeg\"><\/p>\n<p>  \u0421\u0438\u0441\u0442\u0435\u043c\u0430, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0430\u044f \u0438\u0437 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u044b, \u0437\u0430\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u043d\u043e\u0439 \u043d\u0430 \u043f\u0440\u0443\u0436\u0438\u043d\u0435, \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u044f\u0435\u0442 \u0437\u0430\u0434\u0430\u0447\u0435 \u041a\u043e\u0448\u0438 (\u0437\u0430\u0434\u0430\u0447\u0435 \u0441 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u043c\u0438). \u041c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044c\u043d\u0430\u044f \u0442\u043e\u0447\u043a\u0430 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u044b \u043f\u0435\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043f\u043e\u043a\u043e\u0435 \u0432 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0435\u0435 \u0440\u0430\u0432\u043d\u043e\u0432\u0435\u0441\u0438\u044f.<\/p>\n<p>  \u0414\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0443\u0434\u043e\u0431\u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0439 \u0438\u0437 \u0441\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439 (3):<br \/>  <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/187\/517\/2e5\/1875172e5d5c8da14d8787c9e5502a7a.svg\" alt=\"$L\\left\\{f^{IV}(t)\\right\\}=s^{4}\\cdot F(s)-s^{3}\\cdot f(0)-s^{2}\\cdot f^{I}(0)-s\\cdot f^{II}(0)-f^{III}(0),$\" data-tex=\"inline\"><\/math><br \/>  <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/34e\/f55\/1de\/34ef551de6e442edb1d809b44aa91832.svg\" alt=\"$L\\left\\{f^{III}(t)\\right\\}=s^{3}\\cdot F(s)-s^{2}\\cdot f(0)-s\\cdot f^{I}(0)-f^{II}(0),$\" data-tex=\"inline\"><\/math><br \/>  <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/1a1\/f51\/f2c\/1a1f51f2c22ed1bb94475adc48023af5.svg\" alt=\"$L\\left\\{f^{II}(t)\\right\\}=s^{2}\\cdot F(s)-s\\cdot f(0)-f^{I}(0),$\" data-tex=\"inline\"><\/math><br \/>  <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/7ac\/1f9\/f9f\/7ac1f9f9fd97c536fe29fbbf5a66e028.svg\" alt=\"$L\\left\\{f^{I}(t)\\right\\}=s\\cdot F(s)-f(0), L\\left\\{f(t)\\right\\}=F(s).$\" data-tex=\"inline\"><\/math><br \/>  <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/f06\/c12\/032\/f06c1203265e1ccfb9c7a30d22cc2a24.svg\" alt=\"$L\\left\\{f(t)\\right\\}=F(s). (5) $\" data-tex=\"inline\"><\/math><\/p>\n<p>  \u041f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438 SymPy \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f:  <\/p>\n<ol>\n<li>\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043c\u043e\u0434\u0443\u043b\u0438 \u0438 \u044f\u0432\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u0441\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435:<br \/> \n<pre><code class=\"python\">from sympy import * import numpy as np import matplotlib.pyplot as plt var('s') var('t', positive=True) var('X', cls = Function) <\/code><\/pre>\n<p>   <\/li>\n<li>\u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u0432\u0435\u0440\u0441\u0438\u044e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 sympy, \u0447\u0442\u043e\u0431\u044b \u0443\u0447\u0435\u0441\u0442\u044c \u0435\u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0443\u0436\u043d\u043e \u0432\u0432\u0435\u0441\u0442\u0438 \u0442\u0430\u043a\u0438\u0435 \u0441\u0442\u0440\u043e\u043a\u0438:<br \/> \n<pre><code class=\"python\">import SymPy print('\u0412\u0435\u0440\u0441\u0438\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 sympy \u2013 %' %(sympy._version_)) <\/code><\/pre>\n<p>   <\/li>\n<li>\u043f\u043e \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u043c\u0443 \u0441\u043c\u044b\u0441\u043b\u0443 \u0437\u0430\u0434\u0430\u0447\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043e\u0431\u043b\u0430\u0441\u0442\u0438, \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0435\u0439 \u043d\u043e\u043b\u044c \u0438 \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430. \u0417\u0430\u0434\u0430\u0451\u043c \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0432 \u043f\u0440\u0430\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f (4) \u0441 \u0435\u0451 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e \u041b\u0430\u043f\u043b\u0430\u0441\u0443. \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044e Rational, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0435\u0441\u044f\u0442\u0438\u0447\u043d\u043e\u0433\u043e \u043e\u043a\u0440\u0443\u0433\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u043e\u0448\u0438\u0431\u043a\u0435.<br \/> \n<pre><code class=\"python\">x0=Rational(6,5) # \u041f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u043e\u0435 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u044b x01=Rational (1,1) # \u041f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u0430\u044f \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c g=sin(3*t) Lg=laplace_transform( g, t, s, noconds = True) <\/code><\/pre>\n<p>   <\/li>\n<li>\u043f\u043e\u043b\u044c\u0437\u0443\u044f\u0441\u044c (5), \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u041b\u0430\u043f\u043b\u0430\u0441\u0443 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0435, \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0432 \u043b\u0435\u0432\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f (4), \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u044f \u0438\u0437 \u043d\u0438\u0445 \u043b\u0435\u0432\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u044d\u0442\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f, \u0438 \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0435\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441 \u043f\u0440\u0430\u0432\u043e\u0439 \u0435\u0433\u043e \u0447\u0430\u0441\u0442\u044c\u044e:<br \/> \n<pre><code class=\"python\">d2=s**2*X(s)-s*x0-x01 d0=X(s) d=d2+4*d0 de=Eq(d,Lg) <\/code><\/pre>\n<p>   <\/li>\n<li>\u0440\u0435\u0448\u0430\u0435\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0435 \u0430\u043b\u0433\u0435\u0431\u0440\u0430\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f X(s) \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430:<br \/> \n<pre><code class=\"python\">rez=solve(de,X(s))[0] soln=inverse_laplace_transform(rez,s,t) <\/code><\/pre>\n<p>   <\/li>\n<li>\u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u043c \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0438\u0437 \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435 SymPy\u0432 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 NumPy:<br \/> \n<pre><code class=\"python\">f=lambdify(t,soln,'numpy') <\/code><\/pre>\n<p>   <\/li>\n<li>\u0441\u0442\u0440\u043e\u0438\u043c \u0433\u0440\u0430\u0444\u0438\u043a \u043e\u0431\u044b\u0447\u043d\u044b\u043c \u0434\u043b\u044f Python \u043c\u0435\u0442\u043e\u0434\u043e\u043c:<br \/> \n<pre><code class=\"python\">x=np.linspace(0,6*np.pi,100) plt.title('\u0424\u0443\u043d\u043a\u0446\u0438\u044f, \u0434\u0430\u044e\u0449\u0430\u044f \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \\n \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u044b:\\n \u0445 (t)=%s' %soln) plt.grid(True) plt.xlabel(' t ',fontsize=12) plt.ylabel('x(t)',fontsize=12) plt.plot(x,f(x),'g',linewidth=2) plt.show() <\/code><\/pre>\n<p>   <\/li>\n<\/ol>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041f\u043e\u043b\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b:<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">from sympy import * import numpy as np import matplotlib.pyplot as plt var('s') var('t ', positive=True) var('X', cls = Function) import sympy print(\"\u0412\u0435\u0440\u0441\u0438\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 sympy \u2013 %s\" %(sympy.__version__)) x0=Rational(6, 5) # \u041f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u043e\u0435 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u044b x01=Rational(1,1) # \u041f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u0430\u044f \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u044b g=sin(3*t) Lg=laplace_transform(g, t, s, noconds=True) # \u041f\u0440\u044f\u043c\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 d2=s**2*X(s)-s*x0-x01 d0=X(s) d=d2+4*d0 de=Eq(d, Lg) rez=solve(de,X(s))[0] # \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0430\u043b\u0433\u0435\u0431\u0440\u0430\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f soln=inverse_laplace_transform(rez,s,t) # \u041e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 f=lambdify(t, soln ,\"numpy\") x=np.linspace(0,6*np.pi,100) plt.title('\u0424\u0443\u043d\u043a\u0446\u0438\u044f, \u0434\u0430\u044e\u0449\u0430\u044f \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \\n \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u044b:\\n \u0445 (t)=%s' %soln) plt.grid(True) plt.xlabel(' t ',fontsize=12) plt.ylabel('x(t)',fontsize=12) plt.plot(x,f(x),'g', linewidth=2) plt.show() <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <b>\u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c:<\/b><br \/>  \u0412\u0435\u0440\u0441\u0438\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 sympy \u2013 1.3<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/nj\/zt\/ka\/njztkaopwkurg1k0cnh4nucbzf8.png\"><br \/>  \u041f\u043e\u043b\u0443\u0447\u0435\u043d \u0433\u0440\u0430\u0444\u0438\u043a \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u0434\u0430\u044e\u0449\u0435\u0439 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u044b. \u041c\u0435\u0442\u043e\u0434 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 SymPy \u0434\u0430\u0435\u0442 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0431\u0435\u0437 \u043f\u043e\u0442\u0440\u0435\u0431\u043d\u043e\u0441\u0442\u0438 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430\u0439\u0442\u0438 \u043e\u0431\u0449\u0435\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e\u0434\u043d\u043e\u0440\u043e\u0434\u043d\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0438 \u0447\u0430\u0441\u0442\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043d\u0435\u043e\u0434\u043d\u043e\u0440\u043e\u0434\u043d\u043e\u0433\u043e \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f, \u043d\u043e \u0438 \u0431\u0435\u0437 \u043f\u043e\u0442\u0440\u0435\u0431\u043d\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0435\u0442\u043e\u0434\u0430 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0440\u043d\u044b\u0445 \u0434\u0440\u043e\u0431\u0435\u0439 \u0438 \u0442\u0430\u0431\u043b\u0438\u0446 \u041b\u0430\u043f\u043b\u0430\u0441\u0430.<br \/>  \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u0443\u0447\u0435\u0431\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0442\u043e\u0434\u0430 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0437\u0430 \u0441\u0447\u0451\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u044b (5) \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430 \u0432 NumPy \u0434\u043b\u044f \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438.<\/p>\n<p>  \u0414\u043b\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0439 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043c\u0435\u0442\u043e\u0434\u0430 \u0440\u0435\u0448\u0438\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439:<br \/>  <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/bf6\/53b\/65a\/bf653b65aff0dfb60c651ccccc0014ab.svg\" alt=\"$\\begin{cases}2x''+6x-2=0,\\\\y''-2x+2y=40\\cdot \\sin(3t),\\end{cases} (6)$\" data-tex=\"inline\"><\/math><br \/>  \u0441 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u043c\u0438 <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/dc9\/a94\/5fd\/dc9a945fd744ea955e8f768adc959ded.svg\" alt=\"$x(0)=y(0)=y'(0)=0.$\" data-tex=\"inline\"><\/math><\/p>\n<p>  \u0423\u043f\u0440\u043e\u0449\u0451\u043d\u043d\u0430\u044f \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c, \u0437\u0430\u0434\u0430\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 (6) \u043f\u0440\u0438 \u043d\u0443\u043b\u0435\u0432\u044b\u0445 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u0445:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/lq\/yf\/z7\/lqyfz7mwkd6eoesoou5ygcxngna.jpeg\"><\/p>\n<p>  \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0441\u0438\u043b\u0430 <i>f(t)<\/i> \u0432\u043d\u0435\u0437\u0430\u043f\u043d\u043e \u043f\u0440\u0438\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u043a\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0435 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u043c\u0430\u0441\u0441\u044b \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 <i>t = 0<\/i>, \u043a\u043e\u0433\u0434\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043f\u043e\u043a\u043e\u0435 \u0432 \u0435\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0440\u0430\u0432\u043d\u043e\u0432\u0435\u0441\u0438\u044f.<\/p>\n<p>  \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u043e \u0440\u0430\u043d\u0435\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u043d\u043e\u043c\u0443 \u0440\u0435\u0448\u0435\u043d\u0438\u044e \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f (4), \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438\u0432\u043e\u0436\u0443 \u0442\u0435\u043a\u0441\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0431\u0435\u0437 \u043f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0439.  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0422\u0435\u043a\u0441\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">from sympy import * import numpy as np import matplotlib.pyplot as plt var('s') var('t ', positive=True) var('X Y', cls = Function) x0 = 0 x01 =0 y0 = 0 y01 =0 g=40*sin(3*t) Lg=laplace_transform( g, t, s, noconds = True) de1=Eq(2*(s**2*X(s)-s*x0-x01)+6*X(s)-2*Y(s)) de2=Eq(s**2*Y(s)-s*y0-y01-2*X(s)+2*Y(s)-Lg) rez=solve([de1,de2],X(s),Y(s)) rezX=expand(rez[X(s)]) solnX = inverse_laplace_transform(rezX,s,t) rezY=expand(rez[Y(s)]) solnY = inverse_laplace_transform(rezY,s,t) f=lambdify(t,solnX ,\"numpy\") F=lambdify(t,solnY ,\"numpy\") x = np.linspace(0,4*np.pi,100) plt.title('\u0424\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0442\u043e\u0447\u0435\u043a \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u0430\u0441\u0441:\\n x(t)=%s\\n y(t)=%s' %(solnX,solnY)) plt.grid(True) plt.xlabel(' t ',fontsize=12) plt.ylabel('x(t), y(t)',fontsize=12) plt.plot(x,f(x),'g', linewidth=2, label='x(t)') plt.plot(x,F(x),'b', linewidth=2, label='y(t)') plt.legend(loc='best') plt.show() <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <b>\u041f\u043e\u043b\u0443\u0447\u0438\u043c:<\/b><br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/mv\/4l\/q6\/mv4lq6dnyzolk7_1hnuqut5e4hc.png\"><\/p>\n<p>  \u0414\u043b\u044f \u043d\u0435\u043d\u0443\u043b\u0435\u0432\u044b\u0445 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u0442\u0435\u043a\u0441\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0438 \u0433\u0440\u0430\u0444\u0438\u043a \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043f\u0440\u0438\u043c\u0435\u0442 \u0432\u0438\u0434:  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0422\u0435\u043a\u0441\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">from sympy import * import numpy as np import matplotlib.pyplot as plt var('s') var('t ', positive=True) var('X Y', cls = Function) x0 =0 x01 =-1 y0 =0 y01 =-1 g=40*sin(t) Lg=laplace_transform( g, t, s, noconds = True) de1=Eq(2*(s**2*X(s)-s*x0-x01)+6*X(s)-2*Y(s)) de2=Eq(s**2*Y(s)-s*y0-y01-2*X(s)+2*Y(s)-Lg) rez=solve([de1,de2],X(s),Y(s)) rezX=expand(rez[X(s)]) solnX = (inverse_laplace_transform(rezX,s,t)).evalf().n(3) rezY=expand(rez[Y(s)]) solnY =( inverse_laplace_transform(rezY,s,t)).evalf().n(3)      f=lambdify(t,solnX ,\"numpy\") F=lambdify(t,solnY ,\"numpy\") x = np.linspace(0,4*np.pi,100) plt.title( '\u0424\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0442\u043e\u0447\u0435\u043a \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u0430\u0441\u0441:\\n x(t)= %s \\n y(t)=%s ' %(solnX,solnY)) plt.grid(True) plt.xlabel(' t ',fontsize=12) plt.ylabel('x(t), y(t)',fontsize=12) plt.plot(x,f(x),'g', linewidth=2, label='x(t)') plt.plot(x,F(x),'b', linewidth=2, label='y(t)') plt.legend(loc='best') plt.show() <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/pi\/lt\/db\/piltdbzyf4n58i4ek8wipsdruza.png\"><\/p>\n<p>  \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043b\u0438\u043d\u0435\u0439\u043d\u043e\u0433\u043e \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0447\u0435\u0442\u0432\u0451\u0440\u0442\u043e\u0433\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0430 \u0441 \u043d\u0443\u043b\u0435\u0432\u044b\u043c\u0438 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u043c\u0438:<br \/>  <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/60b\/94b\/430\/60b94b43054cd38b7b4e6ffe83117cb7.svg\" alt=\"$x^{(4)}+2\\cdot x''+x=4\\cdot t\\cdot e^{t};$\" data-tex=\"inline\"><\/math><br \/>  <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/b1c\/953\/a50\/b1c953a503f2f9d276692d97d226d8d3.svg\" alt=\"$x(0)=x'(0)=x''(0)=x^{(3)}(0)=0.$\" data-tex=\"inline\"><\/math><\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0422\u0435\u043a\u0441\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b:<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">from sympy import * import numpy as np import matplotlib.pyplot as plt var('s') var('t ', positive=True) var('X', cls = Function) # \u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f x0=0  x01=0 x02=0 x03=0 g = 4*t*exp(t) Lg=laplace_transform( g, t, s, noconds = True) # \u041f\u0440\u044f\u043c\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 d4=s**4*X(s)-s**3*x0-s**2*x01-s*x02-x03 d2=s**2*X(s)-s*x0-x01 d0=X(s) d=factor(d4+2*d2+d0) de= Eq(d, Lg) rez = solve(de,X(s))[0] # \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0430\u043b\u0433\u0435\u0431\u0440\u0430\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f soln = inverse_laplace_transform(rez,s,t) # \u041e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 f=lambdify(t,soln ,\"numpy\") x = np.linspace(0,6*np.pi,100) plt.title( '\u0420\u0435\u0448\u0435\u043d\u0438\u0435:\\n \u0445 (t)=%s\\n' %soln,fontsize=11) plt.grid(True) plt.xlabel(' t ',fontsize=12) plt.ylabel('x(t)',fontsize=12) plt.plot(x,f(x),'g', linewidth=2) plt.show() <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <b>\u0413\u0440\u0430\u0444\u0438\u043a \u0440\u0435\u0448\u0435\u043d\u0438\u044f:<\/b><br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/vh\/af\/82\/vhaf82hrfe42xunqusxcwyn4k3w.png\"><\/p>\n<p>  \u0420\u0435\u0448\u0438\u043c \u043b\u0438\u043d\u0435\u0439\u043d\u043e\u0435 \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 \u0447\u0435\u0442\u0432\u0451\u0440\u0442\u043e\u0433\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0430:<br \/>  <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/b7f\/200\/9e2\/b7f2009e235cafb2dc765fb731620643.svg\" alt=\"$x^{(4)}+13x''+36x=0;$\" data-tex=\"inline\"><\/math><br \/>  \u0441 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u043c\u0438 <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/5c6\/27a\/d82\/5c627ad8206c0e3ca756e34602145921.svg\" alt=\"$x(0)=x''(0)=0$\" data-tex=\"inline\"><\/math>, <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/56b\/ca0\/689\/56bca0689ea1f93b99803c374b1d1011.svg\" alt=\"$x'(0)=2$\" data-tex=\"inline\"><\/math>, <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/bcd\/3f0\/775\/bcd3f0775524f5b1ec7722cd8000be82.svg\" alt=\"$x^{(3)}(0)=-13$\" data-tex=\"inline\"><\/math>.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0422\u0435\u043a\u0441\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b:<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">from sympy import * import numpy as np import matplotlib.pyplot as plt var('s') var('t ', positive=True) var('X', cls = Function) # \u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f x0 =0 x01 =2 x02=0 x03=-13 d4=s**4*X(s)-s**3*x0-s**2*x01-s*x02-x03 d2=s**2*X(s)-s*x0-x01 d0=X(s) d=factor(d4+13*d2+36*d0) de  = Eq(d, 0) rez = solve(de,X(s))[0] # \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0430\u043b\u0433\u0435\u0431\u0440\u0430\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f soln = inverse_laplace_transform(rez,s,t) # \u041e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 f=lambdify(t,soln ,\"numpy\") x = np.linspace(0,6*np.pi,100) plt.title('\u0420\u0435\u0448\u0435\u043d\u0438\u0435:\\n \u0445 (t)=%s\\n' %soln,fontsize=11) plt.grid(True) plt.xlabel(' t ',fontsize=12) plt.ylabel('x(t)',fontsize=12) plt.plot(x,f(x),'g', linewidth=2) plt.show() <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <b>\u0413\u0440\u0430\u0444\u0438\u043a \u0440\u0435\u0448\u0435\u043d\u0438\u044f:<\/b><br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/lb\/uv\/rs\/lbuvrsjxqc_kvev-njvnlt8jt9a.png\"><\/p>\n<h3>\u0424\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u041e\u0414\u0423<\/h3>\n<p>  \u0414\u043b\u044f \u0438\u043c\u0435\u044e\u0449\u0438\u0445 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u041e\u0414\u0423 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c \u041e\u0414\u0423 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f <b>dsolve()<\/b>:<br \/>  sympy.solvers.ode.<b>dsolve<\/b>(eq, func=None, hint=&#8217;default&#8217;, simplify=True, ics=None, xi=None, eta=None, x0=0, n=6, **kwargs)<\/p>\n<p>  \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0440\u0430\u0432\u043d\u0438\u043c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 dsolve() \u0441 \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u041b\u0430\u043f\u043b\u0430\u0441\u0430. \u0414\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0432\u043e\u0437\u044c\u043c\u0451\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \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 \u0447\u0435\u0442\u0432\u0451\u0440\u0442\u043e\u0439 \u0441\u0442\u0435\u043f\u0435\u043d\u0438 \u0441 \u043d\u0443\u043b\u0435\u0432\u044b\u043c\u0438 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u043c\u0438:<br \/>  <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/b6e\/557\/822\/b6e557822c0057c247c59ab3a5ec67bd.svg\" alt=\"$x^{(IV)}(t)=3\\cdot x'''(t)-x(t)=4\\cdot t\\cdot \\exp(t);$\" data-tex=\"inline\"><\/math><br \/>  <math><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/3af\/c58\/efd\/3afc58efd03ee4af458e4ed21097ded9.svg\" alt=\"$x(0)=x'(0)=x''(0)=x'''(0)=0.$\" data-tex=\"inline\"><\/math>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 dsolve():<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">import time start = time.time() import numpy as np from sympy import * import matplotlib.pyplot as plt var('t C1 C2 C3 C4') u = Function(\"u\")(t) de = Eq(u.diff(t,t,t,t) -3*u.diff(t,t,t)+3*u.diff(t,t)-u.diff(t),4*t*exp(t)) # \u0417\u0430\u043f\u0438\u0441\u044c \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f des = dsolve(de,u) # \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f #\u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f eq1=des.rhs.subs(t,0) eq2=des.rhs.diff(t).subs(t,0) eq3=des.rhs.diff(t,t).subs(t,0) eq4=des.rhs.diff(t,t,t).subs(t,0) # \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0430\u043b\u0433\u0435\u0431\u0440\u0430\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0434\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 seq=solve([eq1,eq2-1,eq3-2,eq4-3],C1,C2,C3,C4) rez=des.rhs.subs([(C1,seq[C1]),(C2,seq[C2]),(C3,seq[C3]),(C4,seq[C4])]) F = Lambda(t,rez) f=lambdify(t, rez, 'numpy') x = np.linspace(0,6*np.pi,100) stop = time.time() print ('\u0412\u0440\u0435\u043c\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 dsolve(): %s s' %round((stop-start),3))  plt.title('\u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 dsolve():\\n \u0445 (t)=%s\\n' %rez,fontsize=11) plt.grid(True) plt.xlabel('Time t seconds',fontsize=12) plt.ylabel('f(t)',fontsize=16) plt.plot(x,f(x),color='#008000', linewidth=3) plt.show() <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <b>\u041f\u043e\u043b\u0443\u0447\u0438\u043c:<\/b><br \/>  \u0412\u0440\u0435\u043c\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 dsolve(): 1.437 s <br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/gc\/wm\/ei\/gcwmei24uj-q5cjqjnnzexy_ttq.png\">  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u041b\u0430\u043f\u043b\u0430\u0441\u0430:<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"python\">import time start = time.time() from sympy import * import numpy as np import matplotlib.pyplot as plt var('s') var('t ', positive=True) var('X', cls = Function) #\u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f x0 =0 x01 =0 x02=0 x03=0 g = 4*t*exp(t) # \u0417\u0430\u043f\u0438\u0441\u044c \u043b\u0435\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f Lg=laplace_transform( g, t, s, noconds = True) # \u041f\u0440\u044f\u043c\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 d4=s**4*X(s)-s**3*x0-s**2*x01-s*x02-x03 d3=s**3*X(s)-s**2*x0-s*x01-x02 d2=s**2*X(s)-s*x0-x01 d1=s*X(s)-x0 d0=X(s) d=factor(d4-3*d3+3*d2- d1) # \u0417\u0430\u043f\u0438\u0441\u044c \u043f\u0440\u0430\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f de= Eq(d, Lg) rez = solve(de,X(s))[0] # \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0430\u043b\u0433\u0435\u0431\u0440\u0430\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f soln =collect(inverse_laplace_transform(rez,s,t),t) # \u041e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 f=lambdify(t,soln , 'numpy') x = np.linspace(0,6*np.pi,100) stop = time.time() print ('\u0412\u0440\u0435\u043c\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430: %s s' %round((stop-start),3))  plt.title ('\u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430:\\n \u0445 (t)=%s\\n' %soln,fontsize=11) plt.grid(True) plt.xlabel(' t ',fontsize=12) plt.ylabel('x(t)',fontsize=12) plt.plot(x,f(x),'g', linewidth=2) plt.show() <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <b>\u041f\u043e\u043b\u0443\u0447\u0438\u043c:<\/b><br \/>  \u0412\u0440\u0435\u043c\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430: 3.274 s<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/de\/ox\/ib\/deoxib8hfyfwpd12s0buzjnnwgk.png\"><\/p>\n<p>  \u0418\u0442\u0430\u043a, \u0444\u0443\u043d\u043a\u0446\u0438\u044f dsolve() (1.437 s) \u0440\u0435\u0448\u0430\u0435\u0442 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0447\u0435\u0442\u0432\u0451\u0440\u0442\u043e\u0433\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0430 \u0431\u044b\u0441\u0442\u0440\u0435\u0435, \u0447\u0435\u043c \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u043e \u043c\u0435\u0442\u043e\u0434\u0443 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 (3.274 s) \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u043c \u0432 \u0434\u0432\u0430 \u0440\u0430\u0437\u0430. \u041e\u0434\u043d\u0430\u043a\u043e \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u044f dsolve() \u043d\u0435 \u0440\u0435\u0448\u0430\u0435\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u0440\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b (6) \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u044f dsolve() \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u043e\u0448\u0438\u0431\u043a\u0430:  <\/p>\n<pre><code class=\"python\">from sympy import* t = symbols('t') x, y = symbols('x, y', Function=True) eq = (Eq(Derivative(x(t),t,2),-3*x(t)+y(t)), Eq(Derivative(y(t),t,2),2*x(t)-2*y(t)+40*sin(3*t))) rez=dsolve(eq) print(list(rez)) <\/code><\/pre>\n<p>  <b>\u041f\u043e\u043b\u0443\u0447\u0438\u043c:<\/b><br \/>  raiseNotImplementedError<br \/>  NotImplementedError<\/p>\n<p>  \u0414\u0430\u043d\u043d\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <b>dsolve()<\/b> \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e \u0441\u0438\u043c\u0432\u043e\u043b\u0438\u0447\u0435\u0441\u043a\u0438. \u0422\u043e\u0433\u0434\u0430 \u043a\u0430\u043a \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0441\u0438\u043c\u0432\u043e\u043b\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f, \u0438 \u044d\u0442\u043e \u0434\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430.<\/p>\n<p>  <b>\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435.<\/b><br \/>  \u0414\u043b\u044f \u0442\u043e\u0433\u043e \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u0439\u0442\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0439 \u043c\u0435\u0442\u043e\u0434 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <b>dsolve()<\/b>, \u043d\u0443\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <b>classify_ode(eq, f(x))<\/b>, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:  <\/p>\n<pre><code class=\"python\">from sympy import * from IPython.display import * import matplotlib.pyplot as plt init_printing(use_latex=True)  x=Symbol('x') f=Function('f') eq=Eq(f(x).diff(x,x)+f(x),0) print(dsolve(eq,f(x))) print(classify_ode(eq, f(x)))  eq = sin(x)*cos(f(x)) + cos(x)*sin(f(x))*f(x).diff(x) print(classify_ode(eq, f(x))) rez=dsolve(eq, hint='almost_linear_Integral') print(rez) <\/code><\/pre>\n<p>  <b>\u041f\u043e\u043b\u0443\u0447\u0438\u043c:<\/b><\/p>\n<p>  Eq(f(x), C1*sin(x) + C2*cos(x))<br \/>  (&#8216;nth_linear_constant_coeff_homogeneous&#8217;, &#8216;2nd_power_series_ordinary&#8217;)<br \/>  (&#8216;separable&#8217;, &#8216;1st_exact&#8217;, &#8216;almost_linear&#8217;, &#8216;1st_power_series&#8217;, &#8216;lie_group&#8217;, &#8216;separable_Integral&#8217;, &#8216;1st_exact_Integral&#8217;, &#8216;almost_linear_Integral&#8217;)<br \/>  [Eq(f(x), -acos((C1 + Integral(0, x))*exp(-Integral(-tan(x), x))) + 2*pi), Eq(f(x), acos((C1 + Integral(0,x))*exp(-Integral(-tan(x), x))))]<\/p>\n<p>  \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0434\u043b\u044f \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f <i>eq=Eq(f(x).diff(x,x)+f(x),0)<\/i> \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043b\u044e\u0431\u043e\u0439 \u043c\u0435\u0442\u043e\u0434 \u0438\u0437 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430:<br \/>  nth_linear_constant_coeff_homogeneous, <br \/>  2nd_power_series_ordinary<\/p>\n<p>  \u0414\u043b\u044f \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f <i>eq = sin(x)*cos(f(x)) + cos(x)*sin(f(x))*f(x).diff(x)<\/i> \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043b\u044e\u0431\u043e\u0439 \u043c\u0435\u0442\u043e\u0434 \u0438\u0437 \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430:<br \/>  separable, 1st_exact, almost_linear, <br \/>  1st_power_series, lie_group, separable_Integral, <br \/>  1st_exact_Integral, almost_linear_Integral<\/p>\n<p>  \u0427\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434, \u0437\u0430\u043f\u0438\u0441\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 dsolve() \u043f\u0440\u0438\u043c\u0435\u0442 \u0432\u0438\u0434, \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443:  <\/p>\n<pre><code class=\"python\">rez=dsolve(eq, hint='almost_linear_Integral') <\/code><\/pre>\n<h3>\u0412\u044b\u0432\u043e\u0434:<\/h3>\n<p>   \u0414\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u0441\u0432\u043e\u0435\u0439 \u0446\u0435\u043b\u044c\u044e \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c, \u043a\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a SciPy \u0438 NumPy \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u041e\u0414\u0423 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043d\u044b\u043c \u043c\u0435\u0442\u043e\u0434\u043e\u043c. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0431\u044b\u043b\u0438 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u044b \u043c\u0435\u0442\u043e\u0434\u044b \u0441\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u041b\u0430\u043f\u043b\u0430\u0441\u0430. \u041f\u0440\u043e\u0432\u0435\u0434\u0435\u043d \u0430\u043d\u0430\u043b\u0438\u0437 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u044d\u0442\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 \u0438 \u043c\u0435\u0442\u043e\u0434\u043e\u0432, \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 dsolve().<\/p>\n<p>  <b>\u0421\u0441\u044b\u043b\u043a\u0438:<\/b><br \/>  1. \u0414\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0438 \u043a\u0440\u0430\u0435\u0432\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438: \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Mathematica, Maple \u0438 MATLAB. 3-\u0435 \u0438\u0437\u0434\u0430\u043d\u0438\u0435.: \u041f\u0435\u0440. \u0441 \u0430\u043d\u0433\u043b. \u2014 \u041c.: \u041e\u041e\u041e \u00ab\u0418.\u0414. \u0412\u0438\u043b\u044c\u044f\u043c\u0435\u00bb, 2008. \u2014 1104 \u0441.: \u0438\u043b. \u2014 \u041f\u0430\u0440\u0430\u043b. \u0442\u0438\u0442. \u0430\u043d\u0433\u043b.<br \/>  2. <a href=\"https:\/\/habr.com\/post\/346338\/\">\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0434\u043b\u044f \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0432\u0435\u043d\u044c\u0435\u0432 \u0441\u0438\u0441\u0442\u0435\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f<\/a><\/div>\n<p>        <script class=\"js-mediator-script\">!function(e){function t(t,n){if(!(n in e)){for(var r,a=e.document,i=a.scripts,o=i.length;o--;)if(-1!==i[o].src.indexOf(t)){r=i[o];break}if(!r){r=a.createElement(\"script\"),r.type=\"text\/javascript\",r.async=!0,r.defer=!0,r.src=t,r.charset=\"UTF-8\";var d=function(){var e=a.getElementsByTagName(\"script\")[0];e.parentNode.insertBefore(r,e)};\"[object Opera]\"==e.opera?a.addEventListener?a.addEventListener(\"DOMContentLoaded\",d,!1):e.attachEvent(\"onload\",d):d()}}}t(\"\/\/mediator.mail.ru\/script\/2820404\/\",\"_mediator\")}(window);<\/script>     <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\/post\/426041\/\"> https:\/\/habr.com\/post\/426041\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html js-mediator-article\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/17\/x9\/uw\/17x9uwkvvlnn2gxa0wc3hsonvnk.jpeg\"><\/p>\n<p>  \u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Python \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0441\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u043e\u0447\u0435\u043d\u044c \u0443\u0434\u043e\u0431\u043d\u0430 \u043f\u0440\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0437\u0430\u0434\u0430\u0447 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f\u043c\u0438. \u0414\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0448\u0438\u0440\u043e\u043a\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435, \u0433\u043e\u0432\u043e\u0440\u044f \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u043d\u043e, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u0441\u0432\u0435\u0441\u0442\u0438 \u0437\u0430\u0434\u0430\u0447\u0443 \u043a \u0440\u0435\u0448\u0435\u043d\u0438\u044e \u043f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0445 \u0430\u043b\u0433\u0435\u0431\u0440\u0430\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439.<br \/>  \u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u0440\u044f\u043c\u043e\u0433\u043e \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0438\u0437 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 SymPy, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434 \u041b\u0430\u043f\u043b\u0430\u0441\u0430 \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0434\u0438\u0444\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438 Python.  <\/p>\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-290719","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/290719","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=290719"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/290719\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=290719"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=290719"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=290719"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}