1. 先算等熵流函数isentropic streamfunction, $𝛙(z,𝜃_e)$,第一步是在每一个高度上,把不同半径处的向上的质量输送,按照equivalent potential temperature $𝜃_e$分箱,对$r$上属于同一$𝜃_e$类别的质量通量加总,然后做时间平均(因为我们模式本身运行出来是三维的$r, z, t$,我们刚刚对空间两个轴进行了处理,然后又做了时间平均,这下就只剩下$z, 𝜃_e$轴)。
  2. 目前我们得到的$(z, 𝜃_e)$中可能有很多不同半径位置的空气,但我们不关心它们具体在哪个$r$,只关系$𝜃_e=355K$的空气一共运输多少质量。那我们就需要将所有这些半径处的贡献加起来,也就是对$r$积分。同一个 $\theta_e$ bin 里完全可以同时包含多个相距很远的 $r$
  3. 我们算到这一步后,目前得到了流函数,但如果最后要计算热力学功,还要知道这些空气的$T, p, s, q_v, q_l, q_i$,我们需要把这些变量映射到刚刚的$(z, 𝜃_e)$空间,假如我们取一个bin: $z=5km, 𝜃_e=355~356$,这里面会对应原模式中很多格点。那么就把这些格点的温度按照空气质量进行平均,得到:$(T(z, 𝜃_e))$。类似其他物理量我们也这样得到。
  4. 之后我们把刚刚的流函数$𝛙(z,𝜃_e)$画成有$N$个contour levels的等值线图,那么其中闭合等值线就被当作MAFALDA trajectories。但MAFALDA trajectory 不是真实某个 parcel 的 trajectory,而是根据大量空气的平均质量输送,重建出了一条代表性平均热力循环。
  5. 现在我们有了$T(z,θe),p(z,θe),s(z,θe)…$,以及$(z(t),θe(t))$形成的闭合路径,那我们就可以问当我沿着这条路径走的时候,温度是多少,压力是多少,熵是多少?我们需要做的就是把这些热力学变量$T(z,θe),p(z,θe),s(z,θe)…$插值到轨迹$(z(t),θe(t))$上,这样我们就会得到沿这个循环前进时,各个热力变量如何变化。这样我们就会得到一条完整的“热力循环”:$T(𝛌),p(𝛌)…$,其中$𝛌$可以理解为沿着循环的位置参数。