---
title: "折弯壁面，变换整片流场互动实验｜Sandbox Physics"
description: "保角映射保住了角度，为什么还会改变角点附近的流速？保角映射在每个小区域上，各个方向都按同一比例伸缩、旋转，局部角度就保住了。长度乘上这个比例，流速则要除以它：哪里被压缩，哪里就流得快。绕过凸出的尖角时，理想流速在角尖趋于无穷；在凹进去的角里，流速降到零。"
canonical_url: "https://sandboxphysics.com/zh/labs/schwarz-christoffel-flow/"
language: "zh-CN"
page_type: "lab"
alternate_languages:
  en: "https://sandboxphysics.com/labs/schwarz-christoffel-flow/"
last_modified: "2026-10-22"
---

复分析 · 流体几何

# Schwarz–Christoffel 流动映射器

**保角映射保住了角度，为什么还会改变角点附近的流速？** 保角映射在每个小区域上，各个方向都按同一比例伸缩、旋转，局部角度就保住了。长度乘上这个比例，流速则要除以它：哪里被压缩，哪里就流得快。绕过凸出的尖角时，理想流速在角尖趋于无穷；在凹进去的角里，流速降到零。

两个平面并排显示：直壁上方的简单流动，经映射变成台阶、斜坡或多边形凸起上方的流动。移动两边联动的探针，检查角度是否保持不变，再把角点处的加速和壁面误差、数值积分误差放在一起比较。

> 交互仿真：在浏览器中打开本页，即可调整参数并运行模型。

流动是稳态、不可压缩的理想滑移流，壁面只取自几类预先定义的多边形。几何由原像顶点决定，还不能反过来为任意设计的多边形求映射。点涡和它的反号镜像涡都固定不动。黏性、分离、涡的自由运动和有限涡核的物理都不在模型之内。

物理教程

## Schwarz–Christoffel：藏在复导数里的多边形

**背景** 先看一面直壁上方的稳态流动，流体沿壁面滑移。保角映射把实轴折成多边形壁面的一段段直边，所有流线和等势线都跟着同一个映射走，实际速度由链式法则算出。

**为什么值得理解** 弯曲的网格只是表面。壁面形状能预言理想流体在哪里加速、在哪里停住、在哪里趋向奇点；两边联动的探针让你把这些预言量出来。

先抓重点

- **核心问题**: 为什么映射可以保留局部直角，却让速度成倍变化？
- **一句话直觉**: 在每一点附近，复导数把一小块区域转一个角度再缩放。长度乘以 $|f'|$，实际速度却要除以这个导数。角度保住了，大小和速度并没有保住。

### 核心数学模型

#### Schwarz–Christoffel 导数

$$
f'(\zeta)=C\prod_j(\zeta-a_j)^{\alpha_j-1},\qquad z=f(\zeta)
$$

每个原像顶点都在实轴上，指数等于流体一侧的内角除以圆周率再减一。把导数积分，就得到一段段直壁。归一化时，在上半平面取一个锚点，把映射固定在那里。

#### 双角点台阶族

$$
f'(\zeta)=(\zeta+a)^p(\zeta-a)^{-p},\qquad \theta_{\pm}=\pi(1\pm p)
$$

改变间距和指数，就得到一族台阶和斜坡；指数为零时，映射就是恒等映射。这里输入的是原像顶点。想把实际顶点放到任意位置，还得另解一个非线性参数问题。

#### 复势、速度与镜像涡

$$
W(\zeta)=U\zeta+\frac{\Gamma}{2\pi i}\left[\log(\zeta-\zeta_v)-\log(\zeta-\overline{\zeta_v})\right],\qquad u-iv=\frac{W'(\zeta)}{f'(\zeta)}
$$

反号镜像涡让实轴成为一条流线。实际速度要除以映射的导数，不能把原像速度直接画到弯网格上。点涡由外部固定在原处；它周围空出的小圆盘只是不显示，并不是有限大小的涡核。

#### 角点附近的幂律与示踪时间

$$
|f'|\sim|\zeta-a_j|^{\alpha_j-1},\quad |v|\sim|\zeta-a_j|^{1-\alpha_j},\quad \dot\zeta=\frac{\overline{W'(\zeta)}}{|f'(\zeta)|^2}
$$

这些指数用的是原像平面里的距离，并假定复势导数在那里有限且不为零。换成实际平面中到角点的距离，指数就不一样。示踪方程里必须带上度量因子的平方，示踪粒子才会按实际速度走出实际轨迹。

#### 直角台阶的闭式解

$$
F(\zeta)=\sqrt{\zeta-a}\sqrt{\zeta+a}+a\log\!\left(\frac{\zeta+\sqrt{\zeta-a}\sqrt{\zeta+a}}{a}\right)
$$

转角比例为二分之一时，这个初等原函数可以独立检验数值积分。两个主值平方根相乘，选出的正是上半平面那一支。比较之前，先减去它在锚点处的值。

### 常见难点

#### 角点加速不等于湍流

**容易误解** 角点变成暖色，说明模型已经算出了分离或湍流尾迹。

**正确理解** 这是沿壁面滑移的理想流动。壁面凸向流体的角点上，速度可能趋于无穷。真实的黏性、圆角、分离和边界层要用别的方程描述。颜色到顶不再变，数学上的奇点却还在。

#### 每个小误差只检验一件事

**容易误解** 只要有一个误差很小，就说明哪里都准，角点也不例外。

**正确理解** 壁面检查在离壁面不远、避开角点的位置取样；角度检查用局部中心差分；路径残差看积分是否与路径无关。只有直角台阶有闭式解可以对照。等值线分辨率只改变画图时的插值，不改变积分容差。

### 动手实验

1. 01

   #### 恢复直壁极限

   选择直角台阶，把转角比例调到零，用方向键移动探针。

   **你会看到：** 除了取景不同，两个平面完全一样。局部尺度回到一，实际速度等于背景来流，壁面法向比例仍然很小。

2. 02

   #### 比较两个角点

   回到直角台阶，把探针依次移到两个珊瑚色角点的正上方，比较局部尺度、速度和形变曲线。

   **你会看到：** 一个角点把长度压短，流动加快；另一个把长度拉长，流动变慢。探针的两臂仍然互相垂直。

3. 03

   #### 把点涡放到壁面附近

   选择“壁面附近点涡”，翻转环流，改变涡的高度。暂停示踪或单步推进，再和“多边形凸起”比较。

   **你会看到：** 流线的方向和形状都变了，反号镜像仍让流体穿不过壁面。点涡固定不动；示踪粒子离开显示窗口后会重新放入。

4. 04

   #### 科学依据与灵感来源

   模型依据：Driscoll，Algorithm 756: A MATLAB Toolbox for Schwarz–Christoffel Mapping，ACM TOMS 22（1996），DOI 10.1145/229473.229475；Driscoll 与 Trefethen，Schwarz–Christoffel Mapping（Cambridge，2002）。

   **你会看到：** 灵感来自 bugman123.com/FluidMotion/ 的 Schwarz–Christoffel Flow 条目。实现与图形均为原创，没有复制旧媒体或代码。

物理结论

保角映射保住局部角度，保不住长度和速度。同一个导数既造出壁面形状，又变换流场，还能预言角点附近的流动。

概念灵感：[FluidMotion](http://www.bugman123.com/FluidMotion/index.html)。模拟和图形都是原创，模型的适用范围见上文。

场、流体与物质 · 入门路径

## 从电场到电子显微镜

先看懂电场、学会操控带电粒子，再算出电子的波长，用电子束观察晶体和表面。

[从这里开始 → **看见电场** 在偶极子周围移动探针，看电场是不是总指向电势地形的下坡方向。 观察 · 8 分钟](https://sandboxphysics.com/zh/labs/electric-field/)

1. [1 看见电场](https://sandboxphysics.com/zh/labs/electric-field/)
2. [2 电荷在场中转弯](https://sandboxphysics.com/zh/labs/charged-particle/)
3. [3 电子波长与加速电压](https://sandboxphysics.com/zh/labs/electron-wavelength/)
4. [4 电子衍射与倒空间](https://sandboxphysics.com/zh/labs/electron-diffraction/)
5. [5 TEM 明场、暗场与选区衍射](https://sandboxphysics.com/zh/labs/tem-mode-selector/)
6. [6 SEM 二次电子表面形貌](https://sandboxphysics.com/zh/labs/sem-topography/)

[查看完整路径 →](https://sandboxphysics.com/zh/topics/fields-and-matter/#starter-path)
