大涡模拟
模型未解析的尺度 > 子网格比例模型 > 功能（涡粘）模型 > 动态模型（Germano 等）

Germano 等 使用 Smagorinsky 模型确定了许多研究，每个研究都发现了不同的 Smagorinsky 常数值 C针对不同的流量配置。为了试图为 SGS 模型制定一种更通用的方法，Germano 等提出了一个动态 Smagorinsky 模型，它使用了两个过滤器：一个网格 LES 过滤器，表示为 {\overline {f}} ，以及一个测试 LES 滤波器 {\hat {f}}，用于任何湍流的场 f 。测试过滤器的尺度大于网格过滤器，并在 LES 表示的已经平滑的场上增加了对湍流场的额外平滑。将测试滤波器应用于 LES 方程（通过将“网格”滤波器应用于 Navier-Stokes 方程获得）会产生一组新的方程，它们的形式相同但 SGS 应力项 \tau _{ij}={\overline {u_{i}u_{j}}}-{\bar {u}}_{i}{\bar {u}}_{j}被 T_{ij}={\widehat {\overline {u_{i}u_{j}}}}-{\hat {\bar {u}}}_{i}{\hat {\bar {u}}}_{j}所替代。 Germano等注意到即使两者都由于存在未解析的尺度而无法精确计算，这两个张量之间仍然存在一个精确的关系。这种关系被称为 Germano 恒等式：
L_{ij}=T_{ij}-{\hat {\tau }}_{ij}.
这里 L_{ij}={\widehat {{\bar {u}}_{i}{\bar {u}}_{j}}}-{\widehat {{\bar {u}}_{i}}}{\widehat {{\bar {u}}_{j}}}可以直接计算得出，因为它只涉及过滤的速度和测试过滤的操作。同一性的意义在于，如果假设湍流是自相似的，那么网格和测试级别的 SGS 应力具有相同的形式 \tau _{ij}-(\tau _{kk}/3)\delta _{ij}=-2C\Delta ^{2}|{\bar {S}}_{ij}|{\bar {S}}_{ij}和 T_{ij}-(T_{kk}/3)\delta _{ij}=-2C{\hat {\Delta }}^{2}|{\hat {\bar {S}}}_{ij}|{\hat {\bar {S}}}_{ij} ，则 Germano 恒等式提供了一个方程，从中可以得到 Smagorinsky 系数 C （不再是“常数”）可能得以推出。
为了做到这一点，需要在原始推导中引入x两个额外的步骤。首先，假设即使 C原则上是可变的，变化足够慢，可以从过滤操作中移出： {\widehat {C(.)}}=C{\widehat {(.)}} 。其次，既然 C是一个标量，Germano 恒等式与一个二阶张量（选择应变张量的速率）联系起来，以将其转换为一个标量方程，从而推出 C。 Lilly 发现了一种从张量恒等式中推出  C的更好的方法。他指出，Germano 恒等式需要在空间中的每个点上满足单个量的九个方程（其中只有五个是独立的）  C值 。因此对 C的推算条件多余了。他提议 C通过最小化残差使用最小二乘拟合来确定。由此得： C={\frac {L_{ij}m_{ij}}{m_{kl}m_{kl}}}.
其中 m_{ij}=\alpha _{ij}-{\widehat {\beta }}_{ij}。为简洁起见 \alpha _{ij}=-2{\hat {\Delta }}^{2}|{\hat {\bar {S}}}|{\hat {\bar {S}}}_{ij},  \beta _{ij}=-2\Delta ^{2}|{\bar {S}}|{\bar {S}}_{ij}在 LES 模拟中实施该模型的最初尝试被证明是不成功的。首先，计算出的系数根本不像假设的那样“缓慢变化”，而且变化与任何其他湍流场一样多。其次，计算 C可以是积极的，也可以是消极的。后一个事实本身不应被视为缺点，因为使用过滤的 DNS 字段的先验测试表明，本地子网格耗散率 -\tau _{ij}{\bar {S}}_{ij}即使在流体域上的积分始终为正，表示大尺度上的能量净耗散，在湍流场中的积分几乎与正数一样可能为负数。与涡粘度的严格正相反，正值的轻微优势导致观察到的净耗散。这种从小到大的能量“反向散射”确实对应于 Smagorinsky 模型中的负 C 值。然而，发现 Germano-Lilly 公式不能产生稳定的计算。通过在同质方向上平均分子和分母（在流动中存在这样的方向），采用了一种特别的方法
当平均涉及足够大的统计样本时，计算 C是正的（或至少极少负值）稳定的计算是可能的。简单地将负值设置为零（一个称为“剪裁”的过程），无论有或没有平均，也会提高计算稳定性。 Meneveau 提出对具有指数衰减“记忆”的拉格朗日流体轨迹进行平均。这可以应用于缺乏均匀方向的问题，并且如果进行平均的有效时间足够长，但又不足以消除感兴趣的空间不均匀性，那么这可以是稳定的。
Lilly 对 Germano 方法的修改，然后是统计平均或综合去除负粘度区域似乎是临时的，即使它可以“工作”。 Ghosal 等人提出了一种称为“动态定位模型”（DLM）的最小二乘最小化过程的替代公式。 在这种方法中，首先定义一个量
张量 \tau _{ij}和 T_{ij}替换为适当的 SGS 模型。然后，该张量表示子网格模型未能在每个空间位置符 Germano 恒等式的数量。在Lilly的方法中， C可以脱离帽符算子：
使得 E_{ij}成为一个 C的代数函数，然后通过要求确定 E_{ij}E_{ij}被认为是 C的函数具有最小的可能值。然而，由于 C如此获得的结果与湍流中的任何其他波动量一样可变，原始假设 C不能后天证明。在 DLM 方法中，通过不调用从测试过滤操作中删除 C的步骤来避免这种不一致。相反，人们通过数量定义了整个流的全局误差：
其中积分范围在整个流体体积上。这个全局误差 E[C(x,y,z,t)]是空间变化函数 C(x,y,z,t) 的函数（这里的瞬时 t是固定的，只是作为一个参数出现）， C的结果需要让误差最小化。这个变分问题的解决方法是 C必须满足第二类 Fredholm 积分方程
其中函数 K({\boldsymbol {x}},{\boldsymbol {y}})和 f({\boldsymbol {x}})根据解析的项 L_{ij},\alpha _{ij},\beta _{ij}定义，因此在每个时间步长和整个流体域的积分范围都是已知的。积分方程通过迭代程序进行数值求解，如果与预处理方案一起使用，则发现收敛通常很快。尽管这种变分方法消除了 Lilly 方法中固有的不一致性，但 C(x,y,z,t)从积分方程获得的仍然显示出与负粘度相关的不稳定性。这可以通过坚持来解决 E[C]受约束最小化 C(x,y,z,t)\geq 0 .这导致了一个 C的非线性方程：
这里后缀 + 表示“正数部分”，即，  x_{+}=(x+|x|)/2 。尽管这表面上看起来像“剪裁”，但它不是一个临时方案，而是约束变分问题的真正解决方案。这种 DLM(+) 模型被发现是稳定的，并且对于强制和衰减的各向同性湍流、通道流动和各种其他更复杂的几何形状产生了出色的结果。如果流动恰好具有均匀的方向（让我们说方向 x 和 z），那么可以引入假定  C=C(y,t) 。然后，变分方法立即产生 Lilly 的结果，对均匀方向进行平均，无需对先前结果进行临时修改。
DLM(+) 模型的一个缺点是它没有描述反向散射，而反向散射在分析 DNS 数据时被认为是真实的“事物”。开发了两种方法来解决这个问题。由于 Carati 等人的一种方法。 类似于朗道的脉动流体力学理论，增加了一个由涨落耗散定理确定的振幅的脉动力。在第二种方法中，有人注意到任何“反向散射”能量出现在解析尺度中，只是以亚网格尺度中的能量为代价。 DLM 可以通过一种简单的方式进行修改，以考虑到这一物理事实，从而在本质上稳定的同时允许反向散射。 在DLM 的这个 k 方程版本中，DLM(k) 替换在 Smagorinsky 涡流粘度模型中的 \Delta |{\bar {S}}|一项，以 {\sqrt {k}}作为适当的速度尺度。确定 C的流程保持与“无约束”版本相同，除了张量 \alpha _{ij}=-2{\hat {\Delta }}{\sqrt {K}}{\hat {\bar {S}}}_{ij},  \beta _{ij}=-2{\hat {\Delta }}{\sqrt {k}}{\bar {S}}_{ij}（其中子测试尺度动能 K 与子网格尺度动能 k 的关系为 K=k+L_{ii}/2 ）（接着追踪 Germano 恒等式）。为了确定 k，我们现在使用传输方程
其中 \nu 是运动粘度， C_{*},D是分别代表动能耗散和扩散的正系数。这些可以按照 DLM(+) 中的约束最小化的动态过程来确定。这种方法虽然比 DLM(+) 实施起来更昂贵，但被发现是稳定的，并且与测试的各种流的实验数据有很好的一致性。此外，DLM(k) 在数学上不可能导致计算不稳定，因为大尺度和 SGS 能量的总和不会因构造而增加。这两种结合反向散射的方法都运作良好。与 DLM(+) 相比，它们产生的模型耗散稍小，性能有所提高。 DLM(k) 模型还产生子网格动能，这可能是一个感兴趣的物理量。这些改进是在模型实现的成本有所增加的情况下实现的。
动态模型起源于 1990 年斯坦福大学湍流研究中心(CTR) 的暑期项目 （页面存档备份，存于）。一系列“CTR-Tea”研讨会庆祝了湍流建模这一重要里程碑的30 周年 （页面存档备份，存于）。