CFlowOutput 计算 TGV Dissipation/Enstrophy 归一所用的涡尺度 tgvLength,原先从 REYNOLDS_LENGTH(=1) 派生:
CFlowOutput
Dissipation
Enstrophy
tgvLength
REYNOLDS_LENGTH
const su2double tgvLength = config->GetLength_Reynolds() / (2.0 * acos(-1.0)); // = 1/(2π)
而初始条件 CUserDefinedSolution 与所有 Python 后处理(plot.py / extract.py / runner.py)用的是 MESH_BOX_LENGTH/(2π) = 2/(2π) = 1/π。同一个涡尺度取了不同的源,差 2×(涡尺度本就必须 = 盒长/(2π) 才能让 u=sin(x/tgvLength) 在 [-1,1] 周期)。
CUserDefinedSolution
plot.py
extract.py
runner.py
MESH_BOX_LENGTH/(2π) = 2/(2π) = 1/π
u=sin(x/tgvLength)
[-1,1]
已改 SU2_CFD/src/output/CFlowOutput.cpp:870 为与 IC 一致的盒长派生:
SU2_CFD/src/output/CFlowOutput.cpp:870
const su2double tgvLength = config->GetMeshBoxLength(0) / (2.0 * acos(-1.0)); // = 1/π
由此 t_c = tgvLength/U = 1/π,用于 Dissipation = -t_c·dEk/dt(:937)与 Enstrophy *= t_c²/(ρ·Vol)(:949)。(代码改动在工作区,待提交。)
t_c = tgvLength/U = 1/π
Dissipation = -t_c·dEk/dt
:937
Enstrophy *= t_c²/(ρ·Vol)
:949
修复改变了新产出的归一化幅值。旧数据(用 1/(2π) 产出)换算到新约定:
1/(2π)
new = 2 × old
new = 4 × old
Kinetic_Energy
待办(按既有 job 的重要性逐批处理):
仅常数因子,不改变标度 / 相对结论(耗散律幂次、KE 相对关系、谱熵标度等);只影响这两条曲线的绝对幅值与 KE–耗散预算闭合。
未设置到期时间。
未设置依赖项。
删除分支是永久的。虽然已删除的分支在实际被删除前有可能会短时间存在,但这在大多数情况下无法撤销。是否继续?
背景:代码侧已修
CFlowOutput计算 TGVDissipation/Enstrophy归一所用的涡尺度tgvLength,原先从REYNOLDS_LENGTH(=1) 派生:而初始条件
CUserDefinedSolution与所有 Python 后处理(plot.py/extract.py/runner.py)用的是MESH_BOX_LENGTH/(2π) = 2/(2π) = 1/π。同一个涡尺度取了不同的源,差 2×(涡尺度本就必须 = 盒长/(2π) 才能让u=sin(x/tgvLength)在[-1,1]周期)。已改
SU2_CFD/src/output/CFlowOutput.cpp:870为与 IC 一致的盒长派生:由此
t_c = tgvLength/U = 1/π,用于Dissipation = -t_c·dEk/dt(:937)与Enstrophy *= t_c²/(ρ·Vol)(:949)。(代码改动在工作区,待提交。)本 issue 留作数据迁移
修复改变了新产出的归一化幅值。旧数据(用
1/(2π)产出)换算到新约定:Dissipationnew = 2 × oldEnstrophynew = 4 × oldKinetic_Energy待办(按既有 job 的重要性逐批处理):
影响范围
仅常数因子,不改变标度 / 相对结论(耗散律幂次、KE 相对关系、谱熵标度等);只影响这两条曲线的绝对幅值与 KE–耗散预算闭合。
CFlowOutput: TGV Dissipation/Enstrophy 归一用 REYNOLDS_LENGTH(t_c=1/(2π)),与 IC/论文/Python 的 1/π 差 2×/4×为TGV Dissipation/Enstrophy 归一修正后的数据迁移(旧数据 ×2 / ×4)