​✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、程序设计科研仿真。

🍎完整代码获取 定制创新 论文复现点击:Matlab科研工作室

 👇 关注我领取海量matlab电子书和数学建模资料 

🍊个人信条:做科研,博学之、审问之、慎思之、明辨之、笃行之,是为:博学慎思,明辨笃行。

🔥 内容介绍

一、引言

湍流是自然界和工程领域中普遍存在的复杂流动现象,对其进行准确模拟和分析对于理解物理过程、优化工程设计至关重要。然而,直接数值模拟(DNS)湍流需要巨大的计算资源,在实际应用中往往难以实现。因此,发展高效的降阶模型成为湍流研究的重要方向。基于 Koopman 理论与谱模型降阶思想的数据驱动降阶模型,为解决这一难题提供了新的途径。

二、Koopman 理论基础

(一)Koopman 算子定义

(二)Koopman 模态分析

  1. 构建观测函数:选择合适的观测函数 φ(x),例如速度分量、涡量等物理量的函数。通过对观测函数在不同时刻系统状态上的取值,构建 Koopman 矩阵的近似表示。

  2. 特征值与特征函数计算:利用数据驱动的方法,如 Dynamic Mode Decomposition(DMD),计算 Koopman 算子的近似特征值和特征函数。DMD 通过对数据矩阵进行奇异值分解等操作,快速估计 Koopman 模态。这些模态反映了湍流流动中的各种动态模式,如大尺度涡旋结构的演化、小尺度耗散过程等。

(三)谱降阶与模型构建

  1. 结合谱降阶方法:将 Koopman 模态分析与谱降阶思想相结合,利用 POD 等方法对 Koopman 模态进行进一步筛选和降维。POD 可以帮助我们找到对系统能量贡献最大的 Koopman 模态组合,去除那些对系统动态影响较小的模态,从而构建更加精简的降阶模型。

  2. 降阶模型推导:基于保留的 Koopman 模态,推导降阶模型的动力学方程。通过将原始湍流系统的动力学投影到由这些模态张成的低维空间,得到关于投影系数 z(t) 的常微分方程组。这些方程描述了降阶模型在低维空间中的演化,能够以较小的计算成本近似模拟原始湍流系统的主要动态特性。

⛳️ 运行结果

📣 部分代码

function [T,G,Y_0] = SLICK(A, dt, nt_train, gamma1, gamma2, t_remove, shift, varargin )

%%  Stochastic Low-dimensional Inflated Convolutional Koopman model (SLICK)  

%       Inputs:  

%

%            A:  Convolutional expansion coeffcients obtained from tcoeffs(...)

%           dt:  Time step

%     nt_train:  Size of the training set

%    gamma 1&2:  Ridge parameters for L2 regularization

%     t_remove:  Removal of the first few snapshots; not necessary

%        shift:  Starting point of the training set

%      Outputs:  

%

%            T:  State transition matrix

%            G:  De-whitening filter

%          Y_0:  All the inflated state vectors

% Reference:

%        [1] T. Chu, O. T. Schmidt, Stochastic reduced-order Koopman model 

%        for turbulent flows.      (Under preparation)

%        [2] T. Chu, O. T. Schmidt, A stochastic SPOD-Galerkin model for

%        broadband turbulent flows. Theoretical and Computational Fluid

%        Dynamics 35, no. 6 (2021): 759-782.

% T. Chu (tchu72@gatech.edu), O. T. Schmidt (oschmidt@ucsd.edu)

% Last revision:  16-Sept-2024 Tianyi Chu <tchu72@gatech.edu>

%%

Nf    =  size(A,1);

M_n   =  size(A,2);

nt    =  size(A,3);

if nargin == 8 

    data_type  = varargin{1};

else

    data_type  = 'real';

end

if strcmpi(data_type,'real')

    

    nDFT       = (Nf-1)*2;

    

elseif strcmpi(data_type,'complex')

    

    nDFT       =  Nf;

    

end

%%   Koopman approach for convolutional coordinates, Eqns(2.24-2.25)

    X          =   reshape( permute(A(:,:,(1:nt_train-nDFT-1)+nDFT/2),[2 1 3]),[],nt_train-nDFT-1);

    Y          =   reshape( permute(A(:,:,(2:nt_train-nDFT)+nDFT/2),[2 1 3]),[],nt_train-nDFT-1);

    

    K_0        =   Y*(X'/(X*X'+gamma1*speye((Nf)*M_n)) ) ;

    K1         =   (K_0-eye(length(K_0)))/dt;   

 %% temporal derivatives

    

    B          =   zeros(M_n*(Nf),nt);

    dbdt       =   zeros(M_n*(Nf),nt);

    dadt       =   zeros(M_n*(Nf),nt);

    A_1        =  reshape(permute(A,[2 1 3]),[],size(A,3));

    

    for it=1:nt

        disp(['computing B from data at time step ' num2str(it) '/' num2str(nt)])

        

        if it<nt-1

            

            dadt(:,it)    =   (A_1(:,it+1)-A_1(:,it))/(dt);

            B(:,it)       =   (A_1(:,it+1)-A_1(:,it))/(dt)-K1*A_1(:,it);

            dbdt(:,it)    =   (A_1(:,it+2)+A_1(:,it)-2*A_1(:,it+1))/(dt^2)-K1*(A_1(:,it+1)-A_1(:,it))/(dt);

            

        elseif it==nt

            dadt(:,it)    =   (3*A_1(:,nt)+A_1(:,nt-2)-4*A_1(:,nt-1))/(2*dt);

            B(:,it)       =   (3*A_1(:,nt)+A_1(:,nt-2)-4*A_1(:,nt-1))/(2*dt)-K1*A_1(:,nt);

            dbdt(:,it)    =   (-A_1(:,it)-A_1(:,it-2)+2*A_1(:,it-1))/(dt^2)-K1*(3*A_1(:,nt)+A_1(:,nt-2)-4*A_1(:,nt-1))/(2*dt);

        end

    end

    

 %%  Inflated Koopman approach. Eqns(3.1-3.4)

🔗 参考文献

Tianyi Chu & Oliver T. Schmidt. 2025 Stochastic reduced-order Koopman model for turbulent flows. Proc. R. Soc. A. 481 (2323): 20250270. See here.

🍅更多免费数学建模和仿真教程关注领取

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐