{"id":594,"date":"2025-01-30T00:56:00","date_gmt":"2025-01-30T08:56:00","guid":{"rendered":"https:\/\/dornsife.usc.edu\/scribe\/?p=594"},"modified":"2025-10-21T00:58:15","modified_gmt":"2025-10-21T07:58:15","slug":"linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator","status":"publish","type":"post","link":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/","title":{"rendered":"Linear Embeddings of Nonlinear Dynamics with the Koopman Operator"},"content":{"rendered":"\n\n\n\n\n  \n    \n\n\n\n\n\n\n<div\n  class=\"cc--component-container cc--article-hero \"\n\n  \n  \n  \n  \n  \n  \n  >\n  <div class=\"c--component c--article-hero\"\n    \n      >\n\n    \n<div class=\"inner-wrapper\">\n  \n  \n  <div class=\"text-wrapper\">\n    \n              \n<div class=\"f--field f--page-title\">\n\n    \n  <h1>Linear Embeddings of Nonlinear Dynamics with the Koopman Operator<\/h1>\n\n\n<\/div>\n    \n    \n          <strong class=\"author-field\"><span >By<\/span>Oliver Khan<\/strong>\n    \n          <span class=\"post-date-field\">January 30, 2025<\/span>\n      <\/div>\n<\/div>\n\n\n  <\/div><\/div>\n\n  \n    \n\n\n\n\n\n\n<div\n  class=\"cc--component-container cc--social-share \"\n\n  \n  \n  \n  \n  \n  \n  >\n  <div class=\"c--component c--social-share\"\n    \n      >\n\n    \n  <div class=\"content-wrapper\">\n    <span class=\"a2a_kit a2a_kit_size_32 addtoany_list\" style=\"line-height: 32px;\">\n      <span class=\"title\">\n        Share\n      <\/span>\n                        <a class=\"a2a_button_copy_link\" target=\"_blank\" href=\"\/#copy_link\" rel=\"nofollow noopener\" title=\"Link\">\n            <span class=\"a2a_svg a2a_s__default a2a_s_copy_link\">\n              <svg height=\"19\" viewBox=\"0 0 19 19\" width=\"19\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"m7.43475275 9.52380952-2.17490843 2.26076008c-1.08745421 1.058837-1.68841575 2.518315-1.68841575 4.0350275 0 1.5167124.60096154 2.9475732 1.68841575 4.0350274 1.058837 1.0874543 2.51831502 1.6884158 4.03502747 1.6884158 1.44087681 0 2.80427251-.5423678 3.86936601-1.5289606l.1656615-.1594552 2.2321428-2.2321428-1.6311813-1.6311813-2.2321429 2.26076c-.6581959.658196-1.5167124 1.0016026-2.43246332 1.0016026s-1.7742674-.3434066-2.43246337-1.0016026c-.65819597-.6581959-1.00160257-1.5167124-1.00160257-2.4324633 0-.8547009.2991453-1.6595442.87416905-2.2981957l.12743352-.1342677 2.23214286-2.2321429zm6.88661855-.40736607-5.26116068 5.26116075 1.61881868 1.6188186 5.2611607-5.2611607zm1.3837569-5.54501488c-1.4408768 0-2.8042725.54236779-3.869366 1.52896062l-.1656615.15945513-2.23214282 2.23214286 1.63118132 1.63118132 2.2321429-2.23214286c.6581959-.65819597 1.5167124-1.00160256 2.4324633-1.00160256s1.7742674.34340659 2.4324634 1.00160256 1.0016026 1.51671246 1.0016026 2.43246337c0 .85470089-.2991453 1.65954419-.8741691 2.29819559l-.1274335.1342678-2.2321429 2.2321428 1.5739469 1.5739469 2.2321429-2.2321428c1.0874542-1.058837 1.6884157-2.5183151 1.6884157-4.03502751 0-1.51671245-.6009615-2.94757326-1.6884157-4.03502747-1.058837-1.08745421-2.518315-1.68841575-4.0350275-1.68841575z\" transform=\"translate(-3 -3)\"\/><\/svg>\n            <\/span>\n            <span class=\"a2a_label visually-hidden\">Copy Link<\/span>\n          <\/a>\n                                <a class=\"a2a_button_facebook\" target=\"_blank\" href=\"\/#facebook\" rel=\"nofollow noopener\" title=\"Facebook\">\n            <span class=\"a2a_svg a2a_s__default a2a_s_facebook\">\n              <svg height=\"19\" viewBox=\"0 0 19 19\" width=\"19\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"m23.9512 6h-16.9024c-.57923625 0-1.0488.46956375-1.0488 1.0488v16.9024c0 .5792362.46956375 1.0488 1.0488 1.0488h9.10024v-7.34768h-2.46772v-2.87584h2.46772v-2.11508c0-2.45404 1.49872-3.79012 3.68828-3.79012.7389668-.00263323 1.4775241.03516995 2.21236.11324v2.56348h-1.51392c-1.18788 0-1.4174.56544-1.4174 1.39612v1.8316h2.84772l-.37088 2.87584h-2.47684v7.34844h4.83284c.5792362 0 1.0488-.4695638 1.0488-1.0488v-16.9024c0-.57923625-.4695638-1.0488-1.0488-1.0488z\" fill-rule=\"evenodd\" transform=\"translate(-6 -6)\"\/><\/svg>\n            <\/span>\n            <span class=\"a2a_label visually-hidden\">Facebook<\/span>\n          <\/a>\n                                <a class=\"a2a_button_twitter\" target=\"_blank\" href=\"\/#twitter\" rel=\"nofollow noopener\" title=\"X\">\n            <span class=\"a2a_svg a2a_s__default a2a_s_twitter\">\n              <svg version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" x=\"0px\"\n\t y=\"0px\" viewBox=\"0 0 30 30\" enable-background=\"new 0 0 30 30\" xml:space=\"preserve\" width=\"19\" height=\"19\">\n<path fill=\"#000\" fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M14.5,16.2l-0.8-1.1l-6.3-9h2.7l5.1,7.3l0.8,1.1\n\tl6.6,9.4h-2.7L14.5,16.2L14.5,16.2z M16.9,13.4l7.4-8.7h-1.8l-6.5,7.5L11,4.8H5l7.8,11.4L5,25.2h1.8l6.8-7.9l5.5,7.9h6L16.9,13.4\n\tL16.9,13.4z\"\/>\n<\/svg>\n\n            <\/span>\n            <span class=\"a2a_label visually-hidden\">X<\/span>\n          <\/a>\n                                <a class=\"a2a_button_linkedin\" target=\"_blank\" href=\"\/#linkedin\" rel=\"nofollow noopener\" title=\"Linkedin\">\n            <span class=\"a2a_svg a2a_s__default a2a_s_linkedin\">\n              <svg height=\"19\" viewBox=\"0 0 19 19\" width=\"19\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"m25 21.4220779c0 1.974026-1.6038961 3.5779221-3.5779221 3.5779221h-11.84415582c-1.97402598 0-3.57792208-1.6038961-3.57792208-3.5779221v-11.84415582c0-1.97402598 1.6038961-3.57792208 3.57792208-3.57792208h11.84415582c1.974026 0 3.5779221 1.6038961 3.5779221 3.57792208zm-14.5584416-12.21428569c-.98701295 0-1.60389606.61688311-1.60389606 1.48051949-.12337663.8636364.49350649 1.4805195 1.48051946 1.4805195.987013 0 1.6038961-.6168831 1.6038961-1.4805195 0-.86363638-.6168831-1.48051949-1.4805195-1.48051949zm1.3571429 12.70779219v-8.6363636h-2.83766234v8.6363636zm10.2402597 0v-4.9350649c0-2.5909091-1.3571428-3.8246753-3.3311688-3.8246753-1.4805195 0-2.0974026.8636363-2.4675325 1.4805194v-1.2337662h-2.8376623v8.6363636h2.8376623v-4.9350649c0-.2467532 0-.4935065.1233767-.7402597.1233766-.4935065.6168831-.987013 1.4805194-.987013.987013 0 1.4805195.7402597 1.4805195 1.974026v4.564935z\" transform=\"translate(-6 -6)\"\/><\/svg>\n            <\/span>\n            <span class=\"a2a_label visually-hidden\">LinkedIn<\/span>\n          <\/a>\n                                <a class=\"a2a_button_bluesky\" target=\"_blank\" href=\"\/#bluesky\" rel=\"nofollow noopener\" title=\"Bluesky\">\n            <span class=\"a2a_svg a2a_s__default a2a_s_bluesky\">\n              <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"50px\" height=\"50px\" viewBox=\"0 0 24 24\">\n                <path fill=\"#00000\" d=\"M12 10.8c-1.087-2.114-4.046-6.053-6.798-7.995C2.566.944 1.561 1.266.902 1.565C.139 1.908 0 3.08 0 3.768c0 .69.378 5.65.624 6.479c.815 2.736 3.713 3.66 6.383 3.364c.136-.02.275-.039.415-.056c-.138.022-.276.04-.415.056c-3.912.58-7.387 2.005-2.83 7.078c5.013 5.19 6.87-1.113 7.823-4.308c.953 3.195 2.05 9.271 7.733 4.308c4.267-4.308 1.172-6.498-2.74-7.078a8.741 8.741 0 0 1-.415-.056c.14.017.279.036.415.056c2.67.297 5.568-.628 6.383-3.364c.246-.828.624-5.79.624-6.478c0-.69-.139-1.861-.902-2.206c-.659-.298-1.664-.62-4.3 1.24C16.046 4.748 13.087 8.687 12 10.8\"  fill-rule=\"evenodd\" \/>\n              <\/svg>\n            <\/span>\n            <span class=\"a2a_label visually-hidden\">Bluesky<\/span>\n          <\/a>\n                                <a class=\"a2a_button_email\" target=\"_blank\" href=\"\/#email\" rel=\"nofollow noopener\" title=\"E-mail\">\n            <span class=\"a2a_svg a2a_s__default a2a_s_print\">\n              <svg height=\"12\" viewBox=\"0 0 18 12\" width=\"18\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"m8.14285714 9.42857143c-.17142857 0-.34285714 0-.51428571.08571428l7.28571427 6.34285719c.3428572.2571428.6857143.2571428.9428572 0l7.2857142-6.34285719c-.0857142-.08571428-.2571428-.08571428-.4285714-.08571428zm-1.28571428 1.11428567v.1714286 8.5714286c0 .6857143.6 1.2857143 1.28571428 1.2857143h14.57142856c.6857143 0 1.2857143-.6 1.2857143-1.2857143v-8.5714286c0-.0857143 0-.0857143 0-.1714286l-7.2 6.3428572c-.7714286.6857143-1.8857143.6857143-2.6571429 0z\" fill-rule=\"evenodd\" transform=\"translate(-6 -9)\"\/><\/svg>\n            <\/span>\n            <span class=\"a2a_label visually-hidden\">Email<\/span>\n          <\/a>\n                  <\/span>\n  <\/div>\n\n  <\/div><\/div>\n \n\n\n\n  \n    \n\n\n\n\n\n\n<div\n  class=\"cc--component-container cc--rich-text \"\n\n  \n  \n  \n  \n  \n  \n  >\n  <div class=\"c--component c--rich-text\"\n    \n      >\n\n    \n      \n<div class=\"f--field f--wysiwyg\">\n\n    \n  <p>Welcome back. In today\u2019s blog post, I am excited to discuss Koopman operator theory, which provides a mathematical framework for representing nonlinear dynamics as a linear system. This theory was originally developed by Columbia University professor Bernard Koopman in 1931 [1], but remained in relative obscurity until the 2000s, when modern computers allowed it to be applied in fluid mechanics research [2]. Koopman operator theory was compelling for many fluid dynamicists because fluid flows are nonlinear, and it can be very challenging to model and control them. However, with a linear representation of a flow field, researchers can apply classical linear systems techniques to uncover flow physics, and design control laws using traditional methods from linear control theory, such as the linear quadratic regulator (LQR). While Koopman operator theory has its limitations, and some researchers have moved on to different tools, it is still a fascinating piece of mathematics that is worth exploring. Therefore, I will provide a brief introduction to what the Koopman operator is, and how it can be represented in continuous and discrete-time settings. I will then discuss the importance of eigenfunctions of the Koopman operator, and conclude with some brief considerations of the challenges and limitations of this framework.<\/p>\n<p><strong>Koopman Operator for Continuous-Time Dynamical Systems<\/strong><\/p>\n<p>Suppose we have a continuous-time dynamical system of the form:<\/p>\n<p>dx\/dt = f(x), (1)<\/p>\n<p>for some state vector x \u2208 \u211d<sup>n<\/sup>\u00a0and nonlinear vector field f: \u211d<sup>n<\/sup>\u2192 \u211d<sup>n<\/sup>. The system could represent a discretization of the Navier-Stokes equations on a grid for computational fluid dynamics (CFD) simulations. Now suppose there is a function g: \u211d<sup>n<\/sup>\u2192 \u211d that takes the state vector x and maps it to some measurement of the state vector, g(x). It turns out that the dynamics of g(x) can actually be represented represented as a linear dynamical system for some linear operator K, called the Koopman operator:<\/p>\n<p>d\/dt g(x) = K g(x). (2)<\/p>\n<p>This is absolutely amazing, but there is a slight technicality in that K is an infinite-dimensional operator that acts on the entire function space of measurements g. This presents some difficulties in computing K that we will explore in a moment.<\/p>\n<p><strong>Koopman Operator for Discrete-Time Dynamical Systems<\/strong><\/p>\n<p>The Koopman operator can also be defined for a discrete-time dynamical system, of the form:<\/p>\n<p>x<sub>k+1<\/sub>\u00a0= f(x<sub>k<\/sub>). (3)<\/p>\n<p>In this case, the Koopman operator pushes measurements of the state at time k to measurements of the state at time k + 1:<\/p>\n<p>g(x<sub>k+1<\/sub>) = K g(x<sub>k<\/sub>). (4)<\/p>\n<p>This discrete-time formulation can be useful for dynamical systems modeled on computers, since numerical integrators always have a finite-step size, and discrete-time operators can be defined for continuous-time systems using the flow map. (For more information on the flow map, please check out any of the blogs on the finite-time Lyapunov exponent!)<\/p>\n<p><strong>Eigenfunctions of the Koopman Operator in Continuous-Time<\/strong><\/p>\n<p>Since the Koopman operator is infinite-dimensional, it can be challenging to compute it. However, one possible remedy is to define the measurement g in terms of a finite set of basis functions that form an invariant subspace under the Koopman operator. If this can be done, then g(x(t)) can be represented in terms of the same finite set of basis functions at any time t, and the action of the Koopman operator on those basis functions can be represented in terms of a finite-dimensional matrix. A natural set of basis functions of a Koopman-invariant subspace are eigenfunctions of the Koopman operator.<\/p>\n<p>Suppose that \ud835\udf11<sub>j<\/sub>\u00a0is an eigenfunction of the Koopman operator with eigenvalue \ud835\udf06<sub>j<\/sub>, which obeys the relation:<\/p>\n<p>K \ud835\udf11<sub>j<\/sub>\u00a0= \ud835\udf06<sub>j<\/sub>\u00a0\ud835\udf11<sub>j<\/sub>. (5)<\/p>\n<p>Also suppose, now, that g can be written as a finite linear combination of eigenfunctions:<\/p>\n<p>g(x) = \u2211<sub>1 \u2264 j \u2264 n<\/sub>\u00a0\ud835\udf11<sub>j<\/sub>\u00a0v<sub>j<\/sub>, (6)<\/p>\n<p>where v<sub>j<\/sub>\u00a0is a Koopman mode. Then, the action of the Koopman operator on g(x) can be represented as:<\/p>\n<p>d\/dt g(x) = K g(x) = \u2211<sub>1 \u2264 j \u2264 n<\/sub>\u00a0K \ud835\udf11<sub>j<\/sub>(x) v<sub>j<\/sub>\u00a0= \u2211<sub>1 \u2264 j \u2264 n<\/sub>\u00a0\ud835\udf06<sub>j<\/sub>\u00a0\ud835\udf11<sub>j<\/sub>(x) v<sub>j<\/sub>. (7)<\/p>\n<p>The above equation represents a finite-dimensional linear system that can be solved using standard methods. Under \u201cnice\u201d conditions, the solution can be written as:<\/p>\n<p>g(x(t)) = \u2211<sub>1 \u2264 j \u2264 n<\/sub>\u00a0exp(\ud835\udf06<sub>j<\/sub>\u00a0t) \ud835\udf11<sub>j<\/sub>(x(0)) v<sub>j<\/sub>. (8)<\/p>\n<p>Furthermore, a useful partial differential equation (PDE) for the eigenfunctions can be written by substituting \ud835\udf11<sub>j<\/sub>\u00a0for g in equation (2) and applying the chain rule to the left-hand side:<\/p>\n<p>(\u2202\ud835\udf11<sub>j<\/sub>\/\u2202x) f(x) =\u00a0 \ud835\udf06<sub>j<\/sub>\u00a0\ud835\udf11<sub>j<\/sub>. (9)<\/p>\n<p>Although this PDE for \ud835\udf11<sub>j<\/sub>\u00a0and \ud835\udf06<sub>j<\/sub>\u00a0can be insightful, it is also challenging to solve since it has varying coefficients defined by f(x).<\/p>\n<p><strong>Eigenfunctions of the Koopman Operator in Discrete-Time<\/strong><\/p>\n<p>Koopman-invariant subspaces can also be defined in discrete-time using eigenfunctions of the discrete-time Koopman operator. In this case, the eigenfunctions \ud835\udf11<sub>j<\/sub>\u00a0and eigenvalues \ud835\udf06<sub>j<\/sub>\u00a0still obey equation (5), and we suppose that an observable g can still be expressed by equation (6). However, the action of the Koopman operator on the observable now becomes:<\/p>\n<p>g(x<sub>k+1<\/sub>) = K g(x<sub>k<\/sub>) = \u2211<sub>1 \u2264 j \u2264 n<\/sub>\u00a0K \ud835\udf11<sub>j<\/sub>(x<sub>k<\/sub>) v<sub>j<\/sub>\u00a0= \u2211<sub>1 \u2264 j \u2264 n<\/sub>\u00a0\ud835\udf06<sub>j<\/sub>\u00a0\ud835\udf11<sub>j<\/sub>(x<sub>k<\/sub>) v<sub>j<\/sub>. (10)<\/p>\n<p>From this linear recursion, it can be shown that:<\/p>\n<p>g(x<sub>k<\/sub>) = \u2211<sub>1 \u2264 j \u2264 n<\/sub>\u00a0\ud835\udf06<sub>j<\/sub><sup>k<\/sup>\u00a0\ud835\udf11<sub>j<\/sub>(x<sub>0<\/sub>) v<sub>j<\/sub>. (11)<\/p>\n<p>Therefore, the dynamics of g(x<sub>k<\/sub>) can be represented quite cleanly, in terms of the Koopman eigenvalues, eigenfunctions, and modes.<\/p>\n<p><strong>Conclusion<\/strong><\/p>\n<p>I hope I have conveyed the basics of Koopman operator theory, and provided some motivation for why it might be useful when researching nonlinear systems. We have seen that measurements of a state vector are governed by linear finite-dimensional systems as long as the measurements can be represented by a finite set of Koopman eigenfunctions. One of the limitations of Koopman theory is that eigenfunctions are generally difficult to compute, so the theory might have limited applicability in complex systems where eigenfunctions cannot easily be found. Another limitation is that linear systems cannot have coexisting isolated stationary states. Therefore, it can be challenging to adapt Koopman theory to model dynamics between multiple fixed points. In spite of these challenges, the Koopman operator has proved useful for many research projects in fluid mechanics, and therefore deserves to be studied. In future blog posts, I look forward to exploring the Koopman operator in more detail. Until then, please take care.<\/p>\n\n\n\n<\/div>\n\n\n  <\/div><\/div>\n\n\n\n\n  \n    \n\n\n\n\n\n\n<div\n  class=\"cc--component-container cc--rich-text \"\n\n  \n  \n  \n  \n  \n  \n  >\n  <div class=\"c--component c--rich-text\"\n    \n      >\n\n    \n      \n<div class=\"f--field f--wysiwyg\">\n\n    \n  <h6><strong>References<\/strong><\/h6>\n<h6>[1] Koopman, B. O. (1931).\u00a0<a href=\"https:\/\/www.ncbi.nlm.nih.gov\/pmc\/articles\/PMC1076052\">\u201cHamiltonian Systems and Transformations in Hilbert Space\u201d<\/a>.\u00a0<em>Proceedings of the National Academy of Sciences<\/em>. 17(5): 315\u2013318.<\/h6>\n<h6>[2] Mezic, I. (2013). \u201c<a href=\"https:\/\/mgroup.me.ucsb.edu\/sites\/default\/files\/publications\/mezic_-_2013_-_analysis_of_fluid_flows_via_spectral_properties_of_the_koopman_operator.pdf\">Analysis of fluid flows via spectral properties of the Koopman operator<\/a>\u201c.\u00a0<em>Annual Review of Fluid Mechanics<\/em>. 45:357\u201378.<\/h6>\n\n\n\n<\/div>\n\n\n  <\/div><\/div>\n\n\n\n  \n        \n  \n    \n\n\n\n\n\n\n<div\n  class=\"cc--component-container cc--article-related-stories \"\n\n  \n  \n  \n  \n  \n  \n  >\n  <div class=\"c--component c--article-related-stories\"\n    \n      >\n\n    \n  <div class=\"inner-wrapper\">\n              \n<div class=\"f--field f--section-title\">\n\n    \n  <h2>\n          Read more from An Introduction to Flight:\n      <\/h2>\n\n\n<\/div>\n    \n                  <article>\n              \n<div class=\"f--field f--cta-title\">\n\n    \n  <h3>\n          <a href=\"https:\/\/dornsife.usc.edu\/scribe\/2024\/10\/24\/hydrodynamic-stability-non-normality-and-transient-energy-growth\/\" \n                        class=\"\" \n      >Hydrodynamic Stability: Non-Normality and Transient Energy Growth<\/a>\n      <\/h3>\n\n\n<\/div>\n        <\/article>\n              <article>\n              \n<div class=\"f--field f--cta-title\">\n\n    \n  <h3>\n          <a href=\"https:\/\/dornsife.usc.edu\/scribe\/2024\/09\/26\/hydrodynamic-stability-general-form-of-the-linearized-disturbance-equations\/\" \n                        class=\"\" \n      >Hydrodynamic Stability: General Form of the Linearized Disturbance Equations<\/a>\n      <\/h3>\n\n\n<\/div>\n        <\/article>\n              <article>\n              \n<div class=\"f--field f--cta-title\">\n\n    \n  <h3>\n          <a href=\"https:\/\/dornsife.usc.edu\/scribe\/2024\/10\/10\/hydrodynamic-stability-the-orr-sommerfeld-equation\/\" \n                        class=\"\" \n      >Hydrodynamic Stability: The Orr-Sommerfeld Equation<\/a>\n      <\/h3>\n\n\n<\/div>\n        <\/article>\n            <\/div>\n\n\n  <\/div><\/div>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1018,"featured_media":311,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[34,33],"tags":[36,35,43],"class_list":["post-594","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-an-introduction-to-flight","category-past-editor-blogs","tag-an-introduction-to-flight","tag-oliver-khan","tag-spring-2025"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Linear Embeddings of Nonlinear Dynamics with the Koopman Operator<\/title>\n<meta name=\"description\" content=\"An Introduction to Flight by Editor Oliver Khan\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Linear Embeddings of Nonlinear Dynamics with the Koopman Operator - Scribe\" \/>\n<meta property=\"og:description\" content=\"An Introduction to Flight by Editor Oliver Khan\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/\" \/>\n<meta property=\"og:site_name\" content=\"Scribe\" \/>\n<meta property=\"article:published_time\" content=\"2025-01-30T08:56:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-10-21T07:58:15+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/dornsife.usc.edu\/scribe\/wp-content\/uploads\/sites\/491\/2025\/10\/oliver-300x300-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"300\" \/>\n\t<meta property=\"og:image:height\" content=\"300\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Julia Ho\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/2025\\\/01\\\/30\\\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/2025\\\/01\\\/30\\\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\\\/\"},\"author\":{\"name\":\"Julia Ho\",\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/#\\\/schema\\\/person\\\/ddeb07f88c2370aed994934842e2e58d\"},\"headline\":\"Linear Embeddings of Nonlinear Dynamics with the Koopman Operator\",\"datePublished\":\"2025-01-30T08:56:00+00:00\",\"dateModified\":\"2025-10-21T07:58:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/2025\\\/01\\\/30\\\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\\\/\"},\"wordCount\":9,\"image\":{\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/2025\\\/01\\\/30\\\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/wp-content\\\/uploads\\\/sites\\\/491\\\/2025\\\/10\\\/oliver-300x300-1.png\",\"keywords\":[\"an introduction to flight\",\"oliver khan\",\"spring 2025\"],\"articleSection\":[\"An Introduction to Flight\",\"Past Editor Blogs\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/2025\\\/01\\\/30\\\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\\\/\",\"url\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/2025\\\/01\\\/30\\\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\\\/\",\"name\":\"Linear Embeddings of Nonlinear Dynamics with the Koopman Operator - Scribe\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/2025\\\/01\\\/30\\\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/2025\\\/01\\\/30\\\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/wp-content\\\/uploads\\\/sites\\\/491\\\/2025\\\/10\\\/oliver-300x300-1.png\",\"datePublished\":\"2025-01-30T08:56:00+00:00\",\"dateModified\":\"2025-10-21T07:58:15+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/#\\\/schema\\\/person\\\/ddeb07f88c2370aed994934842e2e58d\"},\"description\":\"An Introduction to Flight by Editor Oliver Khan\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/2025\\\/01\\\/30\\\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/2025\\\/01\\\/30\\\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/2025\\\/01\\\/30\\\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\\\/#primaryimage\",\"url\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/wp-content\\\/uploads\\\/sites\\\/491\\\/2025\\\/10\\\/oliver-300x300-1.png\",\"contentUrl\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/wp-content\\\/uploads\\\/sites\\\/491\\\/2025\\\/10\\\/oliver-300x300-1.png\",\"width\":300,\"height\":300},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/2025\\\/01\\\/30\\\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Linear Embeddings of Nonlinear Dynamics with the Koopman Operator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/#website\",\"url\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/\",\"name\":\"Scribe\",\"description\":\"USC Dornsife \",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/#\\\/schema\\\/person\\\/ddeb07f88c2370aed994934842e2e58d\",\"name\":\"Julia Ho\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a704dfe555fcc2a4a82149cc00254ae30b04eb2beccf342d83325fbe1caaa1fb?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a704dfe555fcc2a4a82149cc00254ae30b04eb2beccf342d83325fbe1caaa1fb?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a704dfe555fcc2a4a82149cc00254ae30b04eb2beccf342d83325fbe1caaa1fb?s=96&d=mm&r=g\",\"caption\":\"Julia Ho\"},\"url\":\"https:\\\/\\\/dornsife.usc.edu\\\/scribe\\\/author\\\/jvho\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Linear Embeddings of Nonlinear Dynamics with the Koopman Operator","description":"An Introduction to Flight by Editor Oliver Khan","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/","og_locale":"en_US","og_type":"article","og_title":"Linear Embeddings of Nonlinear Dynamics with the Koopman Operator - Scribe","og_description":"An Introduction to Flight by Editor Oliver Khan","og_url":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/","og_site_name":"Scribe","article_published_time":"2025-01-30T08:56:00+00:00","article_modified_time":"2025-10-21T07:58:15+00:00","og_image":[{"width":300,"height":300,"url":"https:\/\/dornsife.usc.edu\/scribe\/wp-content\/uploads\/sites\/491\/2025\/10\/oliver-300x300-1.png","type":"image\/png"}],"author":"Julia Ho","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/#article","isPartOf":{"@id":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/"},"author":{"name":"Julia Ho","@id":"https:\/\/dornsife.usc.edu\/scribe\/#\/schema\/person\/ddeb07f88c2370aed994934842e2e58d"},"headline":"Linear Embeddings of Nonlinear Dynamics with the Koopman Operator","datePublished":"2025-01-30T08:56:00+00:00","dateModified":"2025-10-21T07:58:15+00:00","mainEntityOfPage":{"@id":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/"},"wordCount":9,"image":{"@id":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/#primaryimage"},"thumbnailUrl":"https:\/\/dornsife.usc.edu\/scribe\/wp-content\/uploads\/sites\/491\/2025\/10\/oliver-300x300-1.png","keywords":["an introduction to flight","oliver khan","spring 2025"],"articleSection":["An Introduction to Flight","Past Editor Blogs"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/","url":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/","name":"Linear Embeddings of Nonlinear Dynamics with the Koopman Operator - Scribe","isPartOf":{"@id":"https:\/\/dornsife.usc.edu\/scribe\/#website"},"primaryImageOfPage":{"@id":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/#primaryimage"},"image":{"@id":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/#primaryimage"},"thumbnailUrl":"https:\/\/dornsife.usc.edu\/scribe\/wp-content\/uploads\/sites\/491\/2025\/10\/oliver-300x300-1.png","datePublished":"2025-01-30T08:56:00+00:00","dateModified":"2025-10-21T07:58:15+00:00","author":{"@id":"https:\/\/dornsife.usc.edu\/scribe\/#\/schema\/person\/ddeb07f88c2370aed994934842e2e58d"},"description":"An Introduction to Flight by Editor Oliver Khan","breadcrumb":{"@id":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/#primaryimage","url":"https:\/\/dornsife.usc.edu\/scribe\/wp-content\/uploads\/sites\/491\/2025\/10\/oliver-300x300-1.png","contentUrl":"https:\/\/dornsife.usc.edu\/scribe\/wp-content\/uploads\/sites\/491\/2025\/10\/oliver-300x300-1.png","width":300,"height":300},{"@type":"BreadcrumbList","@id":"https:\/\/dornsife.usc.edu\/scribe\/2025\/01\/30\/linear-embeddings-of-nonlinear-dynamics-with-the-koopman-operator\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dornsife.usc.edu\/scribe\/"},{"@type":"ListItem","position":2,"name":"Linear Embeddings of Nonlinear Dynamics with the Koopman Operator"}]},{"@type":"WebSite","@id":"https:\/\/dornsife.usc.edu\/scribe\/#website","url":"https:\/\/dornsife.usc.edu\/scribe\/","name":"Scribe","description":"USC Dornsife ","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dornsife.usc.edu\/scribe\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/dornsife.usc.edu\/scribe\/#\/schema\/person\/ddeb07f88c2370aed994934842e2e58d","name":"Julia Ho","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/a704dfe555fcc2a4a82149cc00254ae30b04eb2beccf342d83325fbe1caaa1fb?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/a704dfe555fcc2a4a82149cc00254ae30b04eb2beccf342d83325fbe1caaa1fb?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a704dfe555fcc2a4a82149cc00254ae30b04eb2beccf342d83325fbe1caaa1fb?s=96&d=mm&r=g","caption":"Julia Ho"},"url":"https:\/\/dornsife.usc.edu\/scribe\/author\/jvho\/"}]}},"_links":{"self":[{"href":"https:\/\/dornsife.usc.edu\/scribe\/wp-json\/wp\/v2\/posts\/594","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dornsife.usc.edu\/scribe\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dornsife.usc.edu\/scribe\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dornsife.usc.edu\/scribe\/wp-json\/wp\/v2\/users\/1018"}],"replies":[{"embeddable":true,"href":"https:\/\/dornsife.usc.edu\/scribe\/wp-json\/wp\/v2\/comments?post=594"}],"version-history":[{"count":1,"href":"https:\/\/dornsife.usc.edu\/scribe\/wp-json\/wp\/v2\/posts\/594\/revisions"}],"predecessor-version":[{"id":595,"href":"https:\/\/dornsife.usc.edu\/scribe\/wp-json\/wp\/v2\/posts\/594\/revisions\/595"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dornsife.usc.edu\/scribe\/wp-json\/wp\/v2\/media\/311"}],"wp:attachment":[{"href":"https:\/\/dornsife.usc.edu\/scribe\/wp-json\/wp\/v2\/media?parent=594"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dornsife.usc.edu\/scribe\/wp-json\/wp\/v2\/categories?post=594"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dornsife.usc.edu\/scribe\/wp-json\/wp\/v2\/tags?post=594"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}